annotate etc/FAQ @ 1248:68c77558d34b

(record_delete): Record pos before the deletion. (Fprimitive_undo): Go back to recorded position.
author Richard M. Stallman <rms@gnu.org>
date Mon, 28 Sep 1992 13:10:43 +0000
parents 434e13b1fc95
children c18775a6cf55
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1 GNU Emacs FAQ: Introduction
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3 [To find what has changed, view the `Changes' posting or inspect the change
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
4 bars in the text of the questions.]
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
5
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
6 This is the introduction to a list of frequently asked questions (FAQ) about
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
7 GNU Emacs with answers. This article contains a listing of the questions;
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
8 subsequent articles contain the questions and answers.
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
9
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
10 The FAQ is posted to reduce the noise level in the `gnu.emacs.help' newsgroup
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
11 (which is also the `help-gnu-emacs' mailing list) which results from the
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
12 repetition of frequently asked questions, wrong answers to these questions,
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
13 corrections to the wrong answers, corrections to the corrections, debate, name
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
14 calling, etc. Also, it serves as a repository of the canonical "best" answers
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
15 to these questions. However, if you know a better answer or even a slight
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
16 change that improves an answer, please tell me!
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
17
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
18 If you know the answer of a question is in the FAQ, please reply to the
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
19 question by e-mail instead of posting. Help reduce noise!
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
20
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
21 The FAQ is crossposted to `comp.emacs' because some sites do not receive the
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
22 `gnu.*' newsgroups. The FAQ is also crossposted to `news.answers'.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
23
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
24 Please suggest new questions, answers, wording changes, deletions, etc. The
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
25 most helpful form for suggestions is a context diff (ie., the output of `diff
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
26 -c'). Include `FAQ' in the subject of messages sent to me about the FAQ.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
27
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
28 Please do not send questions to me just because you do not want to disturb a
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
29 lot of people and you think I would know the answer. I do not have time to
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
30 answer questions individually. :-(
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
31
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
32 Full instructions for getting the latest FAQ are in question 29. Also see the
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
33 `Introduction to news.answers' posting in the `news.answers' newsgroup, or send
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
34 e-mail to `mail-server@pit-manager.mit.edu' with `help' on a body line, or use
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
35 FTP, WAIS, or Prospero to pit-manager.mit.edu.
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
36
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
37 Future plans for this FAQ list include:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
38
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
39 * A new section devoted to GNUS questions.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
40 * Verification for files available via FTP and for mailing lists.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
41 * Up-to-date IP addresses for sites mentioned for FTP access.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
42 * A Texinfo version.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
43 * Marking questions in the list below that have been changed recently.
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
44
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
45 --
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
46 Joe Wells <jbw@cs.bu.edu>
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
47
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
48 Member of the League for Programming Freedom --- send e-mail for details
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
49 ----------------------------------------------------------------------
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
50
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
51 Notation Used in the Answers
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
52
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
53 1: What do things like this mean: C-h, M-C-a, RET, etc.?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
54 2: What do you mean when you write things like this: type "ESC a"?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
55 3: What if I don't have a Meta key?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
56 4: What if I don't have an Escape key?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
57 5: What does "M-x command" mean?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
58 6: What do things like this mean: etc/SERVICE, src/config.h,
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
59 lisp/default.el?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
60 7: What are FSF, LPF, OSF, GNU, RMS, FTP, and GPL?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
61
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
62 Sources of Information and Help
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
63
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
64 8: I'm just starting GNU Emacs; how do I do basic editing?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
65 9: How do I find out how to do something in GNU Emacs?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
66 10: Where can I get GNU Emacs on the net (or by snail mail)?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
67 11: Where can I get help in installing GNU Emacs?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
68 12: How do I get a printed copy of the GNU Emacs manual?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
69 13: How do I install a piece of Texinfo documentation?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
70 14: How do I print a Texinfo file?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
71 15: Can I view Info files without using GNU Emacs?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
72 16: Where can I get documentation on GNU Emacs Lisp?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
73 17: Has someone written an GNU Emacs Lisp package that does XXX?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
74 18: Where can I get GNU Emacs Lisp packages that don't come with Emacs?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
75 19: How do I submit code to the Emacs Lisp Archive?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
76 20: What informational files are available for GNU Emacs?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
77 21: Where can I get the latest VM, Supercite, GNUS, Calc, Calendar,
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
78 Ange-FTP, VIP, Dired, Ispell, Epoch, Demacs, Freemacs, or Patch?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
79 22: What is the real legal meaning of the GNU copyleft?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
80 23: What are appropriate messages for gnu.emacs.help, gnu.emacs.bug,
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
81 comp.emacs, etc.?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
82 24: How do I unsubscribe to this mailing list?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
83 25: What is the LPF and why should I join it?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
84 26: What is the current address of the FSF?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
85 27: What is the current address of the LPF?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
86 28: Where can I get other up-to-date GNU stuff?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
87 29: Where can I get the latest version of this document (the FAQ list)?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
88
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
89 GNU Emacs and Various Computing Environments
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
90
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
91 30: Where does the name "Emacs" come from?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
92 31: What is the latest version of GNU Emacs?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
93 32: When will GNU Emacs 19 be available?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
94 33: What will be different about GNU Emacs 19?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
95 34: Is there an Emacs that has better mouse and X window support?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
96 35: Where can I get the "unofficial HP GNU Emacs"?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
97 36: Where can I get Emacs for my PC?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
98 37: Where can I get Emacs for my Atari ST?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
99 38: Where can I get Emacs for my Amiga?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
100 39: Where can I get Emacs for my Apple computer?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
101 40: Where can I get Emacs with NeWS support?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
102 41: How do I get Emacs running on VMS under DECwindows?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
103 42: How do I use emacstool under SunView?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
104 43: How do I make Emacs display 8-bit characters?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
105 44: How do I input 8-bit characters?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
106 45: How do I use an already running Emacs from another window?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
107 46: Where can I get an Emacs that can handle kanji characters?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
108 47: Where can I get an Emacs that can handle Chinese?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
109 48: Where is an Emacs that can handle Semitic (right-to-left) alphabets?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
110
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
111 Binding Keys to Commands
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
112
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
113 49: Why does Emacs say "Key sequence XXX uses invalid prefix characters"?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
114 50: Why doesn't this [terminal or window-system setup] code work in my
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
115 .emacs file, but it works just fine after Emacs starts up?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
116 51: Other than that, why does my key binding fail?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
117 52: How do I use function keys under X Windows?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
118 53: How do I tell what characters my function or arrow keys emit?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
119 54: Why does Emacs spontaneously start displaying "I-search:" and beeping?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
120 55: How do I disable the use of C-s and C-q for flow control?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
121 56: What do I do if my terminal is sending C-s and C-q for flow control and
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
122 I can't disable it?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
123 57: How do I make Emacs honor C-s and C-q for flow control instead of for
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
124 commands?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
125 58: Why does Emacs never see C-s and C-q through my network connection?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
126 59: How do I use commands bound to C-s and C-q (or any key) if these keys
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
127 are filtered out?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
128 60: How do I "swap" two keys?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
129 61: Why does the "BackSpace" key invoke help?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
130 62: How do I type DEL on PC terminal emulators?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
131 63: Can I make my "Compose" key behave like a "Meta" key?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
132 64: Why don't the arrow keys work?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
133 65: How do I bind a combination of modifier key and function key?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
134 66: Why doesn't my Meta key work in an xterm window?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
135 67: Why doesn't my ExtendChar key work as a Meta key under HP-UX 8.0?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
136 68: Where can I get key bindings to make Emacs emulate WordStar?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
137
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
138 Building/Installing/Porting Emacs and Machine/OS-Specific Bugs
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
139
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
140 69: Why does Emacs crash with "Fatal error (6).Abort" under SunOS 4.1?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
141 70: Why do I get an "f68881_used undefined" error, when I build Emacs on my
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
142 Sun 3?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
143 71: Why does Emacs ignore my X resources (my .Xdefaults file)?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
144 72: How do I get Emacs to compile with all features under OpenWindows?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
145 73: How do I build Emacs under HP-UX 8.0?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
146 74: What should I do if I have trouble building Emacs?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
147
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
148 Weird/Confusing Problems
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
149
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
150 75: Does Emacs have problems with files larger than 8 megabytes?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
151 76: Why does Emacs start up using the wrong directory?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
152 77: How do I edit a file with a "$" in its name?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
153 78: Why does Shell mode lose track of the shell's current directory?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
154 79: Why doesn't Emacs expand my aliases when sending mail?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
155 80: Why doesn't my change to load-path work?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
156 81: Why does the cursor always go to the wrong column when I move up or
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
157 down one line?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
158 82: Why does Emacs hang with message "Unknown XMenu error" with X11R4?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
159 83: Why doesn't display-time show the load average in the mode line
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
160 anymore?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
161 84: Why doesn't GNUS work anymore via NNTP?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
162 85: Why does ispell sometimes ignore the local dictionary?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
163 86: How do I get rid of the ^M junk in my Shell buffer?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
164 87: Are there any security risks in GNU Emacs?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
165 88: How do I recover my mail files after RMAIL munges their format?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
166 89: Why do I get "Process shell exited abnormally with code 1"?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
167
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
168 Configuring Emacs for Yourself
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
169
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
170 90: How do I set up a .emacs file properly?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
171 91: How do you debug a .emacs file?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
172 92: How do I turn on abbrevs by default just in mode XXX?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
173 93: How do I turn on Auto-Fill mode by default?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
174 94: How do I make Emacs use a certain major mode for certain files?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
175 95: What are the valid X resource settings (ie., stuff in .Xdefaults file)?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
176 96: How do I stop Emacs from beeping on a terminal?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
177 97: How do I turn down the bell volume in Emacs running under X Windows?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
178 98: How do I change load-path?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
179 99: How do I change the included text prefix in mail/news followups?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
180
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
181 Emacs Lisp Programming
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
182
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
183 100: What dialect of Lisp is Emacs Lisp?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
184 101: How close is Emacs Lisp to Common Lisp?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
185 102: How do I execute a piece of Emacs Lisp code?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
186 103: How do I make a set of operations work only within a region?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
187 104: How can I highlight text in Emacs?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
188 105: How do I change Emacs's idea of the tab character's length?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
189
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
190 Carrying Out Common Tasks
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
191
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
192 106: How do I insert ">"'s in the beginning of every line in a buffer?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
193 107: How do I insert "_^H" characters before each character in a paragraph
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
194 to get an underlined paragraph?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
195 108: How do I repeat a command as many times as possible?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
196 109: How do I search for or delete unprintable (8-bit or control)
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
197 characters?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
198 110: How do I control Emacs's case-sensitivity when searching/replacing?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
199 111: How do I tell Emacs to automatically indent a new line to the
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
200 indentation of the previous line?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
201 112: How do I make Emacs "typeover" or "overwrite" instead of inserting?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
202 113: How do I show which parenthesis matches the one I'm looking at?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
203 114: How do I make Emacs behave like this: when I go up or down, the cursor
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
204 should stay in the same column even if the line is too short?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
205 115: How do I read news under Emacs?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
206 116: In C mode, can I show just the lines that will be left after #ifdef
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
207 commands are handled by the compiler?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
208 117: Is there an equivalent to the "." (dot) command of vi?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
209 118: How do I make Emacs display the current line (or column) number?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
210 119: How do I tell Emacs to iconify itself?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
211 120: How do I use regexps (regular expressions) in Emacs?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
212 121: How do I perform a replace operation across more than one file?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
213 122: How do I make Emacs wrap words for me?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
214 123: Where can I get a better spelling checker for Emacs?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
215 124: How can I spell-check TeX or *roff documents?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
216 125: How can I make Emacs automatically scroll horizontally?
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
217
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
218
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
219
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
220 Notation Used in the Answers -
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
221
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
222 You may skip this section if you are reasonably familiar with GNU Emacs.
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
223 Some of these are not actually frequently asked questions, but knowing
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
224 them is important for understanding the answers to the rest of the
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
225 questions.
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
226
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
227 1: What do things like this mean: C-h, M-C-a, RET, etc.?
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
228
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
229 C-a means press the "a" key while holding down the "Control" key. The
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
230 ASCII code this sends will generally be the value that would be sent by
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
231 pressing just "a" minus 96 or 64. Either way it will be a number from 0
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
232 to 31.
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
233
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
234 M-a means press the "a" key while holding down the "Meta" key. The
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
235 ASCII code this sends is the sum of the ASCII code that would be sent by
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
236 pressing just "a" and 128.
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
237
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
238 M-C-a means press the "a" key while holding down both the "Control" key
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
239 and the "Meta" key. C-M-a is a synonym for M-C-a.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
240
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
241 * RET means press the "Return" key. RET is the same as C-m. This sends
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
242 ASCII code 13.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
243 * LFD means press the "Linefeed" key. LFD is also the same as C-j. This
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
244 sends ASCII code 10. Under Unix, ASCII code 10 is more often called
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
245 "Newline".
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
246 * DEL means press the "Delete" key. DEL is the same as C-?. This sends
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
247 ASCII code 127. (WARNING: It is a misnomer to call C-? a "control" key,
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
248 since 127 has both bits 6 and 7 turned ON, and the rule for control keys
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
249 is that they have 6 and 7 turned OFF. Also, on very few keyboards does
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
250 Control-? generate ASCII code 127. In fact, Control-? (which is
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
251 actually Control-Shift-/) is more likely to generate C-_, ASCII code
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
252 31!)
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
253 * ESC means press the "Escape" key. ESC is the same as C-[. This sends
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
254 ASCII code 27.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
255 * SPC means press the "Space" key. This send ASCII code 32.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
256 * TAB means press the "Tab" key. TAB is the same as C-i. This send ASCII
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
257 code 9.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
258
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
259 For C-@ and C-^, usually you don't have to hold down the shift key and you
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
260 can type Control-2 or Control-6 instead. For C-_, you may have to hold
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
261 down the shift key, typing Control-Shift-Hyphen. C-@ can often be
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
262 generated by typing Control-Space. C-@ is often called the NUL character,
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
263 and has ASCII value 0. C-_ can often be generated by typing Control-7 or
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
264 Control-/. C-? (aka DEL) may be generated by typing Shift-BackSpace or +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
265 Control-BackSpace. Try Control with all of the digits on your keyboard to +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
266 see what gets generated.
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
267
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
268 To read more about this online, type "C-h i m emacs RET m characters
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
269 RET", and also "C-h i m emacs RET m keys RET".
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
270
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
271 2: What do you mean when you write things like this: type "ESC a"?
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
272
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
273 I will enclose key sequences that are longer than one key inside double
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
274 quotes. These notations refer to single key strokes (some with
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
275 modifiers):
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
276
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
277 C-x, M-x, M-C-x
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
278 RET, LFD, DEL, ESC, SPC, TAB
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
279
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
280 I separate these from other keys within double quotes by spaces. Any
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
281 real spaces that I write inside double quotes can be ignored, only SPC
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
282 means press the space key. All other characters within double quotes
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
283 represent single keys (some shifted).
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
284
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
285 3: What if I don't have a Meta key?
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
286
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
287 Instead of typing M-a, you can type "ESC a" instead. In fact, Emacs
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
288 converts M-a internally into "ESC a" anyway (depending on the value of
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
289 meta-prefix-char).
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
290
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
291 4: What if I don't have an Escape key?
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
292
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
293 Type C-[ instead. This should send ASCII code 27 just like an Escape
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
294 key would.
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
295
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
296 5: What does "M-x command" mean?
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
297
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
298 "M-x command" means type M-x, then type the name of the command, then
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
299 type RET.
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
300
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
301 M-x is simply the default key sequence that invokes the command
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
302 "execute-extended-command". This command allows you to run any Emacs
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
303 command if you can remember the command's name. If you can't remember
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
304 the command's name, you can type TAB and SPC for completion, and ? for a
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
305 list of possibilities. An Emacs "command" is any "interactive" Emacs
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
306 function.
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
307
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
308 NOTE: Your system administrator may have bound other key sequences to
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
309 invoke execute-extended-command. A function key labeled "Do" is a good
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
310 candidate for this.
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
311
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
312 To run non-interactive Emacs functions, use M-ESC instead and type a
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
313 Lisp form that invokes the function (see question 102).
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
314
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
315 6: What do things like this mean: etc/SERVICE, src/config.h,
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
316 lisp/default.el?
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
317
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
318 These are the names of files that are part of the GNU Emacs
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
319 distribution. The GNU Emacs distribution is divided into several
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
320 subdirectories; the important subdirectories are named "etc", "lisp",
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
321 and "src".
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
322
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
323 If you use GNU Emacs, but don't know where it is kept on your system,
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
324 start Emacs, then type "C-h v exec-directory RET". The directory name
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
325 that is displayed by this will be the full pathname of the "etc"
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
326 directory of your installed GNU Emacs distribution.
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
327
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
328 Some of these files are available individually via FTP or e-mail, see
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
329 question 20.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
330
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
331 7: What are FSF, LPF, OSF, GNU, RMS, FTP, and GPL?
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
332
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
333 FSF == Free Software Foundation
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
334 LPF == League for Programming Freedom
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
335 OSF == Open Software Foundation
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
336 GNU == GNU's Not Unix
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
337 RMS == Richard Matthew Stallman
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
338 FTP == File Transfer Protocol
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
339 GPL == GNU General Public Licence
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
340
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
341 NOTE: Avoid confusing the FSF, the LPF, and the OSF. The LPF opposes
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
342 look-and-feel copyrights and software patents. The FSF aims to make high
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
343 quality free software available for everyone. The OSF is a commercial
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
344 organization which wants to provide an alternative, standardized version
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
345 of Unix not controlled by AT&T.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
346
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
347 NOTE: The word "free" in the title of the Free Software Foundation refers
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
348 to "freedom", not "zero dollars". Anyone can charge any price for
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
349 GPL-covered software that they want to. However, in practice, the freedom
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
350 enforced by the GPL leads to low prices, because you can always get the
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
351 software for less money from someone else, because everyone has the right
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
352 to resell or give away GPL-covered software.
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
353
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
354
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
355
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
356 Sources of Information and Help
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
357
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
358 8: I'm just starting GNU Emacs; how do I do basic editing?
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
359
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
360 Type "C-h t" to invoke the self-paced tutorial. Typing just C-h is
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
361 how to enter the help system.
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
362
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
363 WARNING: Your system administrator may have changed C-h to act like DEL.
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
364 You can use M-x help-for-help instead to invoke help. To discover what
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
365 key (if any) invokes help on your system, type "M-x where-is RET
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
366 help-for-help RET". This will print a comma-separated list of key
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
367 sequences in the echo area. Ignore the last character in each key
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
368 sequence listed. Each of the resulting key sequences invokes help.
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
369
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
370 NOTE: Emacs's help facility works best if help is invoked by a single
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
371 key. The variable help-char should hold the value of this character.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
372 Andrew Arensburger <arensb@kong.gsfc.nasa.gov> wrote a patch that allows +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
373 the help facility to work properly when invoked by multiple character +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
374 sequences. +
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
375
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
376 9: How do I find out how to do something in GNU Emacs?
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
377
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
378 There are several methods for finding out how to do things in Emacs.
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
379
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
380 * You should become familiar with the online documentation for Emacs. The +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
381 complete text of the Emacs manual is available online in a hypertext
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
382 format via the "Info" manual reader. Type "C-h i" to invoke Info.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
383
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
384 * You can order a hardcopy of the manual from the FSF. See question 12. +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
385
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
386 * You can get a printed reference card listing commands and keys to invoke +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
387 them. You can order one from the FSF for $1 (or 10 for $5), or you can
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
388 print your own from the etc/refcard.tex file in the Emacs distribution.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
389
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
390 * You can list all of the commands whose names contain a certain word +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
391 (actually which match a regular expression) using the "command-apropos"
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
392 command. Type "C-h a" to invoke this command.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
393
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
394 * You can list all of the functions and variables whose names contain a +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
395 certain word using the "apropos" command. M-x apropos invokes this
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
396 command.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
397
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
398 * There are many other commands in Emacs for getting help and information. +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
399 To get a list of these commands, type "C-h C-h C-h".
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
400
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
401 NOTE: You may find that command-apropos and apropos are extremely slow
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
402 on your system. This will be fixed in Emacs 19. If you can't wait that
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
403 long, there is a "fast-apropos.el" file available in the Emacs Lisp
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
404 Archive (see question 18) that contains the fix. This file
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
405 also contains a "super-apropos" command that will list all the functions
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
406 and variables whose documentation strings contain a certain word.
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
407
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
408 10: Where can I get GNU Emacs on the net (or by snail mail)?
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
409
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
410 Look in the files etc/DISTRIB and etc/FTP for information on nearby
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
411 archive sites. If you don't already have GNU Emacs, see question 20 !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
412 for how to get these two files.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
413
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
414 The latest version is always available via anonymous FTP at MIT
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
415 (prep.ai.mit.edu:pub/gnu/emacs-18.58.tar.Z). !
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
416
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
417 11: Where can I get help in installing GNU Emacs?
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
418
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
419 Look in the file etc/SERVICE for names of companies and individuals who
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
420 will sell you this type of service. An up-to-date version of the
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
421 SERVICE file is available on prep.ai.mit.edu. See question 20
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
422 for how to retrieve this file.
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
423
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
424 12: How do I get a printed copy of the GNU Emacs manual?
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
425
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
426 You can order a printed copy of the GNU Emacs manual from the FSF for
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
427 $20. For 6 or more manuals the price is $13 each. {The price may be !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
428 tax-deductible as a business expense. Can someone tell me for certain? I !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
429 know that pure donations to the FSF are tax-deductible, but I don't know !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
430 about payments for manuals or tapes.} !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
431
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
432 The full TeX source for the manual also comes in the "man" directory of
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
433 the Emacs distribution, if you're daring enough to try to print out this
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
434 300 page manual yourself (see question 14).
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
435
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
436 If you absolutely have to print your own copy, and you don't have TeX, you
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
437 can get a PostScript version via anonymous FTP (cs.ubc.ca: -
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
438 src/gnu/manuals_ps/emacs-18.57.ps.Z, which site requests that you please
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
439 CONFINE ANY MAJOR FTPING TO LATE EVENINGS OR EARLY MORNINGS OUR TIME
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
440 (pacific time zone, GMT-8)).
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
441
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
442 If you don't have TeX you can convert the Texinfo sources into
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
443 {t,n,ps}roff format with the "texi2roff" program, which is available via
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
444 anonymous FTP (archive.cis.ohio-state.edu:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
445 /pub/gnu/texi2roff/texi2roff.shar.Z)
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
446
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
447 Carl Witty <cwitty@cs.stanford.edu> writes:
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
448
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
449 The Emacs manual is also available online in the Info system, which is
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
450 available by typing "C-h i". In this form, it has hypertext links and
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
451 is very easy to browse or search; many people prefer it to the printed
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
452 manual.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
453
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
454 13: How do I install a piece of Texinfo documentation?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
455
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
456 First create Info files from the Texinfo files with the "makeinfo"
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
457 program. makeinfo is available as part of the latest Texinfo package
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
458 (prep.ai.mit.edu:/pub/gnu/texinfo-2.12.tar.Z). -
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
459
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
460 For information about the Texinfo format, read the Texinfo manual which
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
461 comes with Emacs. This manual also comes installed in Info format, so you
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
462 can read it online.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
463
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
464 Neither texinfo-format-buffer nor the makeinfo program install the
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
465 resulting Info files in Emacs's Info tree. To install Info files:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
466
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
467 1. Move the files to the "info" directory in the installed Emacs
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
468 distribution. See question 6 if you don't know where that
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
469 is.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
470
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
471 2. Edit the file info/dir in the installed Emacs distribution, and add a
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
472 line for the top level node in the Info package that you are
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
473 installing. Follow the examples are already in this file. The format
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
474 is:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
475
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
476 * Topic: (relative-pathname). Short description of topic.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
477
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
478 If you want to install Info files and you don't have the necessary
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
479 privileges, you have several options: !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
480 !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
481 * Info files don't actually need to be installed before being used. You !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
482 can feed a file name to the Info-goto-node command (invoked by pressing
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
483 "g" in Info mode) by typing the name of the file in parentheses. This
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
484 goes to the node named "Top" in that file. For example, to view a Info
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
485 file named "XXX" in your home directory, you can type this:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
486
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
487 C-h i g (~/XXX) RET
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
488
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
489 * You can create your own Info directory. You can tell Emacs where the !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
490 Info directory is by setting the value of the variable Info-directory
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
491 to its pathname. For example, to use a private Info directory which
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
492 is a subdirectory of your home directory named "Info", you could do
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
493 this:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
494
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
495 (setq Info-directory (expand-file-name "~/Info"))
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
496
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
497 You will need a top-level Info file named "dir" in this directory.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
498 You can include the system-wide Info directory in your private Info
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
499 directory with symbolic links or by copying it.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
500
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
501 * You can use an enhanced version of lisp/info.el that handles multiple +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
502 Info directories. Then you can more easily use a mix of private and +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
503 shared Info files. Dave Gillespie <daveg@csvax.cs.caltech.edu> has +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
504 written one such enhancement and I am told there are others. +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
505
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
506 14: How do I print a Texinfo file?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
507
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
508 NOTE: You can't get nice printed output from Info files; you must still +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
509 have the original Texinfo source file for the manual you want to print. +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
510
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
511 1. Make sure the first line of the Texinfo file looks like this:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
512
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
513 \input texinfo
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
514
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
515 You may need to alter "texinfo" to the full pathname of the
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
516 texinfo.tex file, which comes with Emacs as man/texinfo.tex (or copy
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
517 or link it into the current directory).
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
518
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
519 2. tex XXX.texinfo
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
520
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
521 3. texindex XXX.??
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
522
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
523 The "texindex" program comes with Emacs as man/texindex.c.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
524
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
525 4. tex XXX.texinfo
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
526
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
527 5. Print the DVI file XXX.dvi in the normal way for printing DVI files
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
528 at your site.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
529
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
530 To get more general instructions, retrieve the latest Texinfo package
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
531 mentioned in question 13.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
532
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
533 15: Can I view Info files without using GNU Emacs?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
534
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
535 Yes, the `info', `xinfo', and `ivinfo' programs do this. info uses
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
536 curses, xinfo uses standard X11R4 libraries, and ivinfo uses InterViews.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
537 You can get info as part of the latest Texinfo package (see question 13).
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
538 xinfo is available separately (prep.ai.mit.edu:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
539 pub/gnu/xinfo-1.01.01.tar.Z). ivinfo is available in a comp.sources.misc
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
540 archive or from Tom Horsley <tom@ssd.csd.harris.com>. For ivinfo, you
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
541 need Stanford's InterViews C++ X library, available via anonymous FTP
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
542 (interviews.stanford.edu).
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
543
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
544 16: Where can I get documentation on GNU Emacs Lisp?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
545
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
546 Within Emacs, you can type "C-h f" to get the documentation for a
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
547 function, "C-h v" for a variable.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
548
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
549 For more information, obtain the GNU Emacs Lisp Reference Manual for Emacs
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
550 18 under Unix. It is available from the FSF for $50 (or 5 for $200). The
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
551 latest revision available for FTP is edition 1.03 dated 28 January 1991.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
552
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
553 For online use, a set of pregenerated Info files is available with the
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
554 Texinfo source for the Emacs Lisp manual via anonymous FTP (Emacs Lisp
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
555 Archive, prep.ai.mit.edu:pub/gnu/elisp-manual-1.03.tar.Z). (You can also !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
556 create the Info files from the Texinfo source.) See question 13 for
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
557 details on how to install these files online.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
558
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
559 If you are daring enough to try to print this 550 page manual out
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
560 yourself, for instructions see question 14.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
561
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
562 Also, as a popular USENET saying goes, "Use the Force, Read the Source".
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
563
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
564 17: Has someone written an GNU Emacs Lisp package that does XXX?
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
565
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
566 Probably. A listing of Emacs Lisp packages, called the Lisp Code
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
567 Directory, is being maintained by Dave Brennan <brennan@hal.com> and !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
568 Dave Sill <de5@ornl.gov>. You can search through this list to find if
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
569 someone has written something that fits your needs.
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
570
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
571 This list is file "LCD-datafile.Z" in the Emacs Lisp Archive. (See
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
572 question 18 for methods for getting this file.) The files "lispdir.el.Z"
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
573 and "lispdir.doc.Z" in the archive contain information to help you use the
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
574 list. Once you have installed lispdir.el and LCD-datafile, then you can
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
575 use the "M-x lisp-dir-apropos" command to look things up in the database.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
576 For example, the command "M-x lisp-dir-apropos RET ange-ftp RET" produces
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
577 this (outdated) output:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
578
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
579 GNU Emacs Lisp Code Apropos -- "ange-ftp"
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
580
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
581 ange-ftp (3.112) 91-08-12
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
582 Andy Norman, <ange@hplb.hpl.hp.com>
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
583 archive.cis.ohio-state.edu:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
584 /pub/gnu/emacs/elisp-archive/as-is/ange-ftp.el.Z
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
585 transparent FTP Support for GNU Emacs
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
586
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
587 18: Where can I get GNU Emacs Lisp packages that don't come with Emacs?
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
588
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
589 First, check the Lisp Code Directory to find the name of the package you
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
590 are looking for. (See question 17). Then check local archives and
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
591 the Emacs Lisp Archive to find a copy of the relevant files. Then, if
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
592 you still haven't found it, you can send e-mail to the author asking for
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
593 a copy.
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
594
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
595 NOTE: The archive maintainers do not have time to answer individual
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
596 requests for packages or the list of packages in the archive. If you
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
597 cannot use FTP or UUCP to access the archive yourself, try to find a
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
598 friend who can, but please don't ask the maintainers.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
599
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
600 You can access the Emacs Lisp Archive via anonymous FTP
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
601 (archive.cis.ohio-state.edu:/pub/gnu/emacs/elisp-archive/). Fetch the
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
602 file "README" first.
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
603
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
604 NOTE: Any files with names ending in ".Z" are compressed, and you should
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
605 use "binary" mode in FTP to retrieve them. You should also use binary
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
606 mode whenever you retrieve any files with names ending in ".elc".
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
607
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
608 19: How do I submit code to the Emacs Lisp Archive?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
609
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
610 Submissions should be mailed to elisp-archive@cis.ohio-state.edu. Mail
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
611 messages (submissions) are automatically saved and periodically archived.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
612 Urgent mail may be sent directly to Dave Sill <de5@ornl.gov> or Dave
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
613 Brennan <brennan@hal.com> or should contain the string "urgent" in the !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
614 subject. The incomoing ftp directory is no longer available at the
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
615 request of Ohio State.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
616
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
617 However, if someone has a submission with multiple files (which would be
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
618 archived as a tar file) or binary files, then FTP transfer is preferred
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
619 and can be arranged via an anonymous FTP site. This is faster than
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
620 uudecoding, unsharing, etc., and re-packaging files.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
621
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
622 Before submitting anything, please read the file "guidelines.Z", which is
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
623 available in the archive. Whenever possible submissions should contain
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
624 a complete LCD entry since this helps reduce administrative overhead for
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
625 the maintainers. You can include an entry in this format:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
626
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
627 ;; LCD Archive Entry:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
628 ;; package name|author's name|email address
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
629 ;; |description
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
630 ;; |date|version|archive path
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
631
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
632 For example:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
633
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
634 ;; LCD Archive Entry:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
635 ;; tex-complete|Sebastian Kremer|sk@thp.Uni-Koeln.DE
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
636 ;; |Minibuffer name completion for editing [La]TeX.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
637 ;; |91-03-26|$Revision: 1.12 $|~/packages/tex-complete.el.Z
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
638
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
639 Dave Brennan has software which automatically looks for data in this
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
640 format. The format is fairly flexible. The entry ends when a line is
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
641 reached with a different prefix or the seventh field terminator is
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
642 seen.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
643
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
644 20: What informational files are available for GNU Emacs?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
645
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
646 This isn't a frequently asked question, but it should be! A variety of
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
647 informational files about GNU Emacs and relevant aspects of the GNU
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
648 project are available for you to read.
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
649
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
650 The following files are available in the "etc" directory of the GNU
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
651 Emacs distribution, and also the latest versions are available
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
652 individually via anonymous FTP (prep.ai.mit.edu:/pub/gnu/etc/):
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
653
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
654 APPLE -- Why the FSF doen't support GNU Emacs on Apple computers
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
655 DISTRIB -- GNU Emacs Availability Information,
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
656 including the popular "Free Software Foundation Order Form"
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
657 FTP -- How to get GNU Software by Internet FTP or by UUCP
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
658 GNU -- The GNU Manifesto
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
659 INTERVIEW -- Richard Stallman discusses his public-domain
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
660 UNIX-compatible software system
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
661 with BYTE editors
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
662 MACHINES -- Status of GNU Emacs on Various Machines and Systems
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
663 MAILINGLISTS -- GNU Project Electronic Mailing Lists
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
664 SERVICE -- GNU Service Directory
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
665 SUN-SUPPORT -- including "Using Emacstool with GNU Emacs" !
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
666
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
667 These files are available in the "etc" directory of the GNU Emacs
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
668 distribution:
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
669
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
670 DIFF -- Differences between GNU Emacs and Twenex Emacs
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
671 CCADIFF -- Differences between GNU Emacs and CCA Emacs
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
672 GOSDIFF -- Differences between GNU Emacs and Gosling (Unipress??) Emacs
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
673 COPYING -- GNU Emacs General Public License
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
674 NEWS -- GNU Emacs News, a history of user-visible changes
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
675 LPF -- Why you should join the League for Programming Freedom
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
676 FAQ -- GNU Emacs Frequently Asked Questions (You're reading it)
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
677 OPTIONS -- a complete explanation of startup option handling
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
678
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
679 These files are available via anonymous FTP (prep.ai.mit.edu:/pub/gnu/):
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
680
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
681 tasks -- GNU Task List
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
682 standards.text -- GNU Coding Standards
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
683
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
684 In addition, all of the above files are available directly from the FSF
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
685 via e-mail. Of course, please try to get them from a local source
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
686 first.
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
687
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
688 These additional files are available from the FSF via e-mail:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
689
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
690 * GNU's Bulletin, June, 1991 -- this file includes:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
691 GNU'S Who
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
692 What Is the Free Software Foundation?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
693 What Is Copyleft?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
694 A Small Way to Help Free Software
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
695 GNUs Flashes (important recent developments for project GNU)
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
696 Free Software Support (and how to get it!)
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
697 Copyrighted Programming Languages
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
698 AT&T Threatens Users of X Windows (and other software patent threats)
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
699 Project Gutenberg
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
700 GNU Project Status Report
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
701 GNU in Japan
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
702 GNU Wish List
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
703 Help Keep Government Software Free
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
704 GNU Software Available Now
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
705 Contents of the Emacs Tape
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
706 Contents of the Compiler Tape
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
707 Contents of the X11 Tapes
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
708 VMS Emacs and Compiler Tapes
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
709 GNU Documentation
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
710 How to Get GNU Software
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
711 Free Software for Microcomputers
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
712 GNU Software on Apple computers
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
713 GNU Software on the Amiga
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
714 GNU Software on the Atari
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
715 GNUish MS-DOS project
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
716 Freemacs, an Extensible Editor for MS-DOS
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
717 GNU in Japan
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
718 FSF Order Form
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
719 Thank GNUs
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
720 * Legal issues about contributing code to GNU
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
721 * GNU Project Status Report
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
722
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
723 21: Where can I get the latest VM, Supercite, GNUS, Calc, Calendar,
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
724 Ange-FTP, VIP, Dired, Ispell, Epoch, Demacs, Freemacs, or Patch?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
725
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
726 {If you know of any other packages that are so substantial that they
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
727 deserve to be mentioned here, please tell me. Having its own mailing list
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
728 or newsgroup or more than half a megabyte of source code are good signs.}
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
729
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
730 * VM (View Mail) -- another mail reader within Emacs
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
731
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
732 Author: Kyle Jones <kyle@uunet.uu.net>
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
733 Latest released version: 4.41
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
734 Beta test version: 5.31
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
735 Anonymous FTP:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
736 Emacs Lisp Archive: packages/vm-4.41.tar.Z, as-is/timer.shar.Z -
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
737 ftp.uu.net:/pub/vm-{4.41,5.31beta}.tar.Z
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
738 Newsgroups and mailing lists:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
739 Info-VM:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
740 gnu.emacs.vm.info
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
741 info-vm-request@uunet.uu.net (for subscriptions)
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
742 info-vm@uunet.uu.net (for submissions) +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
743 Bug-VM:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
744 gnu.emacs.vm.bug
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
745 bug-vm-request@uunet.uu.net (for subscriptions)
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
746 bug-vm@uunet.uu.net (for submissions) +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
747
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
748 * SuperCite -- mail and news citation package within Emacs
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
749
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
750 Author: Barry Warsaw <bwarsaw@cen.com>
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
751 Mailing list: supercite-request@anthem.nlm.nih.gov (for subscriptions)
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
752 supercite@anthem.nlm.nih.gov (for submissions) +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
753 Latest version: 2.2
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
754 Anonymous FTP:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
755 Emacs Lisp Archive: packages/sc-2.2.tar.Z
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
756 Via e-mail:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
757 To: library@cme.nist.gov
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
758 Subject: help
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
759
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
760 NOTE: Superyank is an old version of SuperCite.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
761
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
762 * GNUS -- news reader within Emacs
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
763
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
764 Author: Masanobu Umeda <umerin@mse.kyutech.ac.jp>
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
765 Latest official version: 3.13
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
766 Unofficial test version: 3.14.1
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
767 Anonymous FTP:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
768 cs.umn.edu:pub/gnu/emacs/gnus-3.14.1.tar.Z.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
769 aun.uninett.no:pub/gnus-3.14.1.tar.Z
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
770 wnoc-fuk.wide.ad.jp:pub/GNU/etc/gnus-3.14.1.tar.Z
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
771 liasun3.epfl.ch:pub/gnu/emacs/gnus-3.14.1.tar.Z
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
772 aix370.rrz.uni-koeln.de:/pub/gnu/emacs/gnus-3.14.1.tar.Z
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
773 funet.fi:/networking/news/gnus-3.14.1.tar.Z
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
774 src.doc.ic.ac.uk:/gnu/EmacsBits/gnus/gnus-3.14.1.tar.Z
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
775 Emacs Lisp Archive: packages/gnus-3.13.tar.Z
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
776 Newsgroups and mailing lists:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
777 English-only:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
778 gnu.emacs.gnus
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
779 info-gnus-english-request@cis.ohio-state.edu (for subscriptions)
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
780 info-gnus-english@cis.ohio-state.edu (for submissions) +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
781 Japanese (and some English):
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
782 info-gnus-request@flab.fujitsu.co.jp (for subscriptions)
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
783 info-gnus@flab.fujitsu.co.jp (for submissions) +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
784
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
785 * Calc -- poor man's Mathematica within Emacs
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
786
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
787 Author: Dave Gillespie <daveg@csvax.cs.caltech.edu>
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
788 Latest released version: 2.02 !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
789 Anonymous FTP:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
790 csvax.cs.caltech.edu:pub/calc-2.02.tar.Z !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
791 prep.ai.mit.edu:pub/gnu/calc-2.02.tar.Z !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
792 NOTE: Unlike Wolfram Research, Dave has never threatened to sue anyone
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
793 for having a program with a similar command language to Calc. :-)
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
794
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
795 * Calendar/Diary -- calendar manager within Emacs
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
796
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
797 Author: Ed Reingold <reingold@cs.uiuc.edu>
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
798 Latest version: 4.01
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
799 Anonymous FTP:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
800 emr.cs.uiuc.edu:/pub/emacs/calendar
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
801 Via e-mail:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
802 To: reingold@cs.uiuc.edu
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
803 Subject: send-emacs-cal
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
804 Put your best internet e-mail address in the body.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
805
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
806 * Ange-FTP -- adds transparent FTP access to Emacs's file access routines
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
807
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
808 Author: Andy Norman <ange@hplb.hpl.hp.com>
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
809 Latest version: 3.143
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
810 Anonymous FTP:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
811 ftp.gnu.ai.mit.edu:ange-ftp/ange-ftp.el.Z
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
812 Emacs Lisp Archive:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
813 as-is/ange-ftp.el.Z (current version)
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
814 packages/ange-ftp.el.Z (old version)
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
815 Mailing list: ange-ftp-lovers-request@anorman.hpl.hp.com (subscriptions) !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
816 ange-ftp-lovers@anorman.hpl.hp.com (for submissions) +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
817 NOTE: now with support for accessing VMS systems
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
818
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
819 * VIP -- vi emulation for Emacs -
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
820
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
821 Author: Aamod Sane <sane@cs.uiuc.edu>
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
822 Latest released version: 4.3 +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
823 Anonymous FTP:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
824 cs.uiuc.edu:pub/vip4.3.tar.Z
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
825 Emacs Lisp Archive: modes/vip-mode.tar.Z
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
826 NOTE: This version much more closely emulates vi than the one
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
827 distributed with Emacs.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
828
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
829 Version distributed with Emacs: 3.5
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
830 Author: Masahiko Sato <ms@sail.stanford.edu,
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
831 masahiko@sato.riec.tohoku.junet>
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
832
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
833 * Dired -- directory editor for Emacs
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
834
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
835 Author: Sebastian Kremer <sk@thp.uni-koeln.de>
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
836 Latest released version: 5.239 +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
837 Anonymous FTP: ftp.cs.buffalo.edu:pub/Emacs/diredall.tar.Z -
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
838 ftp.uni-koeln.de:pub/gnu/emacs/diredall.tar.Z -
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
839 NOTE: This is a huge improvement over the Dired distributed with Emacs.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
840 This version will be in Emacs 19.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
841
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
842 * AUC TeX -- enhanced LaTeX mode +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
843 +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
844 Author: Kresten Krab Thorup <krab@iesd.auc.dk> +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
845 Latest released version: 5.4 +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
846 Anonymous FTP: iesd.auc.dk:pub/emacs-lisp/auc-tex-5.4.tar.Z +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
847 Mailing list: +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
848 auc-tex-request@iesd.auc.dk (for subscriptions) +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
849 auc-tex@iesd.auc.dk (for submissions) +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
850 auc-tex_mgr@iesd.auc.dk (auc-tex development team) +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
851 +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
852 * Hyperbole -- extensible hypertext management system within Emacs +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
853 +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
854 Author: Bob Weiner <rsw@cs.brown.edu> +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
855 Anonymous FTP: +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
856 wilma.cs.brown.edu:pub/hyperbole/h*.tar.Z +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
857 Mailing lists: +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
858 hyperbole-announce -- Hyperbole release announcements only. +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
859 Subscriptions: +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
860 To: hyperbole-request@cs.brown.edu +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
861 Subject: Add <mailbox@domain.name> to hyperbole-announce. +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
862 hyperbole -- Hyperbole discussion. +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
863 Subscriptions: +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
864 To: hyperbole-request@cs.brown.edu +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
865 Subject: Add <mailbox@domain.name> to hyperbole. +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
866 Submissions: +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
867 hyperbole@cs.brown.edu +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
868 NOTE: Any member of the hyperbole mailing list is automatically a +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
869 member of the hyperbole-announce mailing list. +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
870 NOTE: No .UUCP or ! addresses are allowed on these mailing lists. +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
871 +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
872 * Ispell -- spell checker in C with interface for Emacs +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
873
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
874 Author: Geoff Kuenning <geoff@itcorp.com> (latest of many)
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
875 Latest released version: 2.0.02
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
876 Beta test version: 3.0 (9 patches)
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
877 Anonymous FTP:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
878 archive.cis.ohio-state.edu:/pub/gnu/ispell/* (version 2.0.02)
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
879 ftp.cs.ucla.edu:/pub/ispell/* (version 3.0, patches, dictionaries)
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
880 NOTE: Do not send mail to Geoff asking him to send you the latest
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
881 version of Ispell. He does not have free e-mail.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
882
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
883 * Epoch -- enhanced GNU Emacs with better X interface
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
884
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
885 Latest released version: 3.2
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
886 Beta test version: 4.0 beta patchlevel 0 !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
887 Anonymous FTP:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
888 cs.uiuc.edu:pub/epoch-files/epoch/epoch-4.0b0.tar.Z !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
889 cs.uiuc.edu:pub/epoch-files/epoch/epoch-3.2{.tar.Z,-patch-{1,2.tar.Z}}
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
890 Newsgroup and mailing lists: !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
891 Epoch: !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
892 gnu.emacs.epoch
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
893 epoch-request@cs.uiuc.edu (for subscriptions)
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
894 epoch@cs.uiuc.edu (for submissions) +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
895 Epoch-Design: +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
896 epoch-design-request@cs.uiuc.edu (for subscriptions) +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
897 epoch-design@cs.uiuc.edu (for submissions) +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
898
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
899 * Demacs -- GNU Emacs altered to work under MS-DOS on 386 and 486 machines
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
900
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
901 Authors: Manabu Higashida <manabu@sigmath.osaka-u.ac.jp>
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
902 HIRANO Satoshi <hirano@tkl.iis.u-tokyo.ac.jp>
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
903 Latest released version: 1.2.0
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
904 Anonymous FTP:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
905 utsun.s.u-tokyo.ac.jp:GNU/demacs/* (nearest to U.S.A.)
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
906 ftp.sigmath.osaka-u.ac.jp:pub/Msdos/Demacs/*
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
907 wnoc-fuk.wide.ad.jp:pub/msdos/Demacs/*
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
908 ftp.3com.com:pub/gnu/msdos/demacs/* +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
909 mindseye.berkeley.edu:pub/kanji/demacs/* +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
910 ftp.hawaii.edu:pub/editors/demacs.tar.Z +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
911 ftp.math.ksu.edu:pub/pc/demacs/* +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
912 wsmr-simtel20.army.mil:pd1:<msdos.demacs>* +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
913 ftp.uni-koeln.de: (PLEASE USE ONLY OUTSIDE WORKING HOURS!) +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
914 msdos/gnuprogs/dem120e.zip (executables, lisp-code, doc)
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
915 msdos/gnuprogs/dem120s.zip (sources, diffs)
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
916 ftp.lysator.liu.se:pub/msdos/gnu/emacs/?????????????
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
917 mizar.docs.uu.se:pub/gnu/demacs/* +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
918 iamsun.unibe.ch:PC/demacs/* +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
919 flop.informatik.tu-muenchen.de:outgoing/demacs.tar +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
920 ftp.funet.fi:pub/gnu/emacs/demacs/* +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
921 garbo.uwasa.fi:pc/editor/dem120{e,s}.zip +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
922 ftp.win.tue.nl:pub/gnu/demacs/* +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
923 ugle.unit.no:pub/gnu/Demacs/* +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
924 {Does anyone know which sites have the Kanji version?} +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
925 Via e-mail: +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
926 From garbo.uwasa.fi: +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
927 To: mailserv@garbo.uwasa.fi +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
928 Subject: garbo-request +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
929 Body: send pc/editor/dem120e.zip +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
930 send pc/editor/dem120s.zip +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
931 quit +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
932 Downloading:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
933 EXEC-PC (Milwaukee, WI) 414-789-4210 (2400 bps)
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
934 in the Mahoney MS-DOS file area in its Editors/wordprocessors
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
935 library (F), named GNUEMACS.ZIP
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
936 Channel 1 (Cambridge, MA) 617-345-8873 (9600 bps)
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
937 in the New Uploads file area, named GNUEMACS.ZIP
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
938 NOTE: Use the -d option of [pk]unzip for all .zip archives. Some sites
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
939 have Demacs lharc'ed. {Can anyone tell me FTP sites for programs to
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
940 extract lharc and zip format files? Or even better, give me a pointer
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
941 to another FAQ that answers these questions.}
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
942 Mailing list: +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
943 NOTE: There is no mailing list for Demacs. However, there is a list +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
944 for DJGPP, which is the environment that Demacs runs in. Many +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
945 Demacs problems are actually issues with DJGPP. +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
946 DJGPP: +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
947 Subscriptions: +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
948 To: listserv@sun.soe.clarkson.edu +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
949 body: add <your-address> djgpp +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
950 or put "help" in the body. +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
951 If this fails, mail to djgpp-request@sun.soe.clarkson.edu. +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
952 Submissions: +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
953 djgpp@sun.soe.clarkson.edu +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
954
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
955 * Freemacs -- a small Emacs for MS-DOS
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
956
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
957 Author: Russ Nelson <nelson@sun.soe.clarkson.edu> +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
958 Latest released version: 1.6a
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
959 Anonymous FTP:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
960 simtel20.army.mil:PD:<MSDOS.FREEMACS>*
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
961 grape.ecs.clarkson.edu:pub/msdos/freemacs/*
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
962 Via e-mail:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
963 To: archive-server@sun.soe.clarkson.edu
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
964 body: help
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
965 Via snail mail:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
966 address: Russell Nelson, 11 Grant St., Potsdam, NY 13676
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
967 Send $15 copying fee, and specify preferred floppy disk format:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
968 5.25", 360K, or 3.50", 720K
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
969 Mailing lists:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
970 Subscriptions:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
971 To: listserv@sun.soe.clarkson.edu
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
972 body: add <your-address> <name-of-list>
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
973 or put "help" in the body.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
974 List distribution addresses:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
975 freemacs-announce@sun.soe.clarkson.edu
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
976 freemacs-help@sun.soe.clarkson.edu
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
977 freemacs-workers@sun.soe.clarkson.edu (send bug reports here)
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
978
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
979 * Patch -- program to apply "diffs" for updating files
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
980
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
981 Author: Larry Wall <lwall@netlabs.com>
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
982 Latest version: 2.0 patchlevel 12u5
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
983 (This is the version that supports the new "unified" diff format.)
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
984 Anonymous FTP:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
985 prep.ai.mit.edu:pub/gnu/patch-2.0.12u4.tar.Z
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
986
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
987 22: What is the real legal meaning of the GNU copyleft?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
988
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
989 RMS writes:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
990
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
991 The legal meaning of the GNU copyleft is less important than the spirit,
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
992 which is that Emacs is a free software project and that work pertaining
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
993 to Emacs should also be free software. "Free" means that all users have
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
994 the freedom to study, share, change and improve Emacs. To make sure
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
995 everyone has this freedom, pass along source code when you distribute
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
996 any version of Emacs or a related program, and give the recipients the
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
997 same freedom that you enjoyed.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
998
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
999 If you still want to find out about the legal meaning of the copyleft,
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1000 please ask yourself if this means you are not paying attention to the
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1001 spirit.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1002
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1003 23: What are appropriate messages for gnu.emacs.help, gnu.emacs.bug,
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1004 comp.emacs, etc.?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1005
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1006 The file etc/MAILINGLISTS discusses the purpose of each GNU
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1007 mailing-list. (See question 20 on how to get a copy.) For
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1008 those which are gatewayed with newsgroups, it lists both the newsgroup
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1009 name and the mailing list address.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1010
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1011 comp.emacs is for discussion of Emacs programs in general. This
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1012 includes GNU Emacs along with various other implementations like JOVE,
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1013 MicroEmacs, Freemacs, MG, Unipress, CCA, Epsilon, etc.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1014
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1015 Many people post GNU Emacs questions to comp.emacs because they don't
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1016 receive any of the gnu.* newsgroups. Arguments have been made both for
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1017 and against posting GNU-Emacs-specific material to comp.emacs. You have
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1018 to decide for yourself.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1019
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1020 Messages advocating "non-free" software are considered unacceptable on any
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1021 of the gnu.* newsgroups except for gnu.misc.discuss, which was created to
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1022 hold the extensive flame-wars on the subject. "non-free" software
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1023 includes any software for which the end user can't get source code. Be
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1024 careful to remove the gnu.* groups from the "Newsgroups:" line when
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1025 posting a followup that recommends such software.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1026
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1027 The correct place to report GNU Emacs bugs is by e-mail to
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1028 bug-gnu-emacs@prep.ai.mit.edu. Anything sent here also appears in the
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1029 newsgroup gnu.emacs.bug, but please use e-mail instead of news to submit
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1030 the bug report. This way a reliable return address is available so you
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1031 can be contacted for further details.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1032
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1033 RMS explains: !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1034
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1035 Sending bug reports to help-gnu-emacs (which has the effect of posting
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1036 on gnu.emacs.help) is undesirable because it takes the time of an
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1037 unnecessarily large group of people, most of whom are just users and
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1038 have no idea how to fix these problem. bug-gnu-emacs reaches a much
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1039 smaller group of people who are more likely to know what to do and have
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1040 expressed a wish to receive more messages about Emacs than the others.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1041
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1042 However, RMS says there are circumstances when it is okay to post to +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1043 gnu.emacs.help: +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1044 +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1045 If you have reported a bug and you don't hear about a possible fix, then +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1046 after a suitable delay (such as a week) it is okay to post on +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1047 gnu.emacs.help asking if anyone can help you. +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1048
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1049 If you are unsure whether you have a bug, RMS describes how to tell: !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1050
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1051 ... if Emacs crashes, that is a bug. If Emacs gets compilation errors
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1052 while building, that is a bug. If Emacs crashes while building, that is
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1053 a bug. If Lisp code does not do what the documentation says it does,
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1054 that is a bug.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1055
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1056 24: How do I unsubscribe to this mailing list?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1057
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1058 If you are receiving a GNU mailing list named "XXX", you might be able
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1059 to unsubscribe to it by sending a request to the address
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1060 "XXX-request@prep.ai.mit.edu". However, this will not work if you are
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1061 not listed on the main mailing list, but instead recieve the mail from a
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1062 distribution point. In that case, you will have to track down at which
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1063 distribution point you are listed. Inspecting the "Received:" headers
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1064 on the mail messages may help, along with liberal use of the "EXPN" or
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1065 "VRFY" sendmail commands through "telnet <site-address> smtp". Ask your
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1066 postmaster for help.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1067
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1068 25: What is the LPF and why should I join it?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1069
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1070 The LPF opposes the expanding danger of software patents and
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1071 look-and-feel copyrights. Write to league@prep.ai.mit.edu for more
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1072 information. You can get papers describing the LPF's views via
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1073 anonymous FTP (prep.ai.mit.edu:/pub/lpf/*) or via anonymous UUCP
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1074 (osu-cis!~/lpf/*).
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1075
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1076 26: What is the current address of the FSF?
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1077
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1078 Snail mail address:
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1079 Free Software Foundation, Inc.
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1080 675 Massachusetts Avenue
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1081 Cambridge, MA 02139, USA
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1082
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1083 Phone number:
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1084 (617) 876-3296
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1085
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1086 E-mail addresses:
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1087 gnu@prep.ai.mit.edu
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1088
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1089 27: What is the current address of the LPF?
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1090
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1091 Snail mail address:
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1092 League for Programming Freedom
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1093 1 Kendall Square, Number 143
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1094 Post Office Box 9171
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1095 Cambridge, MA 02139, USA
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1096
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1097 Phone number:
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1098 (617) 243-4061 { or 243-4091, I'm not sure ... }
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1099 {Will someone please tell me which of the above numbers is correct?}
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1100
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1101 E-mail address:
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1102 league@prep.ai.mit.edu
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1103
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1104 28: Where can I get other up-to-date GNU stuff?
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1105
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1106 The most up-to-date official GNU stuff is normally kept on
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1107 prep.ai.mit.edu and is available for anonymous FTP. See the files
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1108 etc/DISTRIB and etc/FTP for more information. (To get copies of these
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1109 files, see question 20.)
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1110
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1111 For Europeans, the site nic.funet.fi duplicates the directory /pub/gnu
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1112 from prep.ai.mit.edu.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1113
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1114 29: Where can I get the latest version of this document (the FAQ list)?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1115
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1116 The GNU Emacs FAQ is available in several ways:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1117
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1118 1. Via USENET. If you can read news, the FAQ should be available in your +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1119 news spool, in both the "gnu.emacs.help" and "comp.emacs" newsgroups.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1120 Every news reader of which I know will allow you to read any news
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1121 article that is still in the news spool, even if you have read the
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1122 article before. You may need to read the instructions for your news
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1123 reader to discover how to do this. In "rn", this command will do this
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1124 for you at the "article selection level":
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1125
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1126 ?GNU Emacs FAQ?rc:m
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1127
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1128 In GNUS, you should type "C-u G" from the *Subject* buffer or "C-u SPC"
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1129 from the *Newsgroup* buffer to view all articles in a newsgroup.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1130
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1131 The FAQ articles' message IDs are:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1132
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1133 <GNU-Emacs-FAQ-0.92Feb23210646@bigbird.bu.edu> !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1134 <GNU-Emacs-FAQ-1.92Feb23210646@bigbird.bu.edu> !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1135 <GNU-Emacs-FAQ-2.92Feb23210646@bigbird.bu.edu> !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1136 <GNU-Emacs-FAQ-3.92Feb23210646@bigbird.bu.edu> +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1137
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1138 If you are viewing this in the GNUS `*Article*' buffer, you can move
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1139 point within one of the above message IDs and type "r" to fetch the
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1140 referenced article into the `*Article*' buffer. Type "o" in the
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1141 `*Article*' buffer to restore the previous contents of the `*Article*'
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1142 buffer. If you are not viewing this in the GNUS `*Article*' buffer,
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1143 use M-x gnus-Article-refer-article instead of "r". GNUS must be
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1144 running and you must display the `*Article*' buffer to see the results.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1145
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1146 If the FAQ articles have expired and been deleted from your news spool,
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1147 it might (or might not) do some good to complain to your news
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1148 administrator, because the most recent FAQ should not expire before
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1149 April 15, 1992. !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1150
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1151 2. Via anonymous FTP. You can fetch the FAQ articles via anonymous FTP +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1152 (pit-manager.mit.edu:pub/usenet/news.answers/GNU-Emacs-FAQ/part?). !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1153
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1154 3. Via e-mail. You can send the following magical incantation in the body +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1155 of a message to mail-server@pit-manager.mit.edu:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1156
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1157 send usenet/news.answers/GNU-Emacs-FAQ/part0 !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1158 send usenet/news.answers/GNU-Emacs-FAQ/part1 !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1159 send usenet/news.answers/GNU-Emacs-FAQ/part2 +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1160 send usenet/news.answers/GNU-Emacs-FAQ/part3 +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1161 +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1162 4. Via WAIS. The GNU Emacs FAQ is available via WAIS indexed on a +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1163 per-question basis from the "faq" database on bigbird.bu.edu on the +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1164 non-standard IP port number of 2210. This is probably the best way to +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1165 find out if there is something in the FAQ related to your question. I +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1166 use this myself to answer questions I see posted on gnu.emacs.help. !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1167 !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1168 The articles of the GNU Emacs FAQ are also available from the "usenet" !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1169 database on pit-manager.mit.edu (on the standard IP port: 210), along !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1170 with a lot of other FAQ articles. However, these are all indexed at !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1171 the whole article level instead of at the question level. This is a !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1172 better place to look if you want to fetch the entire FAQ. !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1173 !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1174 5. In the GNU Emacs distribution. Since GNU Emacs 18.56, the latest !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1175 available version of the FAQ at the time of release has been part of
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1176 the GNU Emacs distribution as file etc/FAQ. 18.58 is the latest !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1177 version, and it was released in February 1992. !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1178
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1179
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1180
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1181 GNU Emacs and Various Computing Environments
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1182
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1183 30: Where does the name "Emacs" come from?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1184
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1185 EMACS originally was an acronym for Editor MACroS. The first Emacs was
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1186 a set of macros written by Richard Stallman and Guy Steele for the
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1187 editor TECO (Text Editor and COrrector (originally Tape Editor and
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1188 COrrector)) on a PDP-10. (Amusing fact: many people have told me that
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1189 TECO code looks a lot like line noise. See alt.lang.teco if you are
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1190 interested.)
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1191
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1192 31: What is the latest version of GNU Emacs?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1193
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1194 GNU Emacs 18.58 is the current version. Fixes from 18.57 include better !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1195 mail address parsing, an X visual bell speedup, a call-process !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1196 enhancement, a regexp matching change, the ability to apply a numeric !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1197 argument to a self-inserting digit, getting X resource values from the !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1198 RESOURCE_MANAGER property, more reliable shell mode job control, and a !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1199 change to copy-keymap. Also, support has been added for many new system !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1200 types. !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1201
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1202 The June 1991 GNU's Bulletin says this about the status of Emacs: +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1203
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1204 GNU Emacs 18.57 is the current version. The undo facility has been
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1205 completely rewritten and now holds unlimited data temporarily, and a
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1206 user-specified amount for the long term.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1207
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1208 Berkeley is distributing GNU Emacs with the 4.3 BSD distribution, and
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1209 numerous companies distribute it also.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1210
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1211 Emacs 18 maintenance continues for simple bug fixes.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1212
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1213 To visit a file with information about what has changed in recent !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1214 versions, type "C-h n". !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1215
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1216 32: When will GNU Emacs 19 be available?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1217
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1218 Good question, I don't know. For that matter, neither do the developers.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1219 It will undoubtedly be available sometime in the 1990s. :-) People are
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1220 actually using alpha-test version of Emacs 19, which is a good sign. Work
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1221 has begun on features for Emacs 20.
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1222
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1223 RMS writes:
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1224
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1225 Work is progressing steadily on 19 and it the to-do list is getting
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1226 smaller. But I don't want to make the mistake of predicting when it
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1227 will be ready.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1228
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1229 33: What will be different about GNU Emacs 19?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1230
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1231 From the June 1991 GNU's Bulletin:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1232
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1233 Version 19 approaches release, counting among its new features: before
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1234 and after change hooks, source-level debugging of Emacs Lisp programs, X
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1235 selection processing (including clipboard selections), scrollbars,
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1236 support for European character sets, floating point numbers, per-buffer
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1237 mouse commands, X resource manager interfacing, mouse-tracking,
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1238 Lisp-level binding of function keys, multiple X windows (`screens' to
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1239 Emacs), a new input system---all input now arrives in the form of Lisp
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1240 objects---and buffer allocation, which uses a new mechanism capable of
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1241 returning storage to the system when a buffer is killed.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1242
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1243 Thanks go to Alan Carroll and the people who worked on Epoch for
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1244 generating initial feedback to a multi-windowed Emacs. Emacs 19
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1245 supports two styles of multiple windows, one with a separate screen for
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1246 the minibuffer, and another with a minibuffer attached to each screen.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1247
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1248 Features being considered for later releases of Emacs include:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1249 associating property lists with regions of text in a buffer; multiple
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1250 fonts, color, and pixmaps defined by those properties; different
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1251 visibility conditions for the regions, and for various windows showing
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1252 one buffer; hooks to be run if point or mouse moves outside a certain
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1253 range; incrementally saving undo history in a file; static menu bars;
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1254 and better pop-up menus.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1255
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1256 Mention of these two items disappeared in the January 1991 GNU's bulletin:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1257
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1258 * Incremental syntax analysis for various programming languages (Leif).
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1259 * A more sophisticated emacsclient/server model, which would provide
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1260 network transparent Emacs widget functionality.
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1261
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1262 34: Is there an Emacs that has better mouse and X window support?
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1263
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1264 Emacs 18 has some limited X Window System support, but there are
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1265 problems. Emacs 19 will have amazing mouse and window support. Right
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1266 now, there is a modified version of Emacs 18.55 called "Epoch" which has
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1267 greatly improved mouse and window support. To obtain Epoch, see
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1268 question 21.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1269
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1270 There are numerous Emacs Lisp packages that have been written to extend
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1271 Emacs 18's mouse handling capabilities. Some of these packages also have
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1272 patches to the C code to provide enhanced capabilities. Look up "mouse"
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1273 in the Lisp Code Directory (see question 17).
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1274
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1275 NOTE: Epoch only works with the X Window System; it does not work on
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1276 ordinary terminals.
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1277
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1278 35: Where can I get the "unofficial HP GNU Emacs"?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1279
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1280 The unofficial HP GNU Emacs is available via anonymous FTP
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1281 (me10.lbl.gov:pub/interex/HUGE/HUGE.{README.HP,tar.Z.??},
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1282 ee.utah.edu:HUGE/*, PLEASE FTP DURING NON-WORK HOURS!!!) and takes about
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1283 35 megabytes of disk space to build. It is useful for non-HP machines,
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1284 but some of the added features will only work under HP-UX.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1285
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1286 You will need to get patches to work with HP-UX 8.0 or on 700 series
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1287 machines via e-mail from Darryl Okahata <darrylo@sr.hp.com>.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1288
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1289 36: Where can I get Emacs for my PC?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1290
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1291 ** Demacs
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1292
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1293 For 386 or 486 PCs, there is a version of GNU Emacs called Demacs. To get
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1294 Demacs see question 21.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1295
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1296 From the announcement message:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1297
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1298 Demacs is almost a full set of GNU Emacs but does not support some
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1299 features: asynchronous process, locking a file, etc.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1300
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1301 Demacs provides following DOS specific features:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1302
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1303 * File type: text or binary file translation.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1304 * "8bit clean" display mode.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1305 * 8086 software interrupt call by int86 lisp function.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1306 * Machine specific features such as function key support.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1307 * File name completion with drive name.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1308 * Child process (suspend-emacs, call-process).
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1309 * Enhanced dired mode which can work without 'ls.exe'.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1310
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1311 To our regret `shell-mode' does not work, but `compile' command works
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1312 properly.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1313
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1314 Demacs was developed using an MS-DOS version of gcc called djgpp by D. J.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1315 Delorie <dj@ctron.com> which can compile and run large programs under
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1316 MS-DOS, but not under MS Windows. Demacs was derived from Nemacs rather
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1317 than straight from GNU Emacs.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1318
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1319 There are a variety of other Emacses for MS-DOS including among them the
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1320 following.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1321
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1322 ** Freemacs
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1323
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1324 Russ Nelson <nelson@sun.soe.clarkson.edu>, the author, describes
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1325 Freemacs:
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1326
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1327 * Freemacs is free, and it was designed from the start to be
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1328 programmable.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1329 * Freemacs is the only IBM-PC editor that tries to be like GNU Emacs.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1330 * Freemacs can only edit files less than 64K in length.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1331 * Freemacs doesn't have undo.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1332
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1333 Carl Witty <cwitty@cs.stanford.edu> describes Freemacs:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1334
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1335 Better is Freemacs, which follows the tradition of ITS and GNU Emacs by
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1336 having an full, turing-complete extension language which is incompatible
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1337 with everything else. In fact, it's even closer to ITS Emacs than GNU
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1338 Emacs is, because Mint (Freemacs' extension language) is absolutely
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1339 illegible without weeks of study, much like TECO.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1340
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1341 To get Freemacs see question 21.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1342
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1343 ** MicroEmacs
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1344
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1345 MicroEmacs is a descendant of Microemacs {originally by Dave Conroy?}. It +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1346 is programmable in a BASIC-like language. Many of the keybindings are +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1347 different from GNU Emacs. It is rumored that MicroEmacs can not correctly +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1348 edit files larger than memory. The author is Daniel Lawrence +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1349 <dan@mdbs.uucp, dan@midas.mgmt.purdue.edu, nwd@j.cc.purdue.edu>. The -
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1350 latest version is 3.10 and it is available via anonymous FTP
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1351 (midas.mgmt.purdue.edu (non-working hours only), durer.cme.nist.gov,
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1352 wuarchive.wustl.edu:/mirrors/msdos/memacs/*). Version 3.11 is in beta
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1353 test.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1354
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1355 ** JOVE
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1356
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1357 Another Emacs for small machines is JOVE (Jonathan's Own Version of
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1358 Emacs). The latest official version is 4.14. There appears to be a newer
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1359 version. People rumored to be working on JOVE include Mark Moraes
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1360 <moraes@cs.toronto.edu> and Bill Marsh <bmarsh@cod.nosc.mil>. It is
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1361 available via anonymous FTP (cs.rochester.edu:/pub/jove.tar.4.14.Z,
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1362 cs.toronto.edu:/pub/moraes/jove4.14.3.tar.Z, ftp.uu.net:????). +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1363
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1364 ** MG
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1365
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1366 MG is another descendant of Microemacs. MG used to stand for
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1367 MicroGNUEmacs, but now just stands for MG. The look-and-feel of MG is +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1368 intended to be close to that of GNU Emacs. It is rumored that MG can not +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1369 correctly edit files larger than memory. The current version is rumored +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1370 to be 2. There is a version 3 in beta which works on the Amiga. It is
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1371 also available via anonymous FTP (ftp.white.toronto.edu:pub/mg/*,
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1372 wuarchive.wustl.edu: /mirrors/unix-c/editors/mg*, procyon.cis.ksu.edu
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1373 (source and executable)).
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1374
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1375 37: Where can I get Emacs for my Atari ST?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1376
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1377 Anonymous FTP:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1378 cs.uni-sb.de:/pub/atari/emacs/????????
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1379
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1380 38: Where can I get Emacs for my Amiga?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1381
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1382 All of the files are lharc-ed.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1383
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1384 Anonymous FTP:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1385 oes.orst.edu:/pub/almanac/comp/amiga/software/gnuemacs-1.10/*
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1386
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1387 Via e-mail:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1388 To: almanac@oes.orst.edu:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1389 body:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1390 mode uuencode
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1391 send computer amiga software gnuemacs <file>
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1392 <file> is replaced by one of the following:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1393 Required: d1.lzh d2.lzh
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1394 Recommended: d3_info.lzh d3_infolisp.lzh
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1395 Optional: d3_autoloaded.lzh d3_entertainmentetc.lzh
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1396 d3_entertainmentlisp.lzh d4_src.lzh d5_languagelisp.lzh
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1397 d5_viclone.lzh d6_gnulibsrc.lzh d6_mailpackage.lzh
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1398 d6_mathpackage.lzh d6_misc.lzh d6_textformat.lzh
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1399 The `d#' at the beginning of each file is its disk number, which is
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1400 referred to by the documentation.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1401
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1402 39: Where can I get Emacs for my Apple computer?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1403
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1404 The FSF is a participant in a boycott of Apple because of Apple's "look
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1405 and feel" copyright suits. See the file etc/APPLE for more details.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1406 Because of this boycott, the FSF doesn't include support in GNU software
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1407 for Apple computers such as the Macintosh.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1408
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1409 Please don't help people port or develop software for Apple computers.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1410
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1411 40: Where can I get Emacs with NeWS support?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1412
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1413 Chris Maio's NeWS support package for GNU Emacs is available via
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1414 anonymous FTP (columbia.edu:pub/ps-emacs.tar.Z, -
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1415 archive.cis.ohio-state.edu:pub/gnu/emacs/ps-emacs.tar.Z) and via e-mail !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1416 (body: send NeWS emacs-support, To: archive-server@columbia.edu). +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1417
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1418 41: How do I get Emacs running on VMS under DECwindows?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1419
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1420 Hal R. Brand <BRAND@addvax.llnl.gov> is said to have a VMS save set with a
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1421 ready-to-run VMS version of Emacs 18.55 for X Windows. It is available
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1422 via anonymous FTP (addvax.llnl.gov). It is possible that the VMS versions +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1423 of Emacs at other sites have X support compiled in. See etc/FTP for +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1424 locations. +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1425
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1426 Johan Vromans <jv@mh.nl> writes:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1427
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1428 Getting Emacs to run on VMS with DECwindows requires a number of changes
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1429 to the sources. Fortunately this has been done already. Joshua Marantz
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1430 <josh@viewlogic.com> did most of the work for Emacs 18.52, and the mods
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1431 were ported to 18.55 by Johan Vromans <jv@mh.nl>. Also included is the
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1432 handling of DEC's LK201 keyboard. You need to apply the changes to a
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1433 fresh Emacs 18.55 distribution on a Unix system, and then you can copy
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1434 the sources to VMS to perform the compile/link/build.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1435
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1436 The set of changes have been posted a number of times three times the
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1437 last 12 months, so they should be widely available.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1438
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1439 42: How do I use emacstool under SunView?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1440
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1441 First read the man page for emacstool (etc/emacstool.1). The file !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1442 etc/SUN-SUPPORT includes further information. +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1443
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1444 43: How do I make Emacs display 8-bit characters?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1445
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1446 There is a patch called the `8-bit ctl-arrow patch' that allows Emacs to
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1447 display characters with codes from 128 to 255. {It appears to be by
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1448 Kenneth Cline <cline@proof.ergo.cs.cmu.edu>.}
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1449
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1450 Anonymous FTP:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1451 cs.purdue.edu:pub/ygz/cemacs.tar.Z:cemacs/8bit-patch-18.57
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1452 sics.se:archive/emacs-18.55-8bit-diff (new version not available)
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1453 laas.laas.fr:pub/emacs/patch-8bit-18.5{5,7}
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1454
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1455 Via e-mail: +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1456 To: mail-server@sics.se
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1457 body: send emacs-18.55-8bit-diff
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1458
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1459 Anders Edenbrandt <anderse@dna.lth.se> has produced a more comprehensive
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1460 patch that allows for 8-bit input and output.
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1461
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1462 Anonymous FTP:
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1463 sics.se:archive/emacs-8bit-diff-lth
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1464 gatekeeper.dec.com:pub/GNU/DS-emacs-18.57-8bit-diff-lth
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1465
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1466 The most comprehensive patches for 8-bit output are by Howard Gayle for -
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1467 Emacs 18.55. These patches allow displaying any arbitrary string for a
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1468 given 8-bit character (except TAB and C-j). Also supported is defining +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1469 the sorting order and the uppercase and lowercase translations. It is +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1470 reported that the 8-bit character support in Emacs 19 is largely based on +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1471 these patches. Thomas Bellman <Bellman@lysator.liu.se> has updated these !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1472 patches for Emacs 18.57. !
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1473
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1474 Anonymous FTP:
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1475 sics.se:archive/emacs-gayle.tar.Z (patches for 18.55) +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1476 ftp.lysator.liu.se:pub/emacs/gayle-18.57.diff.tar.Z (patches for 18.57) +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1477 ftp.lysator.liu.se:pub/emacs/emacs-18.57-gayle.tar.Z (patched 18.57) +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1478 +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1479 Nemacs displays 8-bit characters, and it may be useful for displaying the +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1480 8-bit ISO-8859 alphabet, but I don't know for sure. See question 46. +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1481
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1482 44: How do I input 8-bit characters?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1483
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1484 Minor modes for ISO Latin-1 that allow one to easily input this character
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1485 set have been written by several people. Such modes have been written by !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1486 Matthieu Herrb <matthieu@laas.fr> (laas.laas.fr:pub/emacs/iso-latin-1.el), !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1487 Johan Vromans <jv@mh.nl> {FTP site??}, and Marc Shapiro +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1488 <shapiro@sor.inria.fr> {FTP site??}. +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1489
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1490 These approaches differ from the one taken by Anders Edenbrandt in that
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1491 his method uses direct 8-bit input, while these methods use a compose
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1492 sequence for 8-bit characters. {I have heard conflicting reports on
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1493 whether this results in losing the Meta key. Perhaps this depends on
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1494 whether Emacs is running under X. Can someone resolve this?}
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1495
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1496 Karl Heuer <karl@haddock.ima.isc.com> is said to have a patch to allow !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1497 8-bit input.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1498
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1499 45: How do I use an already running Emacs from another window?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1500
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1501 The `emacsclient' program is for editing a file using an already running
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1502 Emacs rather than starting up a new Emacs. It does this by sending a
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1503 request to the already running Emacs, which must be expecting the request. +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1504 +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1505 * Setup +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1506 +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1507 Emacs must have executed the `server-start' function for emacsclient to !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1508 work. This can be done either by a command line option:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1509
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1510 emacs -f server-start
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1511
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1512 or by invoking server-start from the .emacs file:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1513
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1514 (if (some conditions are met) (server-start))
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1515
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1516 When this is done, Emacs starts a subprocess running a program called
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1517 `server'. `server' creates a Unix domain socket in the user's home
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1518 directory named `.emacs_server'.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1519
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1520 To get your news reader, mail reader, etc., to invoke emacsclient, try +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1521 setting the environment variable EDITOR (or sometimes VISUAL) to the +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1522 value `emacsclient'. You may have to specify the full pathname of the +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1523 emacsclient program instead. Examples: +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1524 +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1525 # csh commands: +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1526 setenv EDITOR emacsclient +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1527 setenv EDITOR /usr/local/emacs/etc/emacsclient # using full pathname +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1528 +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1529 # sh command: +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1530 EDITOR=emacsclient export EDITOR +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1531 +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1532 * Normal use +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1533
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1534 When emacsclient is run, it connects to the `.emacs_server' socket and !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1535 passes its command line options to `server'. When `server' receives -
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1536 these requests, it sends this information on the the Emacs process,
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1537 which at the next opportunity will visit the files specified. (Line
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1538 numbers can be specified just like with Emacs.) When the user is done
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1539 editing a file, the user can type "C-x #" to indicate this. This will
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1540 switch to another buffer created at the request of emacsclient if there
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1541 are any. When "C-x #" has been invoked on all of the files that the
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1542 emacsclient requested to be edited, Emacs will send notification of this
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1543 to `server' which will pass this on to the emacsclient, which will then
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1544 exit.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1545
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1546 NOTE: `emacsclient' and `server' must be running on machines which share +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1547 the same filesystem for this to work. The pathnames that emacsclient +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1548 specifies should be correct for the filesystem that the Emacs process +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1549 sees, which is not necessarily the same as the one the emacsclient sees. +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1550 The Emacs process should not be suspended at the time emacsclient is +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1551 invoked. Thus, emacsclient should either be invoked from another X window +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1552 or from a shell window inside Emacs itself. +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1553
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1554 There is an enhanced version of emacsclient/server called `gnuserv' by !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1555 Andy Norman <ange@hplb.hpl.hp.com> which is available in the Emacs Lisp
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1556 Archive. gnuserv uses Internet domain sockets, so it can work across most
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1557 network connections. It also supports the execution of arbitrary Emacs
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1558 Lisp forms, not just the ability to visit files, and also does not require +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1559 the client program to wait for completion. It is available via anonymous +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1560 FTP (Emacs Lisp Archive: packages/gnuserv.shar).
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1561
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1562 46: Where can I get an Emacs that can handle kanji characters? -
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1563
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1564 Nemacs 3.3.2 (Nihongo GNU Emacs) is a modified version of GNU Emacs 18.55
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1565 that handles kanji characters. It is available via anonymous FTP
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1566 (crl.nmsu.edu:pub/misc/nemacs-3.3.2.tar.Z, uhccux.uhcc.hawaii.edu:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1567 editors/Nemacs-3.3.2/*, miki.cs.titech.ac.jp:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1568 JAPAN/nemacs/nemacs-3.3.2.tar.Z). You might also need files for "wnn", a
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1569 kanji input method (wnn-4.0.3{-README,.tar.Z} {on which machine?}). You +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1570 need a terminal (or terminal emulator) that can display text encoded in +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1571 JIS, Shift-JIS, or EUC (Extended Unix Code), or the ability to run Nemacs +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1572 as a direct X Window client. +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1573
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1574 47: Where can I get an Emacs that can handle Chinese?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1575
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1576 `cemacs' by Stephen G. Simpson <simpson@math.psu.edu> is a patch to Emacs
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1577 18.57 (the ctl-arrow patch) and some Emacs Lisp code that combined with
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1578 Cxterm allows using Chinese characters. It is available via anonymous FTP
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1579 (crl.nmsu.edu:pub/chinese/cemacs.tar.Z, cs.purdue.edu:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1580 pub/ygz/cemacs.tar.Z). Cxterm is available from the same place
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1581 (cs.purdue.edu: pub/ygz/cxterm-11.5.1.tar.Z).
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1582
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1583 48: Where is an Emacs that can handle Semitic (right-to-left) alphabets?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1584
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1585 Joel M. Hoffman <joel@wam.umd.edu> writes:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1586
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1587 A couple of years ago a wrote a hebrew.el file that allows right-to-left
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1588 editing of Hebrew. I relied on the hardware to display the Hebrew
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1589 letters, given the right codes, but not for any right-to-left support;
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1590 the hardware also doesn't have to send any specific char. codes. Emacs
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1591 keeps track of when the user is typing Hebrew vs. English. (The VT-*
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1592 terminals in Israel contain built-in support for Hebrew.)
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1593
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1594 To get it to work I had to modify only a few lines of GNU Emacs's source
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1595 code --- just enough to make it 8-bit clean.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1596
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1597 [and in a separate message:]
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1598
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1599 It doesn't produce time-order ["sefer" format] (I wouldn't recommend
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1600 trying that with emacs, because converting time-order to screen-order
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1601 with arbitrarily long lines is a bit tricky), but I also concocted a
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1602 quick filter to convert screen-order into time-order. I'll be happy to
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1603 send you the requisite files if you want them. If you're using it for
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1604 anything large, however, you'll want something that works better.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1605
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1606 Joseph Friedman <yossi@Neon.Stanford.EDU> wrote something for Emacs that
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1607 provides Hebrew support under X Windows.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1608
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1609 Warren Burstein <warren@itex.jct.ac.il> says he has mapped 7-bit keys by
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1610 modifying self-insert-command "for Hebrew input on 7-bit keyboards".
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1611
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1612 A good suggestion is to query archie for files named with "hebrew".
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1613
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1614
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1615
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1616 Binding Keys to Commands
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1617
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1618 49: Why does Emacs say "Key sequence XXX uses invalid prefix characters"?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1619
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1620 Most likely, it failed because the key sequence you were binding started
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1621 with "ESC [" and this sequence was already bound to a command. Evaluate
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1622 this form first:
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1623
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1624 (define-key esc-map "[" nil)
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1625
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1626 NOTE: By default, "ESC [" is bound to backward-paragraph, and if you do !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1627 this you will lose this key binding. For most people, this is not a
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1628 problem.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1629
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1630 50: Why doesn't this [terminal or window-system setup] code work in my
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1631 .emacs file, but it works just fine after Emacs starts up?
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1632
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1633 This is because you're trying to do something in your .emacs file that
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1634 needs to be postponed until after the terminal/window-system setup code
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1635 is loaded. This is a result of the order in which things are done
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1636 during the startup of Emacs. For more details see question 64.
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1637
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1638 In order to postpone the execution of Emacs Lisp code until after the
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1639 terminal/window-system setup, set the value of the variable
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1640 term-setup-hook or window-setup-hook to be a function which does what
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1641 you want.
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1642
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1643 See etc/OPTIONS for a complete explanation of what Emacs does every time
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1644 it is started.
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1645
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1646 Here is a simple example of how to set term-setup-hook:
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1647
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1648 (setq term-setup-hook
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1649 (function
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1650 (lambda ()
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1651 (cond ((string-match "\\`vt220" (or (getenv "TERM") ""))
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1652 ;; Make vt220's "Do" key behave like M-x:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1653 (define-key CSI-map "29~" 'execute-extended-command))
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1654 ))))
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1655
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1656 51: Other than that, why does my key binding fail?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1657
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1658 One possible reason that I've seen many times is improperly specifying
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1659 the character ESC in the key binding string. In an Emacs Lisp string,
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1660 ESC is specified as "\e". (ESC can also be specified as itself, the
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1661 ASCII character with value 27, but this can cause serious problems when
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1662 you try to print/view/mail the file.) Thus, for example, to bind the
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1663 key sequence "ESC O D" to the command 'my-backward-char, the simplest
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1664 incantation is this:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1665
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1666 (global-set-key "\eOD" 'my-backward-char)
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1667
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1668 These are also correct (and represent what the above command actually
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1669 does):
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1670
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1671 (define-key global-map "\eOD" 'my-backward-char)
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1672 (define-key esc-map "OD" 'my-backward-char)
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1673
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1674 The string forms for the keys RET, LFD, DEL, ESC, SPC, and TAB are
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1675 respectively "\r", "\n", "\C-?", "\e", " ", and "\t".
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1676
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1677 52: How do I use function keys under X Windows?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1678
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1679 This depends on whether you are running Emacs inside a terminal emulator
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1680 window, or whether you are allowing Emacs to create its own X window.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1681 You can tell which you are doing by noticing whether Emacs creates a new
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1682 window when you start it.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1683
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1684 If you are running Emacs inside a terminal emulator window, then it
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1685 behaves exactly as it does on any other tty. In this case, for function
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1686 keys to be useful, they must generate character sequences that are sent
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1687 to the programs running inside the window as input. The "xterm" program
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1688 has two different sets of character sequences that it generates when
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1689 function keys are pressed, depending on the sunFunctionKeys X resource
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1690 and the -sf and +sf command line options. (To find out what these key
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1691 sequences are, see question 53.) In addition, with xterm,
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1692 you can override what key sequence a specific function key (or any other
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1693 key) will generate with the "translations" resource. This, for example:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1694
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1695 XTerm.VT100.Translations: #override \
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1696 <KeyPress>F1: string(0x1b) string("[xyzzy")
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1697
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1698 makes the function key F1 generate the character sequence "ESC [xyzzy".
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1699
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1700 On the other hand, if Emacs is managing its own X window, the following
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1701 description applies. Emacs receives `KeyPress' events from the X server
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1702 when a key is pressed while the keyboard focus is in its window. The
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1703 KeyPress event contains an X `keysym' code, which is simply an arbitrary
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1704 number corresponding to the name of the keysym, and information on which
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1705 "modifiers" such as `control' and `shift' are active. For example, the
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1706 `Tab' keysym is 0xff09. (Generally, a key on the keyboard will generate a
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1707 keysym whose name is the same as the label on the key, ie. the `Tab' key
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1708 will normally generate the `Tab' keysym. This can be changed with the
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1709 xmodmap program.) Emacs recognizes all the keysyms that correspond to
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1710 standard ASCII characters and internally uses the ASCII character instead.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1711
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1712 (WARNING: I am about to describe a gross, disgusting hack to you, have
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1713 your barf bag ready.)
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1714
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1715 When Emacs receives the X keysym of one of the arrow keys, it behaves
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1716 the same as if it had received a letter key with the control modifier
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1717 down as follows (this is hard-coded):
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1718
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1719 Up becomes C-p
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1720 Down becomes C-n
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1721 Right becomes C-f
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1722 Left becomes C-b
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1723
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1724 The way Emacs treats other keysyms depends on what kind of machine it was
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1725 compiled on. The type of the display machine is irrelevant! Function +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1726 keys are mapped internally to escape sequences, while other keys are
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1727 completely ignored.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1728
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1729 1. If compiled on a Sun, Emacs recognizes these X keysyms that
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1730 are normally on a Sun keyboard:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1731
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1732 F1 through F9
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1733 L1 through L10 (same as F11 through F20)
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1734 R1 through R15 (same as F21 through F35)
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1735 (The keys labelled R8, R10, R12, and R14 usually are mapped to the !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1736 X keysyms Up, Left, Right, and Down.)
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1737 Break (the "Alternate" key is given this keysym)
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1738
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1739 These keys work like Sun function keys. When Emacs recieves the
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1740 keysym, it will internally use character sequences that look like "ESC
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1741 [ ### z", where ### is replaced by a number. The character sequences
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1742 are identical to those generated by Sun's keyboard under SunView. Any
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1743 function key not listed above generates "ESC [ - 1 z".
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1744
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1745 In order to use these key sequences, they should be bound to commands
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1746 using the standard key binding methods, just as if Emacs were running
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1747 on a regular terminal.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1748
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1749 WARNING: F11 and L1 are the same keysym in X, as are F12 and L2, etc.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1750 {Yes, this is stupid. Complain to the X consortium.}
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1751
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1752 2. If not compiled on a Sun, the function keys will appear to Emacs in a
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1753 way remarkably similar to the keys of a DEC LK201 keyboard (used on
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1754 some VT series terminals). These X keysyms will be recognized:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1755
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1756 F1 through F20
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1757 Help (treated same as F15)
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1758 Menu (treated same as F16, is the LK201 "Do" key)
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1759 Find
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1760 Insert (LK201 "Insert Here" key)
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1761 Select
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1762
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1763 These keysyms are supposed to be recognized, but they are not due to a
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1764 bug (which is fixed in Emacs 18.58): +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1765
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1766 Prior (LK201 "Prev Screen" key)
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1767 Next (LK201 "Next Screen" key)
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1768
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1769 And finally, the LK201 key labelled `Remove' (or `Delete') is often !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1770 mapped to the Delete keysym which generates the DEL character (C-?) !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1771 instead of the key sequence given by the LK201 `Remove' key. It may +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1772 also be mapped to some other keysym, such as `_Remove', in which case +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1773 you can't use it from within Emacs at all. +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1774
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1775 Each function key will be internally converted to a character sequence
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1776 that looks like "ESC [ ## ~", where ## is replaced by a number. The
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1777 character sequences are identical to those generated by a LK201
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1778 keyboard. Any function key not listed above generates "ESC [ - 1 ~".
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1779
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1780 For the complete list of the numbers which are generated by the function
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1781 keys, look in the file src/x11term.c at the definitions of the function
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1782 "stringFuncVal".
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1783
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1784 If you are running Emacs on a Sun machine, even if your X display is
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1785 running on a non-Sun machine (eg., an X terminal), you get the setup
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1786 described above for Suns. The determining factor is what type of
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1787 machine Emacs is running (was compiled) on, not what type of machine
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1788 your X display is on.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1789
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1790 If you have function keys not listed above on your keyboard, you can use +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1791 `xmodmap' to change their keysym assignments to get keys that Emacs will !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1792 recognize, but that may screw up other programs. !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1793
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1794 X resources are not used by Emacs to affect the key sequences generated.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1795 In particular, there are no X key "translations" for Emacs. +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1796
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1797 If you have function keys not listed above and you don't want to use
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1798 xmodmap to change their names, you might want to make a modification to
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1799 your Emacs. Johan Vromans <jv@mh.nl> explains:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1800
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1801 There are a number of tricks that can be helpful. The most elegant
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1802 solution, however, is to use the function "x-rebind-key". This function
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1803 is commented out in the source for good reasons --- it's buggy.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1804
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1805 It is rather easy to replace this function with the function
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1806 epoch:rebind-key from the Epoch distribution.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1807
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1808 After implementing this, all keyboard keys can be configured to send
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1809 user definable sequences, e.g.
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1810
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1811 (x-rebind-key "KP_F1" 0 "\033OP")
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1812
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1813 This will have the keypad key PF1 send the sequence "ESC O P", just like
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1814 an ordinary VT series terminal.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1815
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1816 This is what I do in my Emacs. Note that you need to add an entry to
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1817 syms_of_xfns at the bottom of src/x11fns.c. I can send a patch that has +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1818 the necessary changes, so you don't have to get the Epoch sources. +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1819
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1820 53: How do I tell what characters my function or arrow keys emit? +
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1821
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1822 Use this function by Randal L. Schwartz <merlyn@iwarp.intel.com>:
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1823
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1824 (defun see-chars ()
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1825 "Displays characters typed, terminated by a 3-second timeout."
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1826 (interactive)
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1827 (let ((chars "")
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1828 (inhibit-quit t))
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1829 (message "Enter characters, terminated by 3-second timeout.")
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1830 (while (not (sit-for 3))
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1831 (setq chars (concat chars (list (read-char)))
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1832 quit-flag nil)) ; quit-flag maybe set by C-g
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1833 (message "Characters entered: %s" (key-description chars))))
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1834
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1835 Alternatively, use the "C-h l" view-lossage command, which will display
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1836 the last 100 characters Emacs has seen in its input stream. Kevin +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1837 Gallagher <kgallagh@digi.lonestar.org> suggests typing some unique string +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1838 like "wxyz", typing the key in question, then typing "C-h l". The +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1839 characters that appear between "wxyz" and "C-h l" were generated by the +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1840 key. +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1841
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1842 54: Why does Emacs spontaneously start displaying "I-search:" and beeping?
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1843
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1844 Your terminal (or something between your terminal and the computer) is
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1845 sending C-s and C-q for flow control, and Emacs is receiving these
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1846 characters and interpreting them as commands. (The C-s character normally
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1847 invokes the isearch-forward command.) The best solution is to disable the
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1848 use of C-s and C-q for flow control. If you can't do that, you can make
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1849 Emacs treat C-s and C-q as flow control characters by evaluating this
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1850 form:
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1851
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1852 (set-input-mode nil t)
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1853
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1854 If you are fixing this for yourself, simply put the form in your .emacs
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1855 file. If you are fixing this for your entire site, the best place to put
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1856 it is unclear. I don't know if this has any effect when used in
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1857 lisp/site-init.el when building Emacs; I've never tried that. {Can
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1858 someone tell me whether it works?} Putting things in users' .emacs files
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1859 has a number of problems. Putting this form in lisp/default.el has the
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1860 problem that if the user's .emacs file has an error, this will prevent
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1861 lisp/default.el from being loaded and Emacs may be unusable for the user,
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1862 even for correcting their .emacs file (unless they're smart enough to move
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1863 it to another name).
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1864
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1865 If some of your users are connecting through XON/XOFF flow-controlled
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1866 connections, but some are not, then here is a possible solution. Disable
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1867 C-s and C-q by setting keyboard-translate-table in lisp/site-init.el,
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1868 either with swap-keys (see question 60) or with the following form:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1869
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1870 ;; by Roger Crew <crew@cs.stanford.edu>:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1871 (setq keyboard-translate-table
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1872 "\C-@\C-a\C-b\C-c\C-d\C-e\C-f\C-g\C-h\C-i\C-j\C-k\C-l\C-m\C-n\C-o\C-p\C-^\C-r\C-\\\C-t\C-u\C-v\C-w\C-x\C-y\C-z\C-[\C-s\C-]\C-q\C-_")
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1873
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1874 Then in lisp/default.el, if it is determined to be safe, they can be
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1875 reenabled (being careful not to screw up any other key mappings users
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1876 might have established using keyboard-translate-table, use swap-keys for
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1877 this), or else set-input-mode can be called to further disable C-s and
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1878 C-q.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1879
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1880 For further discussion of this issue, read the file etc/PROBLEMS in the +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1881 Emacs distribution.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1882
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1883 55: How do I disable the use of C-s and C-q for flow control?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1884
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1885 Your terminal may be using C-s and C-q for XON/XOFF flow control. For +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1886 example, VT series terminals do this. On some terminals, it may be +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1887 possible to turn this off from a setup menu. This is also true for some +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1888 terminal emulation programs on PCs. +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1889 +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1890 If you are using a dialup connection, the modems may be using XON/XOFF +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1891 flow control. I don't know how to get around this. Also, some network +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1892 box between the terminal and your computer may be using XON/XOFF flow !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1893 control. You will probably have to ask your local network experts for
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1894 help with this.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1895
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1896 56: What do I do if my terminal is sending C-s and C-q for flow control and
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1897 I can't disable it?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1898
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1899 See question 54.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1900
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1901 57: How do I make Emacs honor C-s and C-q for flow control instead of for
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1902 commands?
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1903
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1904 See question 54.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1905
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1906 58: Why does Emacs never see C-s and C-q through my network connection?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1907
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1908 Eirik Fuller <eirik@theory.tn.cornell.edu> writes:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1909
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1910 Some versions of rlogin (and possibly telnet) do not pass flow control
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1911 characters to the remote system to which they connect. On such systems,
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1912 Emacs on the remote system cannot disable flow control on the local
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1913 system. Sometimes "rlogin -8" will avoid this problem.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1914
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1915 One way to cure this is to disable flow control on the local host (the
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1916 one running rlogin, not the one running rlogind) using the stty command,
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1917 before starting the rlogin process. On many systems, "stty start u stop
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1918 u" will do this.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1919
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1920 Some versions of tcsh will prevent even this from working. One way
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1921 around this is to start another shell before starting rlogin, and issue
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1922 the stty command to disable flow control from that shell.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1923
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1924 59: How do I use commands bound to C-s and C-q (or any key) if these keys
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1925 are filtered out?
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1926
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1927 I suggest swapping C-s with C-\ and C-q with C-^:
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1928
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1929 (swap-keys ?\C-s ?\C-\\)
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1930 (swap-keys ?\C-q ?\C-^)
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1931
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1932 See question 60 for the implementation of swap-keys. This method +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1933 has the advantage that it simultaneously swaps the characters everywhere +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1934 throughout Emacs, while just switching the keybindings will miss important +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1935 places where the character codes are stored (eg., the search-repeat-char +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1936 variable, major mode keymaps, etc.). +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1937 +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1938 WARNING: If you do this for an entire site, the users will be confused by +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1939 the disparity between what the documentation says and how Emacs actually +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1940 behaves. +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1941
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1942 60: How do I "swap" two keys?
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1943
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1944 When Emacs receives a character, you can make Emacs behave as though it
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1945 received another character by setting the value of
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1946 keyboard-translate-table. The following Emacs Lisp will do this for you,
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1947 allowing you to "swap" keys. After arranging for this Lisp to be
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1948 evaluated by Emacs, you can evaluate `(swap-keys ?A ?B)' to swap A and B.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1949 The function `show-mapped-keys' will allow you to see what low-level key +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1950 mappings are in effect. +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1951
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1952 WARNING: the value of C-g (7) is still hard coded in one place in the
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1953 minibuffer code. Thus, swapping C-g with another key may cause a minor
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1954 problem. (Fixed in Emacs 18.58.)
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1955
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1956 (defun swap-keys (key1 key2)
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1957 "Swap keys KEY1 and KEY2 using map-key."
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1958 (map-key key1 key2)
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1959 (map-key key2 key1))
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1960
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1961 (defun map-key (from to)
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1962 "Make key FROM behave as though key TO was typed instead."
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1963 (setq keyboard-translate-table
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1964 (concat keyboard-translate-table
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1965 (let* ((i (length keyboard-translate-table))
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1966 (j from)
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1967 (k i)
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1968 (str (make-string (max 0 (- j (1- i))) ?X)))
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1969 (while (<= k j)
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1970 (aset str (- k i) k)
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1971 (setq k (1+ k)))
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1972 str)))
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1973 (aset keyboard-translate-table from to)
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1974 (let ((i (1- (length keyboard-translate-table))))
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1975 (while (and (>= i 0) (eq (aref keyboard-translate-table i) i))
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1976 (setq i (1- i)))
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1977 (setq keyboard-translate-table
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1978 (if (eq i -1)
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1979 nil
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1980 (substring keyboard-translate-table 0 (1+ i))))))
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1981
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1982 (defun show-mapped-keys () +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1983 "Analyze keyboard-translate-table and display mapped keys." +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1984 (interactive) +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1985 (let (mapping-alist +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1986 (l (length keyboard-translate-table)) +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1987 (i 0) +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1988 e pair) +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1989 (while (< i l) +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1990 (setq e (aref keyboard-translate-table i)) +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1991 (or (eq i e) +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1992 (setq mapping-alist (cons (cons i e) mapping-alist))) +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1993 (setq i (1+ i))) +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1994 (cond (mapping-alist +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1995 (princ "Mapped Keys: ") +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1996 (setq mapping-alist (nreverse mapping-alist))) +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1997 (t +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1998 (princ "No keys mapped"))) +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
1999 (while mapping-alist +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2000 (setq pair (car mapping-alist) +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2001 i (car pair) +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2002 e (cdr pair)) +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2003 (princ (single-key-description i)) +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2004 (cond ((eq i (cdr (setq pair (assq e mapping-alist)))) +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2005 (setq mapping-alist (delq pair mapping-alist)) +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2006 (princ " <=> ")) +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2007 (t +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2008 (princ " => "))) +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2009 (princ (single-key-description e)) +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2010 (setq mapping-alist (cdr mapping-alist)) +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2011 (if mapping-alist (princ ", "))))) +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2012
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2013 NOTE: You must evaluate the definition of swap-keys before calling it!
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2014 The easiest way is to list it first in the file (eg., your .emacs file).
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2015
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2016 61: Why does the "BackSpace" key invoke help?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2017
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2018 The BackSpace key (on every keyboard I've used) generates ASCII code 8. !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2019 C-h sends the same code. In Emacs by default C-h invokes `help-command'.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2020 This is intended to be easy to remember since the first letter of `help'
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2021 is `h'. The easiest solution to this problem is to use C-h (and
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2022 BackSpace) for help and DEL (the Delete key) for deleting the previous
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2023 character.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2024
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2025 For many people this solution may be problematic:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2026
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2027 * They normally use BackSpace outside of Emacs for deleting the previous !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2028 character typed. This can be solved by making DEL be the command for
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2029 deleting the previous character outside of Emacs. This command will do
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2030 this on many Unix systems:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2031
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2032 stty erase '^?'
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2033
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2034 * The person may prefer using the BackSpace key for deleting the previous !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2035 character because it is more conveniently located on their keyboard or
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2036 because they don't even have a separate Delete key. In this case, the
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2037 BackSpace key should be made to behave like Delete. There are several !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2038 methods. !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2039 !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2040 * Under X Windows, the easiest solution is to change the BackSpace key !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2041 into a Delete key like this: !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2042 !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2043 xmodmap -e "keysym BackSpace = Delete" !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2044 !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2045 * Some terminals (eg., VT3## terminals) allow the character generated by !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2046 the BackSpace key to be changed from a setup menu. !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2047 !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2048 * You may be able to get a keyboard that is completely programmable. !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2049 !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2050 * Under X or on a dumb terminal, it is possible to swap the BackSpace and !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2051 Delete keys inside Emacs: +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2052
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2053 (swap-keys ?\C-h ?\C-?)
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2054
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2055 See question 60 for the implementation of swap-keys.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2056
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2057 * Another approach is to switch keybindings and put help on "C-x h" !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2058 instead:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2059
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2060 (global-set-key "\C-h" 'delete-backward-char)
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2061 (global-set-key "\C-xh" 'help-command) ; override mark-whole-buffer
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2062
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2063 Other popular key bindings for help are M-? and "C-x ?". +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2064
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2065 WARNING: This method fails to correctly bind BackSpace in the various !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2066 major and minor modes that define their own backward character !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2067 deletion or help commands, such as C mode and Lisp mode. To actually
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2068 do that for every mode is a lot of work. There are probably other +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2069 places where the correspondence between help and C-h is hardcoded. +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2070
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2071 62: How do I type DEL on PC terminal emulators?
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2072
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2073 Someone whose name I forgot wrote:
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2074
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2075 Most PCs have deficient keyboards that don't have both BackSpace and
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2076 Delete keys. Whether C-h (BackSpace) or DEL is generated by the
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2077 BackSpace key varies from one terminal emulator to another. If you're !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2078 lucky, you can reconfigure the keyboard so that it generates DEL. If
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2079 not, you will have to hunt to figure out what keystroke will do it ---
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2080 possibilities include various shifted and controlled versions of
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2081 BackSpace, the `Del' key on the numeric keypad (which might depend on !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2082 Shift or NumLock), or perhaps C-? (Control-?). !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2083
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2084 If this is too hard, you may want to swap the Delete key with some other
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2085 key. See question 61.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2086
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2087 63: Can I make my "Compose" key behave like a "Meta" key?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2088
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2089 On a dumb terminal such as a VT220, no. It is rumored that certain VT220
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2090 clones could have their Compose key configured this way. If you're on an
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2091 X workstation, you might have luck using the "xmodmap" program.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2092
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2093 64: Why don't the arrow keys work?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2094
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2095 When Emacs starts up, it doesn't know anything about arrow keys at all
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2096 (except when running under X, see question 52). During the
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2097 process of starting up, Emacs will load a terminal-specific initialization
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2098 file for your terminal type (as determined by the environment variable
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2099 TERM), if one exists. This file has the responsibility for enabling the
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2100 arrow keys.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2101
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2102 There are several things that can go wrong:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2103
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2104 1. There is no initialization file for your terminal.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2105
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2106 You can determine this by looking in the lisp/term directory. If your
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2107 terminal type (as determined by the TERM environment variable) is
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2108 xxx-yy-z, then the first of these files in the lisp/term directory will
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2109 be loaded as the terminal-specific initialization file: xxx-yy-z.el,
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2110 xxx-yy.el, or xxx.el.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2111
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2112 If there is none there, one can be made for your terminal, or you can
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2113 just add code to your own .emacs to handle this problem for yourself.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2114 For example, if your terminal's arrow keys send these character
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2115 sequences:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2116
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2117 Up: ESC [ A
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2118 Down: ESC [ B
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2119 Right: ESC [ C
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2120 Left: ESC [ D
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2121
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2122 then you can bind these keys to the appropriate commands with code in
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2123 your .emacs like this:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2124
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2125 (setq term-setup-hook
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2126 (function
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2127 (lambda ()
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2128 (cond ((string-match "\\`xyzzy" (or (getenv "TERM") ""))
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2129 ;; First, must unmap the binding for M-[
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2130 (or (keymapp (lookup-key global-map "\e["))
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2131 (define-key global-map "\e[" nil))
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2132 ;; Enable terminal type xyzzy's arrow keys:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2133 (define-key global-map "\e[A" 'previous-line)
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2134 (define-key global-map "\e[B" 'next-line)
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2135 (define-key global-map "\e[C" 'forward-char)
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2136 (define-key global-map "\e[D" 'backward-char))
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2137 ((string-match "\\`abcde" (or (getenv "TERM") ""))
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2138 ;; Do something different for terminal type abcde
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2139 ;; .....
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2140 ))))))
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2141
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2142 This technique allows you to easily add more `cond' cases for different
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2143 terminal types.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2144
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2145 NOTE: You will have to restart Emacs to get this change to take effect
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2146 when using this technique.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2147
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2148 NOTE: Your arrow keys may send sequences beginning with "ESC O" when +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2149 Emacs is running, even if they send sequences beginning with "ESC [" at +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2150 all other times. This is because Emacs uses any command there may be +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2151 in your terminal's termcap entry for putting the terminal into +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2152 `Application Keypad Mode'. Just map these sequences the same way as +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2153 above. +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2154
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2155 The next two cases are problems even if there is a initialization file for
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2156 your terminal type.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2157
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2158 2. Your terminal's arrow keys send individual control characters.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2159
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2160 For example, the arrow keys on an ADM-3 send C-h, C-j, C-k, and C-l. +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2161
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2162 There is not much Emacs can do in this situation, since all the control
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2163 characters except for C-^ and C-\ are already used as Emacs commands.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2164 It may be possible to convince the terminal to send something else when +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2165 you press the arrow keys; it is worth investigating. +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2166
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2167 You have to make the hard choices of how to rebind keys to commands to
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2168 make things work the way you want. Another alternative is to start +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2169 learning the standard Emacs keybindings for moving point around: C-b, +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2170 C-f, C-p, and C-n. Personally, I no longer use the arrow keys when +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2171 editing. +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2172
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2173 3. Your terminal's arrow keys send sequences beginning with "ESC [".
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2174
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2175 Due to an extremely poor design decision (ie., these sequences are ANSI
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2176 standard), none of the the terminal-specific initialization files that
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2177 are distributed with Emacs will bind these character sequences to the
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2178 appropriate commands by default. (This also applies to any other
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2179 function keys which generate character sequences starting with "ESC
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2180 [".) This is because it was deemed far more important to preserve the
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2181 binding of M-[ to the backward-paragraph command. It appears that this
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2182 will change in Emacs 19.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2183
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2184 Some of the terminal-specific initialization files that come with Emacs
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2185 provide a command `enable-arrow-keys' that will fix this problem. To
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2186 get this automatically invoked, put this in your .emacs:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2187
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2188 (setq term-setup-hook
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2189 (function
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2190 (lambda ()
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2191 (if (fboundp 'enable-arrow-keys) (enable-arrow-keys)))))
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2192
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2193 We put this in our lisp/default.el file, so users don't have to worry
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2194 about it:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2195
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2196 ;; don't override a user's term-setup-hook
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2197 (or term-setup-hook
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2198 (setq term-setup-hook
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2199 (function
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2200 (lambda ()
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2201 (and (fboundp 'enable-arrow-keys)
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2202 ;; don't override a user key mapping
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2203 (eq 'backward-paragraph (lookup-key esc-map "["))
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2204 (enable-arrow-keys))))))
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2205
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2206 If your terminal type is `sun', you should put this in your .emacs
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2207 instead (or in addition to the above):
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2208
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2209 (setq sun-esc-bracket t)
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2210
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2211 If your terminal type is `xterm', you will have to bind the arrow keys
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2212 as in part 1 above, since the xterm.el file doesn't do anything useful.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2213
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2214 It is possible that the terminal-specific initialization file for your
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2215 terminal type was written locally and does not follow the rule
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2216 mentioned above. In this case you may need to inspect it to find out
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2217 how to enable the arrow keys. (Actually, if it was written locally, it
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2218 probably enables the arrow keys by default.)
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2219
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2220 65: How do I bind a combination of modifier key and function key?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2221
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2222 Unless you're using Emacs under emacstool (or xvetool?) or you have a
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2223 working version of x-rebind-key (see question 52), you can't do this
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2224 with Emacs alone. When using emacstool, Emacs sees different character
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2225 sequences for the combination of a modifier and a function key from what
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2226 it sees for the function key alone. See etc/emacstool.1 for more
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2227 information. Since Emacs sees different character sequences, you can bind
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2228 these different sequences to different commands.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2229
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2230 If you are running Emacs inside a terminal emulator window like xterm, you
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2231 can modify its translation tables to make it generate different character
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2232 sequences for the combination of a modifier and a function key. For
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2233 example, this X resource setting:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2234
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2235 XTerm.VT100.Translations: #override \
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2236 Shift<KeyPress>F1: string(0x1b) string("[xyzzy")
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2237
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2238 makes Shift-F1 generate the character sequence "ESC [ xyzzy". You can
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2239 bind these character sequences in Emacs as normal.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2240
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2241 66: Why doesn't my Meta key work in an xterm window?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2242
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2243 Try all of these methods before asking for further help:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2244
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2245 * If you are using `olwm' as your window manager, switch to another window +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2246 manager. :-) {Seriously though, does anyone know a good generic +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2247 solution to allow the use of the Meta key with Emacs under olwm?} +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2248 +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2249 * For X11R4: Make sure it really is a Meta key. Use "xev" to find out +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2250 what keysym your Meta key generates. It should be either Meta_L or
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2251 Meta_R. If it isn't, use xmodmap to fix the situation.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2252
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2253 * Make sure the pty the xterm is using is passing 8 bit characters.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2254 "stty -a" (or "stty everything") should show "cs8" somewhere. If it
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2255 shows "cs7" instead, use "stty cs8 -istrip" (or "stty pass8") to fix
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2256 it.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2257
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2258 * If there is an rlogin connection between the xterm and the Emacs, the
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2259 "-8" argument may need to be given to rlogin to make it pass all 8
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2260 bits of every character.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2261
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2262 * If the Emacs is running under Ultrix, it is reported that evaluating !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2263 (set-input-mode t nil) helps. +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2264
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2265 * If all else fails, you can make xterm generate "ESC W" when you type
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2266 M-W, which is the same conversion Emacs would make if it got the M-W
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2267 anyway. In X11R4, the following resource specification will do this:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2268
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2269 XTerm.VT100.EightBitInput: false
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2270
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2271 (This changes the behavior of the insert-eight-bit action.)
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2272
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2273 With older xterms, you can specify this behavior with a translation:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2274
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2275 XTerm.VT100.Translations: #override \
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2276 Meta<KeyPress>: string(0x1b) insert()
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2277
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2278 You might have to replace "Meta" with "Alt".
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2279
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2280 67: Why doesn't my ExtendChar key work as a Meta key under HP-UX 8.0?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2281
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2282 This is a result of an internationalization extension in X11R4 and the
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2283 fact that HP is now using this extension. Emacs assumes that
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2284 XLookupString returns the same result regardless of the Meta key state
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2285 which is no longer necessarily true. Until Emacs is fixed, the temporary
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2286 kludge is to run this command after each time the X server is started but
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2287 preferably before any xterm clients are:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2288
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2289 xmodmap -e 'remove mod1 = Mode_switch'
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2290
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2291 NOTE: This will disable the use of the extra keysyms systemwide, which
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2292 may be undesirable if you actually intend to use them.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2293
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2294 68: Where can I get key bindings to make Emacs emulate WordStar?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2295
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2296 Look for the package `wordstar' in the Emacs Lisp Archive (see question
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2297 18).
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2298
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2299
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2300
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2301 Building/Installing/Porting Emacs and Machine/OS-Specific Bugs -
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2302
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2303 69: Why does Emacs crash with "Fatal error (6).Abort" under SunOS 4.1?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2304
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2305 I had hoped this question would go away after Emacs 18.57 was released,
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2306 but people continue to compile 18.55.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2307
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2308 There is a bug in the "localtime" routine supplied with SunOS 4.1. A
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2309 private function called by tzsetwall zeroes the byte just past an eight
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2310 byte region it mallocs. This corrupts GNU malloc's memory pool. When GNU
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2311 malloc detects this it aborts.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2312
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2313 In the 18.57 release "#define SYSTEM_MALLOC" was added to the !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2314 configuration file for SunOS 4.1, which allowed Emacs to work. However, !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2315 Sun's realloc behaves horribly when alternated with malloc, so your +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2316 process size can balloon rapidly in certain situations quickly using up +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2317 all available memory. Thus, you may prefer the approach taken by Emacs +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2318 18.58, which has a different fix that makes GNU's malloc always allocate +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2319 at least 16 bytes. +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2320 +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2321 Eirik Fuller <eirik@theory.tn.cornell.edu> supplies most of the following +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2322 information: +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2323
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2324 In SunOS 4.1.1, it appears that Sun has still not fixed their bug, since
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2325 the localtime.o file did not change. They must be aware of it since they
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2326 suggest using "#define SYSTEM_MALLOC" to compile Emacs in their
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2327 documentation. It is reported that this same bug causes mysterious
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2328 behavior in Sun's /usr/etc/rpc.mountd.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2329
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2330 For people who want to fix this problem for real, there is a fixed version
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2331 of the localtime.o file available via anonymous FTP (titan.rice.edu:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2332 incoming/localtime.tar.Z). {Someone has reported that this file is now
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2333 missing.} The new localtime.o file should be installed in the
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2334 /usr/lib/libc{.a,.so.*} files. Read the `ar' man page and the README file
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2335 in /usr/lib/shlib.etc for instructions. -
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2336
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2337 Now stop asking this question! :-) :-)
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2338
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2339 70: Why do I get an "f68881_used undefined" error, when I build Emacs on my
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2340 Sun 3?
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2341
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2342 Barry A. Warsaw <warsaw@cme.nist.gov> writes:
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2343
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2344 Some of the code that is being linked on the "ld" line of emacs' build
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2345 command has been compiled with the -f68881 option. Most common reason
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2346 is that you're linking with X libraries which were built with -f68881
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2347 option set. You need to either remove all dependencies to the 68881
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2348 (may mean a recompile of the X libraries with -fswitch or -fsoft
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2349 option), or you need to link emacs with the 68881 startup file
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2350 /usr/lib/Mcrt1.o. Make this change to src/ymakefile:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2351
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2352 change: #define START_FILES crt0.o
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2353 to: #define START_FILES crt0.o /usr/lib/Mcrt1.o
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2354
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2355 The order of these start files is critical.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2356
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2357 71: Why does Emacs ignore my X resources (my .Xdefaults file)?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2358
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2359 * Try compiling Emacs with the XBACKWARDS macro defined. There is a bug
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2360 in some implementations of XGetDefault, which do not correspond to the
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2361 documentation or the header files.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2362
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2363 * Make sure you are either using the class name of `Emacs' or the correct
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2364 instance name. The instance name is normally the same as the name of
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2365 the file Emacs is in (ie., the last part of argv[0]), but this can be
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2366 overridden by -rn command line option or the WM_RES_NAME environment
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2367 variable.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2368
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2369 WARNING: The advice the man page gives to use `emacs' is often wrong.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2370
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2371 WARNING: Older versions of Emacs got the class name wrong.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2372
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2373 * Emacs currently ignores the -xrm command line argument. !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2374
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2375 * Emacs does not yet handle X11R5 screen-specific resources.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2376
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2377 * Emacs has a bug where it ignores color specifications if running on a
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2378 1-bit display (ie. a non-color display).
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2379
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2380 72: How do I get Emacs to compile with all features under OpenWindows?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2381
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2382 Problems fixed in 18.58: the reference to include file <X11/X10.h>, !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2383 linking with the OpenWindows libX11.a. !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2384
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2385 If libX11.a is missing, you may need to use `add_services' to add the +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2386 `OpenWindows Programmers' optional software category from the CD-ROM. To +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2387 get the Xmenu stuff to work, you need to find a copy of MIT's liboldX.a.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2388
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2389 Questions for the net {please send me answers!}:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2390
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2391 * Are compiled versions of liboldX.A for Sun 4s running SunOS 4.*
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2392 available for FTP anywhere?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2393 * What is the solution to the "not a sun window" problem with xvetool? -
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2394
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2395 73: How do I build Emacs under HP-UX 8.0?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2396
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2397 Problems fixed in 18.58: missing errnet.h, "Cannot do arithmetic with !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2398 pointers to objects of unknown size" (void *), not finding -lX11, unexec !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2399 making a bad dumped emacs due to shared libraries ("Fatal Error(11)- !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2400 Segmentation Fault", I think). !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2401 !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2402 If libX11.a is missing, you may need to run `update' again to load the !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2403 X11-PRG "fileset". This may be missing even if you specified "all !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2404 filesets" the first time. !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2405
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2406 74: What should I do if I have trouble building Emacs?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2407
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2408 First look in the file etc/PROBLEMS to see if there is already a solution
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2409 for your problem. Next check the FAQ (you're reading it). If you don't
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2410 find a solution, then report your problem via e-mail to
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2411 bug-gnu-emacs@prep.ai.mit.edu. Please do not post it to gnu.emacs.help or
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2412 e-mail it to help-gnu-emacs@prep.ai.mit.edu. For further guidelines, see +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2413 question 23. +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2414
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2415
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2416
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2417 Weird/Confusing Problems -
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2418
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2419 75: Does Emacs have problems with files larger than 8 megabytes?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2420
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2421 Most installed versions of GNU Emacs will use 24-bit signed integers (and +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2422 24-bit pointers) internally. This limits the file size that Emacs can !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2423 handle to 8,388,607 bytes (2^23 - 1). !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2424
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2425 Leonard N. Zubkoff <lnz@lucid.com> suggests putting the following two !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2426 lines in src/config.h before compiling Emacs to allow for 26-bit integers !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2427 and pointers (and thus filesizes of up to 33,554,431 bytes): +
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2428
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2429 #define VALBITS 26
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2430 #define GCTYPEBITS 5
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2431
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2432 WARNING: This method may result in `ILLEGAL DATATYPE' errors on some +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2433 machines. +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2434
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2435 David Gillespie <daveg@csvax.cs.caltech.edu> gives an explanation of why
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2436 Emacs uses 24 bit integers and pointers:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2437
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2438 Emacs is largely written in a dialect of Lisp; Lisp is a freely-typed
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2439 language in the sense that you can put any value of any type into any
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2440 variable, or return it from a function, and so on. So each value must
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2441 carry a "tag" along with it identifying what kind of thing it is, e.g.,
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2442 integer, pointer to a list, pointer to an editing buffer, and so on.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2443 Emacs uses standard 32-bit integers for data objects, taking the top 8
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2444 bits for the tag and the bottom 24 bits for the value. So integers (and
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2445 pointers) are somewhat restricted compared to true C integers and
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2446 pointers.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2447
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2448 Emacs uses 8-bit tags because that's a little faster on byte-oriented
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2449 machines, but there are only really enough tags to require 6 bits. -
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2450
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2451 76: Why does Emacs start up using the wrong directory?
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2452
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2453 Most likely, you have an environment variable named PWD that is set to a
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2454 value other than the name of your current directory. This is most
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2455 likely caused by using two different shell programs. "ksh" and (some
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2456 versions of) "csh" set and maintain the value of the PWD environment
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2457 variable, but "sh" doesn't. If you start sh from ksh, change your
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2458 current directory inside sh, and then start Emacs from inside sh, PWD
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2459 will have the wrong value but Emacs will use this value. See the
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2460 etc/OPTIONS file for more details.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2461
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2462 Perhaps an easier solution is not to use two shells. The "chsh" program
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2463 can often be used to change one's default login shell.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2464
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2465 77: How do I edit a file with a "$" in its name?
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2466
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2467 When entering a filename in the minibuffer, Emacs will attempt to expand
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2468 a "$" followed by a word as an environment variable. To suppress this
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2469 behavior, type "$$" instead.
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2470
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2471 78: Why does Shell mode lose track of the shell's current directory?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2472
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2473 Emacs has no way of knowing when the shell actually changes its directory.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2474 This is an intrinsic limitation of Unix. So it tries to guess by
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2475 recognizing "cd" commands. If you type "cd" followed by a directory name
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2476 with a variable reference ("cd $HOME/bin") or with a shell metacharacter
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2477 ("cd ../lib*"), Emacs will fail to correctly guess the shell's new current
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2478 directory. A huge variety of fixes and enhancements to Shell mode for !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2479 this problem have been written to handle this problem. Check the Lisp
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2480 Code Directory (see question 17).
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2481
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2482 79: Why doesn't Emacs expand my aliases when sending mail?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2483
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2484 * You must separate multiple addresses in the headers of the mail buffer +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2485 with commas. This is because Emacs supports RFC822 standard addresses
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2486 like this one:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2487
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2488 To: Willy Smith <wks@xpnsv.lwyrs.com> +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2489
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2490 However, you do not need to separate addresses with commas in your +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2491 .mailrc file. +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2492 +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2493 WARNING: Emacs breaks up aliases in the .mailrc file into multiple +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2494 addresses both on commas and on whitespace, regardless of any use of +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2495 quotes. This is probably a bug. You can get around this by directly +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2496 setting the value of mail-aliases. +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2497
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2498 * Emacs normally only reads the ".mailrc" file once per session, when you
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2499 start to compose your first mail message. If you edit .mailrc, you can
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2500 type "M-ESC (build-mail-aliases) RET" to make Emacs reread .mailrc.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2501 (You have to include the parentheses where they are shown!)
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2502
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2503 * Emacs does not interpret vendor-specific additions to the format of the
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2504 .mailrc file such as the `source' command. It also ignores any `set' +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2505 commands. The only commands it looks at are `alias' and `group' +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2506 commands. +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2507
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2508 80: Why doesn't my change to load-path work?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2509
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2510 If you added a directory name containing a tilde (~) to your load-path,
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2511 expecting the tilde to be interpreted as your home directory, then you
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2512 need to do something like this:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2513
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2514 (setq load-path (mapcar 'expand-file-name load-path))
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2515
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2516 81: Why does the cursor always go to the wrong column when I move up or
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2517 down one line?
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2518
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2519 You have inadvertently typed "C-x C-n" (set-goal-column) which sets the
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2520 "goal-column" to the column where the cursor was. To undo this type
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2521 "C-u C-x C-n".
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2522
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2523 If you make this mistake frequently, you might want to unbind or disable
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2524 this command by doing one of these two:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2525
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2526 (define-key ctl-x-map "\C-n" nil)
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2527 (put 'set-goal-column 'disabled t)
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2528
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2529 82: Why does Emacs hang with message "Unknown XMenu error" with X11R4? +
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2530
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2531 Many different X errors can produce this message. Here is the solution
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2532 to one problem:
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2533
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2534 X11 Release 4 (and later, including OpenWindows) enforces some conditions !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2535 in the X protocol that were previously allowed to pass unnoticed. You
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2536 need to put the X11R4 server into X11R3 bug compatibility mode for Emacs's
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2537 Xmenu code to work. You can do this with the command "xset bc".
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2538
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2539 83: Why doesn't display-time show the load average in the mode line
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2540 anymore?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2541
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2542 In GNU Emacs 18.56, a change was made in the display-time code.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2543 Formerly, in version 18.55, Emacs used a program named "loadst" to
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2544 notify Emacs of the change in time every minute. loadst also sent Emacs
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2545 the system load average if it was installed with sufficient privilege to
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2546 get that information (or was on a system where no such privilege was
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2547 needed). Emacs then displayed this information in the mode line.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2548
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2549 In version 18.56, this code was changed to use a program named "wakeup".
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2550 wakeup doesn't send Emacs any information, it's only purpose is to send
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2551 Emacs *something* every minute, thus invoking the filter function in
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2552 Emacs once a minute. The filter function in Emacs does all the work of
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2553 finding the time, date, and load average. However, getting the load
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2554 average requires the privilege to read kernel memory on most systems.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2555 Since giving Emacs this privilege would destroy any security a system
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2556 might have, for almost everyone this is not an option. In addition,
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2557 Emacs does not have the code built into it to get this information on
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2558 the systems which have special system calls for this purpose, even
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2559 though loadst had code for this.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2560
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2561 The solution I use is to get the files lisp/display-time.el and
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2562 etc/loadst.c from version 18.55 and use those with 18.58. (I have heard !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2563 a rumor that loadst disappeared because of the legal action Unipress
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2564 threatened against IBM.)
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2565
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2566 WARNING: Do not install Emacs setgid kmem unless you wish to destroy
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2567 any security your system might have!!!!!!!!!!
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2568
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2569 If you are using Emacs 18.55 or earlier, or already using the solution I
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2570 describe above, read further:
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2571
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2572 The most likely cause of the problem is that "loadst" can't read the
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2573 special file /dev/kmem. To properly install loadst, it should be either
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2574 setuid to the owner of /dev/kmem, or is should be setgid to the group to
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2575 which /dev/kmem belongs. In either case, /dev/kmem should be readable by
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2576 its owner or its group, respectively.
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2577
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2578 Another possibility is that your version of Unix doesn't have the load
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2579 average data available in /dev/kmem. Your version of Unix might have a
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2580 special system call to retrieve this information (eg., inq_stats under
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2581 UMAX), and loadst might not have been enhanced to cope with this.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2582
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2583 84: Why doesn't GNUS work anymore via NNTP?
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2584
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2585 There is a bug in NNTP version 1.5.10, such that when multiple requests
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2586 are sent to the NNTP server, the server only handles the first one before
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2587 blocking waiting for more input which never comes. NNTP version 1.5.11
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2588 claims to fix this.
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2589
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2590 You can work around the bug inside Emacs like this:
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2591
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2592 (setq nntp-maximum-request 1)
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2593
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2594 I also have a patch for NNTP 1.5.10 by Mike Pelletier
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2595 <stealth@engin.umich.edu> that is based on the timeout code that was in
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2596 1.5.9. However, please try to upgrade to 1.5.11 first.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2598 You can find out what version of NNTP your news server is running by
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2599 telnetting to the NNTP port (usually 119) on the news server machine (ie.,
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2600 `telnet server-machine 119'). The server should give its version number
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2601 in the welcome message. Type `quit' to get out.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2602
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2603 85: Why does ispell sometimes ignore the local dictionary?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2604
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2605 You need to update the version of ispell to 2.0.02. (Or you can switch to
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2606 version 3.0 which is still in beta-testing.) A patch is available via
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2607 anonymous FTP (archive.cis.ohio-state.edu: /pub/gnu/ispell/patch2.Z).
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2608
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2609 You also need to change a line in ispell.el from:
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2610
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2611 (defconst ispell-version "2.0.01") ; Check against output of "ispell -v".
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2612
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2613 to:
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2614
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2615 (defconst ispell-version "2.0.02") ; Check against output of "ispell -v".
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2616
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2617 86: How do I get rid of the ^M junk in my Shell buffer?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2618
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2619 For tcsh, put this in your ".cshrc" (or ".tcshrc") file:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2620
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2621 if ($?EMACS) then
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2622 if ("$EMACS" == t) then
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2623 if ($?tcsh) unset edit
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2624 stty nl
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2625 endif
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2626 endif
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2627
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2628 Or put this in your .emacs_tcsh file:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2629
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2630 unset edit
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2631 stty nl
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2632
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2633 Alternatively, use csh in your Shell buffers instead of tcsh. One way
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2634 is:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2635
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2636 (setq explicit-shell-file-name "/bin/csh")
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2637
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2638 and another is to do this in your .cshrc (or .tcshrc) file:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2639
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2640 setenv ESHELL /bin/csh
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2641
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2642 (You must start Emacs over again with the environment variable properly
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2643 set for this to take effect.)
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2644
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2645 87: Are there any security risks in GNU Emacs?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2646
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2647 1. the `movemail' incident (No, this is not a risk.)
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2648
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2649 Cliff Stoll in his book "The Cuckoo's Egg" describes this in chapter 4.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2650 The site at LBL had installed the `etc/movemail' program setuid root.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2651 Since `movemail' had not been designed for this situation, a security
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2652 hole was created and users could get root priveleges.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2653
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2654 `movemail' has since been changed so that even if it is installed
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2655 setuid root this security hole will not be a result.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2656
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2657 I have heard reports that the Internet worm took advantage of this
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2658 configuration problem.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2659
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2660 2. the file-local-variable feature (Yes, a risk, but easy to change.)
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2661
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2662 There is an Emacs feature that allows the setting of local values for
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2663 variables when editing a file by including specially formatted text
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2664 near the end of the file. This feature also includes the ability to
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2665 have arbitrary Emacs Lisp code evaluated when the file is visited.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2666 Obviously, there is a potential for Trojan horses to exploit this
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2667 feature.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2668
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2669 However, if you set the variable inhibit-local-variables to a non-nil
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2670 value, Emacs will display the special local variable settings of a file
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2671 that you visit and ask you if you really want them. It is reasonable
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2672 to do this in lisp/site-init.el before building Emacs:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2673
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2674 (setq inhibit-local-variables t)
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2675
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2676 If Emacs has already been built, the expression can be put in
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2677 lisp/default.el instead, or an individual can put it in their own
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2678 .emacs file.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2679
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2680 The ability to exploit this feature by sending e-mail to an RMAIL user
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2681 was fixed sometime after Emacs 18.52. However, any new package that
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2682 uses find-file or find-file-noselect has to be careful about this.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2683
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2684 88: How do I recover my mail files after RMAIL munges their format?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2685
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2686 Users who just want to try RMAIL out to see how it works end up trapped
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2687 using it because saved mail in their `mbox' file has been converted into !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2688 an incompatible format (BABYL) that only RMAIL understands. RMAIL
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2689 provides no obvious way to reverse this transformation. To convert a mail
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2690 file back to standard Unix format, there are several methods:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2691
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2692 * Use the rmail-output ("C-o") command within RMAIL on each message in the
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2693 file. First use M-x rmail or M-x rmail-input to visit the RMAIL file in
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2694 Rmail mode. Type "1 j" to go to the first message. Use the C-o command
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2695 to output the message to a Unix format file. Type "n" to go to the next
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2696 message. Repeat.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2697
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2698 * If the file contains hundreds of messages, you may not want to repeat
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2699 this for all of them. Instead of the above, after getting to the first
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2700 message type this (where "mbox" is the file you want to put the messages
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2701 in):
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2702
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2703 C-x ( C-o mbox RET M-s ^From: RET M-0 C-x )
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2704
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2705 (The rmail-search command ("M-s") is used instead of just "n" because it
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2706 is the only command which will cause an error when it reaches the last
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2707 message in the file, which is necessary to terminate the keyboard macro.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2708 This will fail if there are messages in the file that don't have a
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2709 `From:' header. This assumes rmail-delete-after-output is nil.)
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2710
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2711 It is wise to save a copy of the RMAIL file first, in case you make a
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2712 mistake.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2713
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2714 * There are software packages available for converting files or even
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2715 entire directories of BABYL files to standard Unix format. These are
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2716 helpful in this situation, but are intended mainly for people who have
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2717 used RMAIL for a long time and are converting to some other mail reader.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2718 Lookup `rmail', `vm', and `babyl' in the Emacs Lisp Archive (see
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2719 question 18).
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2720
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2721 You may wish to disable RMAIL to avoid accidentally destroying your mbox
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2722 file (I have this in my .emacs):
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2723
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2724 (put 'rmail 'disabled t) ; avoid mbox destruction
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2725
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2726 89: Why do I get "Process shell exited abnormally with code 1"?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2727
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2728 The most likely reason for this message is that the "env" program is not
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2729 properly installed. This program should be compiled and installed with
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2730 execute permission for everyone in Emacs's program directory, which is
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2731 normally /usr/local/emacs/etc. You can find what this directory is at
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2732 your site by inspecting the value of the variable exec-directory by typing
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2733 "C-h v exec-directory RET".
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2734
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2735 See also etc/PROBLEMS for other possible causes of this message. +
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2736
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2737
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2738
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2739 Configuring Emacs for Yourself -
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2740
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2741 90: How do I set up a .emacs file properly?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2742
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2743 See the section of the manual on the .emacs file, inside the section on
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2744 customization. To reach this section of the online Info manual, type
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2745 this:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2746
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2747 C-h i m emacs RET g init SPC file RET
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2748
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2749 WARNING: In general, new Emacs users should not have .emacs files,
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2750 because it causes confusing non-standard behavior. Then they send
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2751 questions to help-gnu-emacs asking why Emacs isn't behaving as
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2752 documented. :-)
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2753
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2754 91: How do you debug a .emacs file?
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2755
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2756 First start Emacs with the "-q" command line option. Then, in the
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2757 *scratch* buffer, type the following:
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2758
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2759 (setq debug-on-error t) LFD
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2760 (load-file "~/.emacs") LFD
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2761
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2762 (Type LFD by pressing C-j.)
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2763
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2764 If you have an error in your .emacs file, this will invoke the debugger
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2765 when the error occurs. If you don't know how to use the debugger do
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2766 (setq stack-trace-on-error t) instead.
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2767
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2768 WARNING: this will not discover errors caused by trying to do something
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2769 that requires the terminal/window-system initialization code to have
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2770 been loaded. See question 50.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2771
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2772 92: How do I turn on abbrevs by default just in mode XXX?
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2773
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2774 Put this in your .emacs file:
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2775
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2776 (condition-case ()
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2777 (read-abbrev-file nil t)
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2778 (file-error nil))
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2779
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2780 (setq XXX-mode-hook
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2781 (function
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2782 (lambda ()
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2783 (setq abbrev-mode t))))
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2784
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2785 93: How do I turn on Auto-Fill mode by default?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2786
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2787 To turn on Auto-Fill mode just once for one buffer, you type "M-x
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2788 auto-fill-mode". To turn it on for every buffer in, for example, Text
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2789 mode, do this:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2790
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2791 (setq text-mode-hook 'turn-on-auto-fill)
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2792
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2793 If you want Auto-Fill mode on in all major modes, do this:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2794
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2795 (setq-default auto-fill-hook 'do-auto-fill)
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2796
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2797 94: How do I make Emacs use a certain major mode for certain files?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2798
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2799 If you want to use XXX mode for all files which end with the extension
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2800 ".YYY", this will do it for you:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2801
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2802 (setq auto-mode-alist (cons '("\\.YYY\\'" . XXX-mode) auto-mode-alist))
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2803
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2804 Otherwise put this somewhere in the first line of any file you want to
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2805 edit in XXX mode:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2806
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2807 -*-XXX-*-
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2808
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2809 95: What are the valid X resource settings (ie., stuff in .Xdefaults file)?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2810
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2811 See the Emacs man page, or the etc/OPTIONS file. Ignore the information
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2812 in etc/XDOC which is way out of date.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2813
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2814 96: How do I stop Emacs from beeping on a terminal?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2815
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2816 Martin R. Frank <martin@cc.gatech.edu> writes:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2817
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2818 Tell Emacs to use the 'visible bell' instead of the audible bell, and
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2819 set the visible bell to nothing.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2820
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2821 Put this in your TERMCAP environment variable:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2822
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2823 ... :vb=: ...
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2824
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2825 And evaluate this:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2826
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2827 (setq visible-bell t)
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2828
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2829 97: How do I turn down the bell volume in Emacs running under X Windows?
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2830
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2831 Under Epoch you can do:
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2832
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2833 (setq epoch::bell-volume 20)
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2834
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2835 Under normal GNU Emacs you must modify the XTfeep function in
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2836 src/x11term.c. This simplest fix is to change the number 50 to -50 in the !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2837 call the XBell. Then "xset b 0" will turn off Emacs's beeping. !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2838
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2839 Explanation: After "xset b BASE": +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2840
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2841 XBell (disp, VAL) beeps with volume BASE - (BASE*VAL)/100 + VAL,
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2842 XBell (disp, -VAL) beeps with volume BASE - (BASE*VAL)/100.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2843
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2844 Stu Grossman <grossman@sunburn.stanford.edu> wrote a patch that allows the +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2845 bell volume to be adjusted from inside Emacs. +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2846
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2847 98: How do I change load-path?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2848
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2849 In general, you should only *add* to the load-path. You can add
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2850 directory /XXX/YYY to the load path like this:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2851
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2852 (setq load-path (append load-path '("/XXX/YYY/")))
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2853
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2854 To do this relative to your home directory:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2855
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2856 (setq load-path (append load-path (list (expand-file-name "~/YYY/"))))
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2857
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2858 99: How do I change the included text prefix in mail/news followups?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2859
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2860 Many people want Emacs to prefix included text with something like " > " !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2861 instead of with three spaces. One way is to change the code of the !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2862 function `mail-yank-original' in lisp/sendmail.el that prefixes with !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2863 spaces. A more flexible solution is to use SuperCite, which provides wide !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2864 configurability in how you format included text in replies. See question
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2865 21. Both of these solutions work for Rmail and GNUS. !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2866 !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2867 A related problem is how to prevent Emacs from including various headers !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2868 of the replied-to message. For this, you should set the value of !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2869 mail-yank-ignored-headers, which takes a regexp value. !
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2870
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2871
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2872
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2873 Emacs Lisp Programming -
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2874
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2875 100: What dialect of Lisp is Emacs Lisp?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2876
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2877 Quite simply, it is the dialect of Lisp called GNU Emacs Lisp. People !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2878 also call it elisp or e-lisp. (NOTE: The term "Elisp" is trademarked by
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2879 someone else. {I believe it is by Uniworks Inc., the sellers of CCA !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2880 Emacs.}) !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2881
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2882 101: How close is Emacs Lisp to Common Lisp?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2883
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2884 They are not close. GNU Emacs Lisp is case-sensitive, uses dynamic
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2885 scoping, doesn't have packages, doesn't have multiple return values,
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2886 doesn't have reader macros, doesn't have rational, floating point, or
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2887 arbitrary size numbers, etc. For people used to Common Lisp, some of the
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2888 functions in Common Lisp that are not in Emacs Lisp by default are
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2889 provided in the file lisp/cl.el. There is a Texinfo manual describing
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2890 these functions in man/cl.texinfo.
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2891
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2892 102: How do I execute a piece of Emacs Lisp code?
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2893
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2894 There are a number of ways to execute (called "evaluate") an Emacs Lisp
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2895 "form":
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2896
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2897 * If you want it evaluated every time you run Emacs, put it in a file
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2898 named ".emacs" in your home directory.
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2899
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2900 * You can type the form in the "*scratch*" buffer, and then type LFD (or
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2901 C-j) after it. The result of evaluating the form will be inserted in
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2902 the buffer.
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2903
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2904 * In in Emacs-Lisp mode, typing M-C-x evaluates a top-level form before
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2905 or around point.
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2906
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2907 * Typing "C-x C-e" in any buffer evaluates the Lisp form immediately
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2908 before point and prints its value in the echo area.
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2909
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2910 * Typing M-ESC or M-x eval-expression allows you to type a Lisp form in
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2911 the minibuffer which will be evaluated.
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2912
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2913 * You can use M-x load-file to have Emacs evaluate all the Lisp forms in
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2914 a file. (To do this from Lisp use the function "load" instead.)
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2915
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2916 These functions are also used for evaluating Lisp forms:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2917
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2918 load-library, eval-region, eval-current-buffer, require, autoload
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2919
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2920 103: How do I make a set of operations work only within a region? !
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2921
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2922 Use narrow-to-region inside of save-restriction.
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2923
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2924 104: How can I highlight text in Emacs?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2925
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2926 There are ways to get highlighting (reverse video) in GNU Emacs 18.58, but !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2927 either they require patching the C code of Emacs and rebuilding, or they
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2928 are slow and the highlighting disappears if you scroll or redraw the
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2929 screen and it can not follow the point. Howard Gayle's patches for 8-bit !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2930 output appear to allow highlighting (see question 43). Another !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2931 patch for highlighting is by Kenichi Handa <handa@etl.go.jp>. There is a !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2932 patch for use with X by Andy Norman <ange@hplb.hpl.hp.com> (and modified +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2933 for 18.57 by Matthieu Herrb <matthieu@laas.fr>), which is available for +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2934 FTP (laas.laas.fr:pub/emacs/patch-X11-18.5{5,7}). +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2935
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2936 You can highlight regions in a variety of ways in Epoch. GNU Emacs 19
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2937 will have everything you need, but won't be out soon.
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2938
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2939 Similar comments apply to displaying text in different fonts, except that +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2940 it is even harder. +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2941
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2942 105: How do I change Emacs's idea of the tab character's length?
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2943
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2944 Example: (setq default-tab-width 10).
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2945
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2946
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2947
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2948 Carrying Out Common Tasks -
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2949
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2950 106: How do I insert ">"'s in the beginning of every line in a buffer?
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2951
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2952 Type "M-x replace-regexp RET ^ RET > RET". ("replace-regexp" can be
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2953 shortened to "repl TAB r".)
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2954
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2955 To do this only in the region, type "C-x n M-x replace-regexp RET ^ RET
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2956 > RET C-x w". -
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2957
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2958 WARNING: The command narrow-to-region (C-x n) is disabled by default
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2959 because it can be very confusing (ie., "Oh no! Where did my file go?").
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2960
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2961 107: How do I insert "_^H" characters before each character in a paragraph
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2962 to get an underlined paragraph?
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2963
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2964 M-x underline-region.
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2965
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2966 108: How do I repeat a command as many times as possible?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2967
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2968 Use "C-x (" and "C-x )" to make a keyboard macro that invokes the command
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2969 and then type "M-0 C-x e".
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2970
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2971 WARNING: any messages your command prints in the echo area will be
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2972 suppressed.
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2973
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2974 109: How do I search for or delete unprintable (8-bit or control)
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2975 characters?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2976
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2977 To search for a single character that appears in the buffer as, for
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2978 example, \237, you can type "C-s C-q 2 3 7". (This assumes the value of
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2979 search-quote-char is 17 (C-q).)
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2980
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2981 Searching for ALL unprintable characters is best done with a "regexp"
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2982 search. The easiest regexp to use for the unprintable chars is the
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2983 complement of the regexp for the printable chars.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2984
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2985 Regexp for the printable chars: [\t\n\r\f -~]
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2986
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2987 Regexp for the unprintable chars: [^\t\n\r\f -~]
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2988
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2989 To type some of these special characters (\t, \n, \r, \f) as an
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2990 interactive argument to isearch-forward-regexp or re-search-forward, you
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2991 need to use C-q.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2992
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2993 So, to search for unprintable characters using re-search-forward:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2994
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2995 M-x re-search-forward RET [^ TAB C-q LFD C-q RET C-q C-l SPC -~] RET
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2996
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2997 Using isearch-forward-regexp:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2998
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
2999 M-C-s [^ TAB RET C-q RET C-q C-l SPC -~]
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3000
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3001 To delete all unprintable characters, simply use a replace-regexp:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3002
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3003 M-x replace-regexp RET [^ TAB C-q LFD C-q RET C-q C-l SPC -~] RET RET
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3004
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3005 Notes:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3006
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3007 * With isearch, you can type RET to get a quoted LFD (not a quoted RET).
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3008
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3009 * You don't need to quote TAB with either isearch or typing something in
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3010 the minibuffer.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3011
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3012 Here are the Emacs Lisp forms of the above regexps:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3013
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3014 ;; regexp matching all printable characters:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3015 "[\t\n\r\f -~]"
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3016
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3017 ;; regexp matching all unprintable characters:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3018 "[^\t\n\r\f -~]"
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3019
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3020 ;; alternative regexps for all unprintable characters:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3021 "[\C-@-\C-h\C-k\C-n-\C-_\C-?-\377]"
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3022 "[\000-\010\013\016-\037\177-\377]"
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3023
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3024 (To use "[\000-\010\013\016-\037\177-\377]" interactively, type:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3025
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3026 [ C-q 000 - C-q 010 C-q 013 C-q 016 - C-q 037 C-q 177 - C-q 377 ]
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3027
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3028 )
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3029
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3030 110: How do I control Emacs's case-sensitivity when searching/replacing? +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3031
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3032 For searching, the value of the variable case-fold-search determines
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3033 whether they are case sensitive:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3034
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3035 (setq case-fold-search nil) ; make searches case sensitive
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3036 (setq case-fold-search t) ; make searches case insensitive
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3037
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3038 Similarly, for replacing the variable case-replace determines whether
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3039 replacements preserve case.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3040
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3041 To change the case sensitivity just for one major mode, use the major +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3042 mode's hook. For example: +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3043 +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3044 (setq XXX-mode-hook +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3045 (function +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3046 (lambda () +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3047 (setq case-fold-search nil)))) +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3048
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3049 111: How do I tell Emacs to automatically indent a new line to the
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
3050 indentation of the previous line?
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
3051
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3052 One solution is the major mode Indented Text Mode (M-x indented-tex-mode).
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3053
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3054 If you have Auto-Fill mode on (a minor mode, see question 93),
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3055 you can tell Emacs to prefix every line with a certain character
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3056 sequence, the "fill prefix". Type the prefix at the beginning of a
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3057 line, position point after it, and then type "C-x ." (set-fill-prefix)
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3058 to set the fill prefix. Thereafter, auto-filling will automatically put
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3059 the fill prefix at the beginning of new lines, and M-q (fill-paragraph)
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3060 will maintain any fill prefix when refilling the paragraph.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3061
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3062 NOTE: If you have paragraphs with different levels of indentation, you
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3063 will have to set the fill prefix to the correct value each time you move
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3064 to a new paragraph. To avoid this hassle, try one of the many packages
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3065 available from the Emacs Lisp Archive. Look up "fill" and "indent" in the
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3066 Lisp Code Directory for guidance.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3067
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3068 112: How do I make Emacs "typeover" or "overwrite" instead of inserting? -
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3069
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3070 M-x overwrite-mode (a minor mode).
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3071
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3072 113: How do I show which parenthesis matches the one I'm looking at?
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
3073
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
3074 If you're looking at a right parenthesis (or brace or bracket) you can
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3075 delete it and reinsert it. Emacs will blink the cursor on the matching
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3076 parenthesis.
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
3077
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
3078 M-C-f (forward-sexp) and M-C-b (backward-sexp) will skip over balanced
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
3079 parentheses, so you can see which parentheses match. (You can train it
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
3080 to skip over balanced brackets and braces at the same time by modifying
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
3081 the syntax table.)
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
3082
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
3083 Here is some Emacs Lisp that will make the % key show the matching
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
3084 parenthese, like in vi. In addition, if the cursor isn't over a
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
3085 parenthese, it simply inserts a % like normal.
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
3086
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3087 ;; By an unknown contributor !
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
3088
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
3089 (global-set-key "%" 'match-paren)
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
3090
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
3091 (defun match-paren (arg)
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
3092 "Go to the matching parenthesis if on parenthesis otherwise insert %."
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
3093 (interactive "p")
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3094 (cond ((looking-at "\\s\(") (forward-list 1) (backward-char 1))
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3095 ((looking-at "\\s\)") (forward-char 1) (backward-list 1))
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
3096 (t (self-insert-command (or arg 1)))))
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
3097
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3098 114: How do I make Emacs behave like this: when I go up or down, the cursor
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
3099 should stay in the same column even if the line is too short?
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
3100
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
3101 M-x picture-mode. (This is a minor mode, in theory anyway ...)
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
3102
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3103 115: How do I read news under Emacs?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3104
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3105 There are at least three news reading packages that operate inside Emacs.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3106 "rnews" comes with Emacs. "GNUS" and "Gnews" come separately. rnews will
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3107 be replaced by GNUS in Emacs 19.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3108
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3109 rnews works only with a local news spool directory. Both GNUS and Gnews
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3110 handle reading news remotely via NNTP in addition to reading from a local
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3111 news spool. GNUS supports reading mail stored in MH folders or articles
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3112 saved by GNUS.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3113
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3114 Gnews is styled after `rn' and seems to work like Rmail. GNUS feels more
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3115 like VM. People have complained that GNUS uses a lot of CPU time (it
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3116 does). Some people have complained that Gnews is slower than GNUS.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3117
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3118 For more information about GNUS, see question 21.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3119
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3120 Gnews was written by Matthew P. Wiener <weemba@libra.wistar.upenn.edu>.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3121 The latest version seems to be 2.0, posted October 3, 1988. Matthew
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3122 posted some fixes on October 26, 1988. Gnews does not appear to have been
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3123 supported after this date. In particular, it has been reported that Gnews
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3124 does not work with Emacs 18.57. There is a newsgroup for Gnews called
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
3125 gnu.emacs.gnews.
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
3126
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3127 116: In C mode, can I show just the lines that will be left after #ifdef
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
3128 commands are handled by the compiler?
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
3129
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
3130 M-x hide-ifdef-mode. (This is a minor mode.)
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
3131
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
3132 You may have to (load "hideif") first. If you want to do this
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
3133 regularly, put this in your .emacs file:
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
3134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
3135 (autoload 'hide-ifdef-mode "hideif" nil t)
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
3136
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3137 {Yes, I know, this should be in lisp/loaddefs.el already.}
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3138
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3139 117: Is there an equivalent to the "." (dot) command of vi?
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
3140
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
3141 ("." is the redo command in vi. It redoes the last insertion/deletion.)
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
3142
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
3143 No, not really.
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
3144
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
3145 You can type "C-x ESC" (repeat-complex-command) to reinvoke commands
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
3146 that used the minibuffer to get arguments. In repeat-complex-command
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
3147 you can type M-p and M-n to scan through all the different complex
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
3148 commands you've typed.
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
3149
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
3150 To repeat something on each line I recommend using keyboard macros.
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
3151
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3152 118: How do I make Emacs display the current line (or column) number? !
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
3153
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
3154 To find out what line of the buffer you are on right now, do "M-x
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3155 what-line". Use "M-x goto-line" to go to a specific line. To find the +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3156 current column number, type "M-ESC (current-column)". +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3157
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3158 Typing "C-x l" will also tell you what line you are on, provided the
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3159 buffer isn't separated into "pages" with C-l characters. In that case, it
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3160 will only tell you what line of the current "page" you are on. WARNING:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3161 "C-x l" gives the wrong value when point is at the beginning of a line.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3162
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3163 There is no "correct" way to constantly display the current line (or !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3164 column) number on the mode line in Emacs 18, or to display the line +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3165 numbers next to the lines. Emacs is not a line-oriented editor, and +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3166 really has no idea what "lines" of the buffer are displayed in the window. +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3167 It would require a lot of work at the C code level to make Emacs keep +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3168 track of this. It would not be that hard to get the column number, but it +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3169 would still require changes at the C code level. +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3170 +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3171 vi emulation mode does not emulate this capability of vi (as far as I +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3172 know). +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3173 +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3174 Emacs 19 will probably be able to show the line number on the mode-line, +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3175 but probably very inefficiently. +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3176 +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3177 People have written various kludges to display line numbers. Look in the +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3178 Lisp Code Directory. (See question 17.)
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3179
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3180 119: How do I tell Emacs to iconify itself?
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
3181
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
3182 You need to modify C source and recompile. Either that or get Epoch
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3183 instead. For the interested I have a patch by Robert Forsman
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3184 <thoth@reef.cis.ufl.edu> to allow Emacs to iconify itself and a patch by
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3185 Matt Wette <mwette@mr-ed.jpl.nasa.gov> to allow Emacs to start up
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3186 iconified. I don't know whether these two patches work together.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3187
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3188 {Are either of these two patches available via anonymous FTP anywhere?}
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3189
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3190 120: How do I use regexps (regular expressions) in Emacs?
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
3191
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
3192 This is documented in the Emacs manual. To read the manual section
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
3193 online, type "C-h i m emacs RET m regexps RET".
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
3194
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3195 WARNING: The `or' operator is `\|', not `|', and the grouping operators
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3196 are `\(' and `\)'. Also, the string syntax for a backslash is "\\".
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3197 Thus, the string syntax for a regular expression like xxx\(foo\|bar\) is
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3198 "xxx\\(foo\\|bar\\)". Notice the duplicated backslashes!
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3199
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
3200 WARNING: Unlike in Unix grep, sed, etc., a complement character set
597
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3201 ([^...]) can match a newline character (LFD aka C-j aka \n), unless
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3202 newline is mentioned as one of the characters not to match.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3203
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3204 WARNING: The character syntax regexps (eg. `\sw') are not meaningful +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3205 inside character set regexps (eg. `[aeiou]'). (This is typical for regexp +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3206 syntax.) +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3207
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3208 121: How do I perform a replace operation across more than one file?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3209
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3210 The "tags" feature of Emacs includes the command tags-query-replace
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3211 which performs a query-replace across all the files mentioned in the
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3212 TAGS file. To read the relevant online manual section, type "C-h i m
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3213 emacs RET m tags RET m tags search RET".
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3214
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3215 In addition, Martin Boyer has written a package named global-replace
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3216 which will perform a query-replace across all the files mentioned in the
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3217 *compilation* buffer (usually done after a "grep"), which is available
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3218 via anonymous FTP (ireq-robot.hydro.qc.ca:
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3219 /pub/emacs/lisp/{compile,global-replace,query}.el.Z).
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3220
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3221 122: How do I make Emacs wrap words for me?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3222
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3223 M-x auto-fill-mode. The default maximum line width is 74, determined by
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3224 the variable fill-column. To find how to turn this on automatically see
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3225 question 93.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3226
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3227 123: Where can I get a better spelling checker for Emacs?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3228
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3229 Use Ispell. See question 21.
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3230
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3231 124: How can I spell-check TeX or *roff documents?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3232
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3233 If you want to spell-check TeX or *roff documents with Ispell, you need to !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3234 arrange for a filter program that understands how to strip TeX or *roff !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3235 formatting commands to be run. In the TeX distribution, there are several !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3236 different programs named `detex', all with incompatible options, and a !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3237 very old pair of programs named `detex' and `delatex', which should !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3238 probably be avoided. The most useful one for Ispell is `detex' by Daniel !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3239 Trinkle. A more recent version is available via FTP +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3240 (arthur.cs.purdue.edu: pub/trinkle/detex-2.3.tar.Z). Raphael Cerf !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3241 <cerf@clipper.ens.fr> recently released a program named `xetal' !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3242 (spi.ens.fr:pub/unix/tex/???). There is a program that comes with Unix !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3243 named `deroff' for stripping formatting commands from *roff files. !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3244 !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3245 Here is an example of code you can put in a .emacs file to use these !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3246 programs: !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3247 !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3248 ;; Based on suggestions by David G. Grubbs <dgg@ksr.com> and Paul Palmer !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3249 ;; <palmerp@math.orst.edu>. !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3250 !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3251 ;; Assuming the use of detex 2.3 by Daniel Trinkle: !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3252 ;; -w means one word per line. !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3253 ;; -n means don't expand \input or \include commands. !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3254 ;; -l means force LaTeX mode. !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3255 !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3256 (require 'ispell) ; for the make-variable-buffer-local statements !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3257 (setq plain-TeX-mode-hook !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3258 (function !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3259 (lambda () !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3260 (setq ispell-filter-hook "detex") +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3261 (setq ispell-filter-hook-args '("-nw"))))) !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3262 (setq LaTeX-mode-hook !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3263 (function
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3264 (lambda ()
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3265 (setq ispell-filter-hook "detex") !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3266 (setq ispell-filter-hook-args '("-lnw"))))) !
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3267 (setq nroff-mode-hook
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3268 (function
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3269 (lambda ()
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3270 (setq ispell-filter-hook "deroff")
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3271 (setq ispell-filter-hook-args '("-w"))))) +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3272 +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3273 You will have to adjust the arguments for programs other than Trinkle's +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3274 detex or for other versions of deroff. Experiment running the command +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3275 from the shell to find the correct options. If you don't have a filter +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3276 that knows how to output one word per line, you must pipe its output +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3277 through another filter to break up the output. +
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3278
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3279 125: How can I make Emacs automatically scroll horizontally?
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3280
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3281 Sorry, you can't. The best you can do is rewrite a large number of
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3282 commands and make them check if the point is still on the screen after
434e13b1fc95 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 134
diff changeset
3283 they are done. {Has someone done this already?}
134
93491679e7e9 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
3284