aboutsummaryrefslogtreecommitdiffstats
path: root/lisp
diff options
context:
space:
mode:
authorKaroly Lorentey2007-04-22 12:12:29 +0000
committerKaroly Lorentey2007-04-22 12:12:29 +0000
commite18c709364b095ea0be8ecabe458ac9a642a252f (patch)
treeefe814a842f932f387b3947c572bf43a548d17ef /lisp
parent81088e260b086fe28f36964f32b6338210ec6fd8 (diff)
parent9f25e707aaad5ed14a9448e9c5d345ff0bdbc5a7 (diff)
downloademacs-e18c709364b095ea0be8ecabe458ac9a642a252f.tar.gz
emacs-e18c709364b095ea0be8ecabe458ac9a642a252f.zip
Merged from emacs@sv.gnu.org
Patches applied: * emacs@sv.gnu.org/emacs--devo--0--patch-660 Update from CVS * emacs@sv.gnu.org/emacs--devo--0--patch-661 Merge from gnus--rel--5.10 * emacs@sv.gnu.org/emacs--devo--0--patch-662 Update from CVS * emacs@sv.gnu.org/emacs--devo--0--patch-663 Update from CVS * emacs@sv.gnu.org/emacs--devo--0--patch-664 Update from CVS * emacs@sv.gnu.org/emacs--devo--0--patch-665 Update from CVS * emacs@sv.gnu.org/emacs--devo--0--patch-666 Fix read-only prompt problem in isearch * emacs@sv.gnu.org/emacs--devo--0--patch-667 Update from CVS * emacs@sv.gnu.org/emacs--devo--0--patch-668 Update from CVS * emacs@sv.gnu.org/emacs--devo--0--patch-669 Merge from gnus--rel--5.10 * emacs@sv.gnu.org/emacs--devo--0--patch-670 Update from CVS * emacs@sv.gnu.org/emacs--devo--0--patch-671 Update from CVS * emacs@sv.gnu.org/emacs--devo--0--patch-672 Update from CVS * emacs@sv.gnu.org/emacs--devo--0--patch-673 Update from CVS * emacs@sv.gnu.org/gnus--rel--5.10--patch-206 Merge from emacs--devo--0 * emacs@sv.gnu.org/gnus--rel--5.10--patch-207 Merge from emacs--devo--0 * emacs@sv.gnu.org/gnus--rel--5.10--patch-208 Update from CVS git-archimport-id: lorentey@elte.hu--2004/emacs--multi-tty--0--patch-600
Diffstat (limited to 'lisp')
-rw-r--r--lisp/ChangeLog561
-rw-r--r--lisp/ChangeLog.1023
-rw-r--r--lisp/ChangeLog.1142
-rw-r--r--lisp/ChangeLog.32
-rw-r--r--lisp/ChangeLog.46
-rw-r--r--lisp/ChangeLog.56
-rw-r--r--lisp/ChangeLog.710
-rw-r--r--lisp/ChangeLog.82
-rw-r--r--lisp/Makefile.in6
-rw-r--r--lisp/abbrev.el2
-rw-r--r--lisp/autorevert.el1
-rw-r--r--lisp/calc/calc-aent.el26
-rw-r--r--lisp/calc/calc-alg.el26
-rw-r--r--lisp/calc/calc-arith.el26
-rw-r--r--lisp/calc/calc-bin.el26
-rw-r--r--lisp/calc/calc-comb.el26
-rw-r--r--lisp/calc/calc-cplx.el26
-rw-r--r--lisp/calc/calc-embed.el26
-rw-r--r--lisp/calc/calc-ext.el26
-rw-r--r--lisp/calc/calc-fin.el26
-rw-r--r--lisp/calc/calc-forms.el81
-rw-r--r--lisp/calc/calc-frac.el26
-rw-r--r--lisp/calc/calc-funcs.el26
-rw-r--r--lisp/calc/calc-graph.el26
-rw-r--r--lisp/calc/calc-help.el26
-rw-r--r--lisp/calc/calc-incom.el26
-rw-r--r--lisp/calc/calc-keypd.el26
-rw-r--r--lisp/calc/calc-lang.el26
-rw-r--r--lisp/calc/calc-macs.el26
-rw-r--r--lisp/calc/calc-map.el26
-rw-r--r--lisp/calc/calc-math.el26
-rw-r--r--lisp/calc/calc-misc.el26
-rw-r--r--lisp/calc/calc-mode.el26
-rw-r--r--lisp/calc/calc-mtx.el26
-rw-r--r--lisp/calc/calc-poly.el26
-rw-r--r--lisp/calc/calc-prog.el26
-rw-r--r--lisp/calc/calc-rewr.el26
-rw-r--r--lisp/calc/calc-rules.el26
-rw-r--r--lisp/calc/calc-sel.el26
-rw-r--r--lisp/calc/calc-stat.el26
-rw-r--r--lisp/calc/calc-store.el26
-rw-r--r--lisp/calc/calc-stuff.el26
-rw-r--r--lisp/calc/calc-trail.el26
-rw-r--r--lisp/calc/calc-undo.el26
-rw-r--r--lisp/calc/calc-units.el26
-rw-r--r--lisp/calc/calc-vec.el26
-rw-r--r--lisp/calc/calc-yank.el26
-rw-r--r--lisp/calc/calc.el26
-rw-r--r--lisp/calc/calcalg2.el26
-rw-r--r--lisp/calc/calcalg3.el26
-rw-r--r--lisp/calc/calccomp.el26
-rw-r--r--lisp/calc/calcsel2.el24
-rw-r--r--lisp/calendar/cal-china.el22
-rw-r--r--lisp/calendar/cal-dst.el70
-rw-r--r--lisp/calendar/calendar.el10
-rw-r--r--lisp/calendar/diary-lib.el42
-rw-r--r--lisp/calendar/icalendar.el50
-rw-r--r--lisp/calendar/lunar.el2
-rw-r--r--lisp/calendar/solar.el2
-rw-r--r--lisp/comint.el36
-rw-r--r--lisp/complete.el58
-rw-r--r--lisp/cus-edit.el8
-rw-r--r--lisp/diff-mode.el14
-rw-r--r--lisp/emacs-lisp/authors.el2
-rw-r--r--lisp/emacs-lisp/bytecomp.el6
-rw-r--r--lisp/emacs-lisp/edebug.el11
-rw-r--r--lisp/emacs-lisp/lisp-mode.el59
-rw-r--r--lisp/emacs-lisp/re-builder.el11
-rw-r--r--lisp/eshell/esh-mode.el9
-rw-r--r--lisp/faces.el14
-rw-r--r--lisp/files.el43
-rw-r--r--lisp/font-lock.el2
-rw-r--r--lisp/gnus/ChangeLog6
-rw-r--r--lisp/gnus/ChangeLog.270
-rw-r--r--lisp/icomplete.el6
-rw-r--r--lisp/ido.el1
-rw-r--r--lisp/international/characters.el8
-rw-r--r--lisp/international/isearch-x.el9
-rw-r--r--lisp/international/mule.el2
-rw-r--r--lisp/international/quail.el9
-rw-r--r--lisp/isearch.el5
-rw-r--r--lisp/isearchb.el2
-rw-r--r--lisp/jit-lock.el4
-rw-r--r--lisp/ldefs-boot.el134
-rw-r--r--lisp/mail/emacsbug.el6
-rw-r--r--lisp/mouse.el18
-rw-r--r--lisp/net/ange-ftp.el2
-rw-r--r--lisp/net/rcirc.el94
-rw-r--r--lisp/net/tls.el6
-rw-r--r--lisp/net/tramp-smb.el4
-rw-r--r--lisp/net/tramp.el16
-rw-r--r--lisp/pcomplete.el14
-rw-r--r--lisp/progmodes/cc-engine.el100
-rw-r--r--lisp/progmodes/cc-mode.el142
-rw-r--r--lisp/progmodes/compile.el12
-rw-r--r--lisp/progmodes/cperl-mode.el4
-rw-r--r--lisp/progmodes/grep.el3
-rw-r--r--lisp/progmodes/gud.el5
-rw-r--r--lisp/progmodes/hideshow.el14
-rw-r--r--lisp/progmodes/idlw-help.el8
-rw-r--r--lisp/progmodes/python.el16
-rw-r--r--lisp/ps-print.el76
-rw-r--r--lisp/replace.el12
-rw-r--r--lisp/server.el10
-rw-r--r--lisp/ses.el2
-rw-r--r--lisp/shell.el2
-rw-r--r--lisp/simple.el50
-rw-r--r--lisp/smerge-mode.el6
-rw-r--r--lisp/startup.el30
-rw-r--r--lisp/subr.el51
-rw-r--r--lisp/t-mouse.el11
-rw-r--r--lisp/tempo.el9
-rw-r--r--lisp/term/x-win.el23
-rw-r--r--lisp/textmodes/ispell.el29
-rw-r--r--lisp/textmodes/org.el8
-rw-r--r--lisp/type-break.el20
-rw-r--r--lisp/woman.el127
-rw-r--r--lisp/xml.el58
118 files changed, 2256 insertions, 1239 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index 00b6865efa0..47b9b292aa7 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,3 +1,474 @@
12007-03-21 Juanma Barranquero <lekktu@gmail.com>
2
3 * server.el (server-process-filter): Cancel any pending isearch.
4
52007-03-21 Ulf Jasper <ulf.jasper@web.de>
6
7 * calendar/icalendar.el (icalendar-version): Increase to 0.15.
8 (icalendar--get-unfolded-buffer): Define actual arguments rather
9 than just using &rest. Check replace-in-string is fbound.
10 (icalendar-import-buffer): Doc fix.
11 (icalendar--convert-ical-to-diary): Set diary-file.
12 Check diary-file before inserting final newline.
13 (icalendar--add-diary-entry): Return diary-file.
14
152007-03-21 Glenn Morris <rgm@gnu.org>
16
17 * calendar/calendar.el (diary-set-maybe-redraw): Autoload it.
18 (diary-display-hook): Add custom :set function.
19
20 * calendar/diary-lib.el (diary-header-line-flag): Doc fix.
21 Add custom :set function.
22 (diary-header-line-format): Doc fix.
23 (diary-set-maybe-redraw): New function.
24 (number-of-diary-entries): Change :set to use diary-set-maybe-redraw.
25 (diary-list-entries): Always run diary-mode.
26
272007-03-20 David Kastrup <dak@gnu.org>
28
29 * files.el (magic-mode-alist): Require literal "%!PS" string for
30 magic postscript file detection.
31
322007-03-20 Richard Stallman <rms@gnu.org>
33
34 * textmodes/ispell.el (ispell-call-process): New function.
35 Defends against bad `default-directory.'
36 (ispell-check-version, ispell-find-aspell-dictionaries)
37 (ispell-get-aspell-config-value, lookup-words): Call it.
38 (ispell-call-process-region): New function.
39 (ispell-send-string): Call it.
40
412007-03-20 Andreas Schwab <schwab@suse.de>
42
43 * Makefile.in (custom-deps): Depend on $(lisp)/subdirs.el.
44 (finder-data): Likewise.
45 (autoloads): Likewise.
46
472007-03-20 Martin Rudalics <rudalics@gmx.at>
48
49 * files.el (basic-save-buffer): Do not set visited filename when
50 the corresponding directory does not exist or the specified
51 filename is that of an existing directory.
52
532007-03-20 Glenn Morris <rgm@gnu.org>
54
55 * calendar/diary-lib.el (diary-live-p): New function.
56 (number-of-diary-entries): Add a :set function to redisplay diary
57 when necessary.
58
592007-03-19 Nick Roberts <nickrob@snap.net.nz>
60
61 * t-mouse.el (t-mouse-make-event-element): Use timestamp output
62 from client program, mev, to compute mouse event.
63
642007-03-19 Chong Yidong <cyd@stupidchicken.com>
65
66 * faces.el (momentary): Face removed; unused due to reversion of
67 2007-01-04 changes by Kevin Rodgers.
68
69 * mouse.el (mouse-drag-track): Remove spurious input-pending-p test.
70 Suggested by Johan Bockg,Ae(Brd.
71
722007-03-19 Martin Rudalics <rudalics@gmx.at>
73
74 * font-lock.el (lisp-font-lock-keywords-1): Highlight
75 define-globalized-minor-mode as a keyword.
76
772007-03-19 Kim F. Storm <storm@cua.dk>
78
79 * calc/calc-forms.el (math-std-daylight-savings)
80 (math-std-daylight-savings-old): Doc fix.
81
822007-03-19 Juanma Barranquero <lekktu@gmail.com>
83
84 * progmodes/python.el (python-default-template): Doc fix.
85 (python-buffer): Fix typo in docstring.
86
87 * isearchb.el (isearchb-follow-char):
88 * subr.el (def-edebug-spec): Fix typo in docstring.
89
902007-03-19 Richard Stallman <rms@gnu.org>
91
92 * files.el (default-directory): Mark safe.
93 (basic-save-buffer-2): Put proper dir name in error message.
94
95 * simple.el (compose-mail): Run switch-function after
96 setting up the mail buffer.
97
98 * startup.el (inhibit-splash-screen, initial-major-mode): Doc fixes.
99
1002007-03-18 Jay Belanger <belanger@truman.edu>
101
102 * calc/calc-forms.el (math-parse-date): Fix a regular expression.
103 (math-std-daylight-savings-new): Rename from
104 `math-std-daylight-savings'.
105 (math-std-daylight-savings-old): Rename from old value of
106 `math-std-daylight-savings'.
107 (math-std-daylight-savings): Use `math-std-daylight-savings-new' or
108 `math-std-daylight-savings-old' depending on the year.
109
1102007-03-18 Detlev Zundel <dzu@gnu.org>
111
112 * emacs-lisp/re-builder.el (reb-update-overlays): Do not mark
113 zero-width regexps as invalid but rather at least count them
114 correctly.
115
1162007-03-18 Thien-Thi Nguyen <ttn@gnu.org>
117
118 * net/tls.el (open-tls-stream): In handshake-waiting loop,
119 don't wait more if there is output available to process.
120
1212007-03-18 Nick Roberts <nickrob@snap.net.nz>
122
123 * progmodes/compile.el (compilation-find-file): Revert change
124 from 2006-07-18 to allow completion of directory names.
125 Reported by John Carter <john.carter@tait.co.nz>.
126
1272007-03-18 Kim F. Storm <storm@cua.dk>
128
129 * subr.el (when, unless): Doc fix.
130
1312007-03-17 Thien-Thi Nguyen <ttn@gnu.org>
132
133 * net/tls.el (tls-program): Doc fix.
134
1352007-03-17 Denis Bueno <dbueno@gmail.com> (tiny change)
136
137 * autorevert.el (auto-revert-tail-handler):
138 Call after-revert-hook.
139
1402007-03-17 Ryan Yeske <rcyeske@gmail.com>
141
142 * simple.el (switch-to-completions): No error if search for \n\n fails.
143
1442007-03-17 Chong Yidong <cyd@stupidchicken.com>
145
146 * simple.el (line-move-1): Respect
147 `inhibit-line-move-field-capture' property.
148
1492007-03-13 Chong Yidong <cyd@stupidchicken.com>
150
151 * comint.el (comint-arguments): Mark backslash-escaped chars.
152 (comint-delim-arg): Don't treat them as delimiters.
153
1542007-03-12 Kim F. Storm <storm@cua.dk>
155 * ido.el (ido-init-completion-maps): Remap delete-backward-char.
156
1572007-03-12 Lawrence Mitchell <wence@gmx.li> (tiny change)
158
159 * tempo.el (tempo-insert): Deal with 'r> if it appears
160 specified with a prompt argument.
161
1622007-03-12 Carsten Dominik <dominik@science.uva.nl>
163
164 * textmodes/org.el (org-set-font-lock-defaults):
165 Handle narrow table columns correctly.
166
1672007-03-12 Mark A. Hershberger <mah@everybody.org>
168
169 * xml.el (xml-parse-tag, xml-parse-string, xml-parse-attlist)
170 (xml-parse-dtd, xml-parse-elem-type, xml-substitute-special):
171 Return to use of the -no-properties variants. There was
172 consensus on emacs-devel that the speed of these variants was
173 prefered since we are usually parsing files (from the internet
174 or on disk) instead of XML created in Emacs.
175
176 * eshell/esh-mode.el (eshell-handle-ansi-color): New function.
177 Add customize option.
178
1792007-03-12 Glenn Morris <rgm@gnu.org>
180
181 * calc/calc-forms.el (math-std-daylight-savings): Switch to new
182 North American rule. Replace "daylight savings" with "daylight
183 saving" in doc.
184
185 * calendar/cal-china.el,cal-dst.el,calendar.el,diary-lib.el:
186 * calendar/lunar.el,solar.el: Replace "daylight savings" with
187 "daylight saving" in text.
188
189 * woman.el (woman-change-fonts): Tweak previous change by using
190 woman-request-regexp rather than "^\\.".
191
192 * startup.el (command-line-1): Make insertion of
193 initial-scratch-message not depend on scratch being selected.
194
1952007-03-11 Juri Linkov <juri@jurta.org>
196
197 * replace.el (match): Use yellow background on light-bg terminals.
198
1992007-03-11 Richard Stallman <rms@gnu.org>
200
201 * emacs-lisp/bytecomp.el (byte-compile-warning-prefix):
202 Correctly compute line number.
203
2042007-03-11 Guanpeng Xu <herberteuler@hotmail.com>
205
206 * type-break.el (type-break-get-previous-count):
207 Repeat previous change here.
208
2092007-03-11 Dan Nicolaescu <dann@ics.uci.edu>
210
211 * progmodes/grep.el (grep-find-ignored-directories):
212 Add .git and .bzr to list.
213
2142007-03-11 Andreas Schwab <schwab@suse.de>
215
216 * diff-mode.el (diff-apply-hunk): Use proper format string for error.
217
2182007-03-11 Stefan Monnier <monnier@iro.umontreal.ca>
219
220 * mail/emacsbug.el (report-emacs-bug): Don't hard code the "X" name.
221
2222007-03-10 Chong Yidong <cyd@stupidchicken.com>
223
224 * faces.el (face-set-after-frame-default): Recalculate face
225 customizations after applying X resources.
226
2272007-03-10 Ryan Yeske <rcyeske@gmail.com>
228
229 * net/rcirc.el (rcirc-timeout-seconds): New variable.
230 (rcirc-keepalive-seconds): Remove variable.
231 (rcirc-server-name, rcirc-timeout-timer, rcirc-connecting)
232 (rcirc-process, rcirc-user-disconnect): New variables.
233 (rcirc-connect): Initalize new variables.
234 (rcirc-keepalive): Don't send keepalive pings before connection
235 is completed.
236 (rcirc-sentinel): Do mark all channels with activity when
237 connection is dropped. Run hook with process buffer local.
238 (rcirc-reschedule-timeout, rcirc-delete-process): New functions.
239 (rcirc-buffer-process): Return value of rcirc-process if
240 rcirc-server-buffer is nil.
241 (rcirc-server-name): Return the reported server name.
242 (rcirc-update-prompt): Simplify computation of the server name.
243 (rcirc-format-response-string): Likewise.
244 (rcirc-handler-001): Mark server as connected, record the reported
245 server name, and schedule a timeout.
246 (rcirc-track-nick): Add a spec for the tty class.
247 (rcirc-user-non-nick): Remove function.
248 (rcirc-nick-prefix-chars): Add variable.
249 (rcirc-user-nick): Use above variable.
250
2512007-03-10 Johan Bockg,Ae(Brd <bojohan@dd.chalmers.se>
252
253 * icomplete.el (icomplete-tidy, icomplete-exhibit):
254 Bind deactivate-mark to nil.
255
2562007-03-10 Martin Rudalics <rudalics@gmx.at>
257
258 * complete.el (PC-do-completion): Bind dirlength to nil to avoid
259 that buffer contents get erased during completion.
260
2612007-03-10 Glenn Morris <rgm@gnu.org>
262
263 * woman.el (woman-change-fonts): Add a hack to deal with
264 font-escape followed by "." at start of a line.
265 (woman2-IP): Add a hack to deal with consecutive requests.
266 (woman2-tagged-paragraph): Extend existing hack to handle "sp".
267
2682007-03-10 Alan Mackenzie <acm@muc.de>
269
270 * progmodes/cc-mode.el (c-before-change): Wrap in save-match-data.
271
2722007-03-09 Richard Stallman <rms@gnu.org>
273
274 * abbrev.el (abbrev): Add `provide'.
275
2762007-03-09 Thien-Thi Nguyen <ttn@gnu.org>
277
278 * net/ange-ftp.el (ange-ftp-try-passive-mode): Doc fix.
279
2802007-03-09 Martin Rudalics <rudalics@gmx.at>
281
282 * complete.el (PC-try-completion): New function.
283 (PC-do-completion, read-file-name-internal): Use it instead of
284 try-completion.
285
2862007-03-08 Alan Mackenzie <acm@muc.de>
287
288 Remove stale tokens from `c-found-types' cache.
289
290 * progmodes/cc-mode.el (c-unfind-enclosing-token)
291 (c-unfind-coalesced-tokens, c-before-change): New functions.
292 (c-maybe-stale-found-type): New variable.
293
294 * progmodes/cc-engine.el (c-partial-ws-p, c-unfind-type)
295 (c-trim-found-types): New functions.
296
2972007-03-08 Stefan Monnier <monnier@iro.umontreal.ca>
298
299 * smerge-mode.el (smerge-remove-props): Don't mark the buffer modified.
300 (debug-ignored-errors): Add entry from smerge-match-conflict.
301
3022007-03-08 J.D. Smith <jdsmith@as.arizona.edu>
303
304 * progmodes/idlw-help.el (idlwave-do-context-help1): Don't visit
305 special help topics for keywords.
306 (idlwave-help-assistant-command): Include ".exe" for ms-dos
307 etc. Assistant command.
308
3092007-03-08 Chong Yidong <cyd@stupidchicken.com>
310
311 * replace.el (occur-engine): Move buffer-undo-list binding...
312 (occur-1): ...to here.
313
314 * complete.el (PC-bindings): Rebind M-TAB in read-expression-map.
315
316 * simple.el (minibuffer-completing-symbol): New var.
317 (eval-expression): Use it.
318 (completion-setup-function): Don't bind completion-base-size when
319 completing a symbol in the minibuffer.
320
3212007-03-08 Nick Roberts <nickrob@snap.net.nz>
322
323 * progmodes/gud.el (gdb): Pop up current GUD buffer if user
324 tries to start a second session in graphical mode.
325
3262007-03-07 Miles Bader <miles@gnu.org>
327
328 * international/isearch-x.el
329 (isearch-process-search-multibyte-characters):
330 Strip text-properties from PROMPT to avoid an error from read-string.
331
3322007-03-07 Kim F. Storm <storm@cua.dk>
333
334 * complete.el (PC-bindings): Remap lisp-complete-symbol to
335 PC-lisp-complete-symbol instead of binding M-TAB in global-map.
336
3372007-03-07 Micha,Ak(Bl Cadilhac <michael@cadilhac.name>
338
339 * complete.el (PC-do-completion): Delete duplicates in the list of
340 possible completions.
341
3422007-03-07 Glenn Morris <rgm@gnu.org>
343
344 * ses.el (ses-mode): Doc fix.
345
3462007-03-06 Kim F. Storm <storm@cua.dk>
347
348 * isearch.el (isearch-message-prefix): Undo 2007-03-01 change.
349
3502007-03-06 Kenichi Handa <handa@m17n.org>
351
352 * term/x-win.el (x-select-utf8-or-ctext): Improve the strategy.
353
3542007-03-06 Stefan Monnier <monnier@iro.umontreal.ca>
355
356 * simple.el (completion-setup-function): Improve last fix so it doesn't
357 set it to a relative directory name either.
358
3592007-03-05 Vinicius Jose Latorre <viniciusjl@ig.com.br>
360
361 * ps-print.el: Replace some (defvar VAR) by (defvar VAR nil).
362
3632007-03-05 Richard Stallman <rms@gnu.org>
364
365 * emacs-lisp/re-builder.el (reb-re-syntax): Fix custom type.
366
367 * files.el (find-file-noselect): No error if file no longer exists.
368 Display a message and avoid other questions.
369
3702007-03-05 Stefan Monnier <monnier@iro.umontreal.ca>
371
372 * pcomplete.el (pcomplete-show-completions): Improve last change, so
373 as not to use an invisible window and to create a window if none exist.
374
375 * progmodes/python.el (python-send-command): Restart proc if necessary.
376 (python-proc): Simplify.
377
3782007-03-05 David Hansen <david.hansen@gmx.net> (tiny change)
379
380 * pcomplete.el (pcomplete-show-completions): Search all frames for
381 completions buffer.
382
3832007-03-05 Chong Yidong <cyd@stupidchicken.com>
384
385 * cus-edit.el (customize-save-variable): Clear customized-value
386 property (saved values are now put in theme-value property).
387 (customize-set-variable): Doc fix.
388
389 * complete.el (PC-do-completion): If completion-ignore-case is
390 non-nil, replace field with completion string before exiting.
391
3922007-03-05 Michael Albinus <michael.albinus@gmx.de>
393
394 * net/tramp.el (tramp-make-temp-file): New parameter FILENAME.
395 Append its extension to the resulting temporary file name.
396 (tramp-handle-file-local-copy, tramp-handle-write-region): Apply it.
397
398 * net/tramp-smb.el (tramp-smb-handle-file-local-copy)
399 (tramp-smb-handle-write-region): Apply it.
400
4012007-03-05 Alin C. Soare <alinsoar@voila.fr> (tiny change)
402
403 * emacs-lisp/lisp-mode.el (calculate-lisp-indent):
404 Redo previous change.
405
4062007-03-04 Kevin Rodgers <kevin.d.rodgers@gmail.com> (tiny change)
407
408 * diff-mode.el (diff-mode): Doc fix.
409
4102007-03-05 Kenichi Handa <handa@m17n.org>
411
412 * international/characters.el: Set category `l' (latin)
413 for more characters.
414
4152007-03-04 Kim F. Storm <storm@cua.dk>
416
417 * emacs-lisp/authors.el (authors-aliases): Add alias.
418
4192007-03-04 Glenn Morris <rgm@gnu.org>
420
421 * progmodes/hideshow.el (hs-minor-mode): Turn mode off and show
422 all when switching major mode.
423 (hs-minor-mode, hs-c-start-regexp, hs-block-start-regexp)
424 (hs-block-start-mdata-select, hs-block-end-regexp)
425 (hs-forward-sexp-func, hs-adjust-block-beginning):
426 Do not make these variables permanent-local.
427
4282007-03-04 Richard Stallman <rms@gnu.org>
429
430 * progmodes/cperl-mode.el (cperl-mode):
431 Modify cperl-compilation-error-regexp-alist by appending.
432
433 * emacs-lisp/edebug.el (edebug-kill-buffer): New function.
434 (edebug-mode): Add the hook.
435 (edebug-recursive-edit): Remove the hook on exiting.
436
437 * type-break.el (type-break-get-previous-time):
438 Handle end-of-file errors specially
439 so they don't get reported wrong in .emacs.
440
441 * startup.el (fancy-splash-text): Clarify text.
442
443 * simple.el (beginning-of-buffer, end-of-buffer):
444 Avoid treating plain C-u like numeric arg.
445
446 * simple.el (completion-setup-function): Don't set
447 default-directory to nil.
448
449 * shell.el (shell-dirstack-query): Doc fix.
450
451 * mouse.el (mouse-drag-mode-line-1, mouse-drag-vertical-line):
452 Don't select the window -- pass it to primitives instead.
453
454 * faces.el (minibuffer-prompt): Use medium blue by default.
455
4562007-03-04 David Kastrup <dak@gnu.org>
457
458 * jit-lock.el (jit-lock-stealth-time): Change default to nil.
459 Preserve 16 as default value for "seconds" when customizing.
460
4612007-03-04 Carsten Dominik <dominik@science.uva.nl>
462
463 * textmodes/org.el (org-self-insert-command)
464 (orgtbl-self-insert-command, org-delete-char)
465 (org-delete-backward-char): Set the `flyspell-delayed' property.
466
4672007-03-03 Chong Yidong <cyd@stupidchicken.com>
468
469 * international/mule.el (find-auto-coding): Don't search for
470 line-ending characters past the end of the tail.
471
12007-03-03 Christopher Allan Webber <cwebber@dustycloud.org> (tiny change) 4722007-03-03 Christopher Allan Webber <cwebber@dustycloud.org> (tiny change)
2 473
3 * play/gamegrid.el (gamegrid-add-score-with-update-game-score-1): 474 * play/gamegrid.el (gamegrid-add-score-with-update-game-score-1):
@@ -111,7 +582,8 @@
111 582
1122007-02-26 Andrey Zhdanov <susuman@hotmail.com> (tiny change) 5832007-02-26 Andrey Zhdanov <susuman@hotmail.com> (tiny change)
113 584
114 (gud-pdb-marker-regexp): Add optional <module> keyword for Python 2.5. 585 * progmodes/gud.el (gud-pdb-marker-regexp): Add optional <module>
586 keyword for Python 2.5.
115 587
1162007-02-26 Romain Francoise <romain@orebokech.com> 5882007-02-26 Romain Francoise <romain@orebokech.com>
117 589
@@ -149,32 +621,32 @@
149 (org-table-toggle-coordinate-overlays): New functions. 621 (org-table-toggle-coordinate-overlays): New functions.
150 (org-table-overlay-coordinates, org-table-coordinate-overlays): 622 (org-table-overlay-coordinates, org-table-coordinate-overlays):
151 New variables. 623 New variables.
152 (org-startup-with-deadline-check): Option removed. 624 (org-startup-with-deadline-check): Remove option.
153 (org-mode): Remove deadline check on startup. 625 (org-mode): Remove deadline check on startup.
154 (org-table-limit-column-width): Option removed. 626 (org-table-limit-column-width): Remove option.
155 (org-table-formula-numbers-only): Option removed. 627 (org-table-formula-numbers-only): Remove option.
156 (org-link-style, org-link-format): Options removed. 628 (org-link-style, org-link-format): Remove options.
157 (org-select-agenda-window, org-fit-agenda-window): Options removed. 629 (org-select-agenda-window, org-fit-agenda-window): Remove options.
158 (org-export-ascii-show-new-buffer) 630 (org-export-ascii-show-new-buffer)
159 (org-export-html-show-new-buffer): Options removed. 631 (org-export-html-show-new-buffer): Remove options.
160 (org-activate-links): Camel option removed. 632 (org-activate-links): Remove camel option.
161 (org-file-link-context-use-camel-case): Option removed. 633 (org-file-link-context-use-camel-case): Remove option.
162 (org-camel-regexp): Veriable removed. 634 (org-camel-regexp): Remove variable.
163 (org-activate-camels): Function removed. 635 (org-activate-camels): Remove function.
164 (org-store-link): Removed Camel stuff. 636 (org-store-link): Remove Camel stuff.
165 (org-make-org-heading-camel): Function removed. 637 (org-make-org-heading-camel): Remove function.
166 (org-open-at-point): Removed camel stuff. 638 (org-open-at-point): Remove camel stuff.
167 (org-link-search): Removed camel stuff. 639 (org-link-search): Remove camel stuff.
168 (org-camel-to-words): Function removed. 640 (org-camel-to-words): Function removed.
169 (org-get-agenda-file-buffer): Make sure we prepare the base 641 (org-get-agenda-file-buffer): Make sure we prepare the base
170 buffers, not any indirect buffers. 642 buffers, not any indirect buffers.
171 (org-sort-entries): Sort top-level when not on a headline, and no 643 (org-sort-entries): Sort top-level when not on a headline, and no
172 active region. 644 active region.
173 (org-in-regexp): New function. 645 (org-in-regexp): New function.
174 (org-search-not-self): Renamed from `org-search-not-link'. 646 (org-search-not-self): Rename from `org-search-not-link'.
175 (org-open-link-marker): New variable. 647 (org-open-link-marker): New variable.
176 (org-open-at-point): Set `org-open-link-marker'. 648 (org-open-at-point): Set `org-open-link-marker'.
177 (org-print-icalendar-entries): Fixed bug with excluding DONE 649 (org-print-icalendar-entries): Fixe bug with excluding DONE
178 entries from the exported list. 650 entries from the exported list.
179 (org-edit-formula-lisp-indent): New command. 651 (org-edit-formula-lisp-indent): New command.
180 (orgtbl-to-texinfo, orgtbl-to-html): New functions. 652 (orgtbl-to-texinfo, orgtbl-to-html): New functions.
@@ -190,7 +662,7 @@
190 (org-upgrade-old-links) 662 (org-upgrade-old-links)
191 (org-table-modify-formulas, org-table-replace-in-formulas) 663 (org-table-modify-formulas, org-table-replace-in-formulas)
192 (org-table-find-dataline) 664 (org-table-find-dataline)
193 (org-table-get-vertical-vector): Functions removed. 665 (org-table-get-vertical-vector): Remove functions.
194 (org-table-remove-rectangle-highlight) 666 (org-table-remove-rectangle-highlight)
195 (org-time-stamp-format, org-toggle-log-option) 667 (org-time-stamp-format, org-toggle-log-option)
196 (org-table-highlight-rectangle) 668 (org-table-highlight-rectangle)
@@ -223,17 +695,17 @@
223 (org-table-edit-scroll, org-table-edit-scroll-down) 695 (org-table-edit-scroll, org-table-edit-scroll-down)
224 (org-set-frame-title, org-show-reference) 696 (org-set-frame-title, org-show-reference)
225 (org-unhighlight-once, org-verify-change-for-undo): New functions. 697 (org-unhighlight-once, org-verify-change-for-undo): New functions.
226 (org-show-variable): Command removed. 698 (org-show-variable): Remove command.
227 (org-add-log-maybe): New arguments STATE, FINDPOS 699 (org-add-log-maybe): New arguments STATE, FINDPOS
228 (org-table-sort-lines): Rewritten from scratch. 700 (org-table-sort-lines): Rewrite from scratch.
229 (org-link-search): New argument AVOID-POS. 701 (org-link-search): New argument AVOID-POS.
230 (org-print-icalendar-entries): Argument CATEGORY removed. 702 (org-print-icalendar-entries): Remove argument CATEGORY.
231 (org-run-agenda-series): Argument WONDOW removed. 703 (org-run-agenda-series): Remove argument WONDOW.
232 (org-next-link, org-previous-link): New commands. 704 (org-next-link, org-previous-link): New commands.
233 (org-agenda-date-format): New option. 705 (org-agenda-date-format): New option.
234 (org-table-iterate): New command. 706 (org-table-iterate): New command.
235 (org-table-modify-formulas) 707 (org-table-modify-formulas)
236 (org-table-replace-in-formulas): Functions removed. 708 (org-table-replace-in-formulas): Remove functions.
237 (org-table-fix-formulas): New function. 709 (org-table-fix-formulas): New function.
238 (org-table-insert-column, org-table-delete-column) 710 (org-table-insert-column, org-table-delete-column)
239 (org-table-move-column): Use `org-table-fix-formulas'. 711 (org-table-move-column): Use `org-table-fix-formulas'.
@@ -254,8 +726,8 @@
254 (org-read-date): Accept "+N" as input for a date relative to the 726 (org-read-date): Accept "+N" as input for a date relative to the
255 current date. 727 current date.
256 (org-remove-subtree-entries-from-agenda): New function. 728 (org-remove-subtree-entries-from-agenda): New function.
257 (org-agenda-archive, org-agenda-kill): Use 729 (org-agenda-archive, org-agenda-kill):
258 `org-remove-subtree-entries-from-agenda'. 730 Use `org-remove-subtree-entries-from-agenda'.
259 (org-do-sort, org-sort-entries): New functions. 731 (org-do-sort, org-sort-entries): New functions.
260 (org-sort): New command. 732 (org-sort): New command.
261 (org-table-sort-lines): Use `org-do-sort'. 733 (org-table-sort-lines): Use `org-do-sort'.
@@ -263,7 +735,7 @@
263 (org-table-number-regexp): Require 0x... to identify as number 735 (org-table-number-regexp): Require 0x... to identify as number
264 in tables. 736 in tables.
265 (org-startup-options): New keywords for note taking. 737 (org-startup-options): New keywords for note taking.
266 (org-upgrade-old-links): Function removed. 738 (org-upgrade-old-links): Remove function.
267 (org-get-repeat): New function. 739 (org-get-repeat): New function.
268 (org-show-context): Also show siblings on current level. 740 (org-show-context): Also show siblings on current level.
269 (org-show-siblings): New function. 741 (org-show-siblings): New function.
@@ -392,7 +864,7 @@
392 * pgg-gpg.el (pgg-gpg-process-region): Make USE-AGENT nil 864 * pgg-gpg.el (pgg-gpg-process-region): Make USE-AGENT nil
393 if PASSPHRASE is given. 865 if PASSPHRASE is given.
394 866
3952007-02-17 Chris Moore <dooglus@gmail.com> 8672007-02-17 Chris Moore <dooglus@gmail.com>
396 868
397 * jka-cmpr-hook.el (jka-compr-compression-info-list): 869 * jka-cmpr-hook.el (jka-compr-compression-info-list):
398 Recognize backups of bz2 compressed files. 870 Recognize backups of bz2 compressed files.
@@ -1390,12 +1862,6 @@
1390 * files.el (find-file-noselect-1, set-visited-file-name): 1862 * files.el (find-file-noselect-1, set-visited-file-name):
1391 Allow backup-enable-predicate to be nil. 1863 Allow backup-enable-predicate to be nil.
1392 1864
13932007-01-04 Kevin Rodgers <kevin.d.rodgers@gmail.com>
1394
1395 * subr.el (momentary): New face.
1396 (momentary-string-display): Display the string via a temporary
1397 overlay using the new face, instead of inserting it in the buffer.
1398
13992007-01-04 Andreas Schwab <schwab@suse.de> 18652007-01-04 Andreas Schwab <schwab@suse.de>
1400 1866
1401 * progmodes/ebrowse.el (ebrowse-global-prefix-key): Fix typo in 1867 * progmodes/ebrowse.el (ebrowse-global-prefix-key): Fix typo in
@@ -1407,8 +1873,7 @@
1407 1873
14082007-01-03 Alan Mackenzie <acm@muc.de> 18742007-01-03 Alan Mackenzie <acm@muc.de>
1409 1875
1410 * progmode/cc-cmds.el (c-mask-paragraph): Fix yesterday's buggy 1876 * progmode/cc-cmds.el (c-mask-paragraph): Fix yesterday's buggy patch.
1411 patch.
1412 1877
14132007-01-03 Chris Moore <christopher.ian.moore@gmail.com> 18782007-01-03 Chris Moore <christopher.ian.moore@gmail.com>
1414 1879
@@ -1579,7 +2044,7 @@
1579 * international/mule-cmds.el (select-safe-coding-system-interactively): 2044 * international/mule-cmds.el (select-safe-coding-system-interactively):
1580 Fix message. 2045 Fix message.
1581 2046
15822006-12-30 Kevin Rodgers <kevin.d.rodgers@gmail.com> 20472006-12-30 Kevin Rodgers <kevin.d.rodgers@gmail.com> (tiny change)
1583 2048
1584 * files.el (backup-buffer): Show entire backup file name in msg. 2049 * files.el (backup-buffer): Show entire backup file name in msg.
1585 2050
@@ -2079,12 +2544,6 @@
2079 2544
2080 * comint.el (comint-insert-input): Delete obsolete comment. 2545 * comint.el (comint-insert-input): Delete obsolete comment.
2081 2546
20822006-12-08 Kevin Rodgers <ihs_4664@yahoo.com>
2083
2084 * files.el (insert-file-1): Compare file size to
2085 large-file-warning-threshold and request confirmation when
2086 warranted.
2087
20882006-12-08 Stefan Monnier <monnier@iro.umontreal.ca> 25472006-12-08 Stefan Monnier <monnier@iro.umontreal.ca>
2089 2548
2090 * net/browse-url.el (browse-url): Set DISPLAY to the one of the 2549 * net/browse-url.el (browse-url): Set DISPLAY to the one of the
@@ -11957,14 +12416,6 @@
11957 * files.el (magic-mode-regexp-match-limit): New defvar. 12416 * files.el (magic-mode-regexp-match-limit): New defvar.
11958 (set-auto-mode): Use it to limit magic-mode-alist matching. 12417 (set-auto-mode): Use it to limit magic-mode-alist matching.
11959 12418
119602006-02-04 Kevin Rodgers <ihs_4664@yahoo.com>
11961
11962 * simple.el (display-message-or-buffer): Compare the number of
11963 characters to the frame width when determining whether a 1-line
11964 message string will fit in the echo area. Count screen lines
11965 instead of buffer lines when determining whether a multi-line
11966 message will fit in the echo area/minibuffer window.
11967
119682006-02-04 Eli Zaretskii <eliz@gnu.org> 124192006-02-04 Eli Zaretskii <eliz@gnu.org>
11969 12420
11970 * info.el (Info-index, Info-mode): Improve the description of the 12421 * info.el (Info-index, Info-mode): Improve the description of the
@@ -12199,7 +12650,7 @@
12199 English aspell dictionary is installed, use the first entry of 12650 English aspell dictionary is installed, use the first entry of
12200 ispell-dictionary-alist-1. 12651 ispell-dictionary-alist-1.
12201 12652
122022006-01-27 Kevin Rodgers <ihs_4664@yahoo.com> 126532006-01-27 Kevin Rodgers <ihs_4664@yahoo.com> (tiny change)
12203 12654
12204 * textmodes/flyspell.el (flyspell-incorrect, flyspell-duplicate): 12655 * textmodes/flyspell.el (flyspell-incorrect, flyspell-duplicate):
12205 Doc fix. 12656 Doc fix.
@@ -14221,7 +14672,7 @@
14221 (hi-lock-find-patterns, hi-lock-font-lock-hook): 14672 (hi-lock-find-patterns, hi-lock-font-lock-hook):
14222 Replace hi-lock-buffer-mode with hi-lock-mode. 14673 Replace hi-lock-buffer-mode with hi-lock-mode.
14223 14674
142242005-12-10 Kevin Rodgers <ihs_4664@yahoo.com> 146752005-12-10 Kevin Rodgers <ihs_4664@yahoo.com> (tiny change)
14225 14676
14226 * emacs-lisp/lisp.el (lisp-complete-symbol): Regenerate the 14677 * emacs-lisp/lisp.el (lisp-complete-symbol): Regenerate the
14227 completion list, even after a partial completion has been 14678 completion list, even after a partial completion has been
@@ -15664,7 +16115,7 @@
15664 16115
15665 * progmodes/cc-defs.el (c-emacs-features): Don't assume point-min==1. 16116 * progmodes/cc-defs.el (c-emacs-features): Don't assume point-min==1.
15666 16117
156672005-12-06 Nozomu Ando <nand@mac.com> (tiny patch) 161182005-12-06 Nozomu Ando <nand@mac.com>
15668 16119
15669 * mail/smtpmail.el (smtpmail-try-auth-methods): Make password 16120 * mail/smtpmail.el (smtpmail-try-auth-methods): Make password
15670 prompts work for AUTH PLAIN. Also reported by Steve Allan 16121 prompts work for AUTH PLAIN. Also reported by Steve Allan
@@ -29227,7 +29678,7 @@
29227 * progmodes/python.el (python-close-block-statement-p) 29678 * progmodes/python.el (python-close-block-statement-p)
29228 (python-outdent-p, python-current-defun): Use symbol-end. 29679 (python-outdent-p, python-current-defun): Use symbol-end.
29229 29680
292302005-03-25 Karl Chen <quarl@cs.berkeley.edu> (tiny change) 296812005-03-25 Karl Chen <quarl@cs.berkeley.edu>
29231 29682
29232 * files.el (save-some-buffers): Doc fix. 29683 * files.el (save-some-buffers): Doc fix.
29233 29684
@@ -31912,7 +32363,7 @@
31912 * electric.el (Electric-pop-up-window): Use fit-window-to-buffer 32363 * electric.el (Electric-pop-up-window): Use fit-window-to-buffer
31913 instead of calculating the right size. 32364 instead of calculating the right size.
31914 32365
319152005-01-02 Karl Chen <quarl@cs.berkeley.edu> (tiny change) 323662005-01-02 Karl Chen <quarl@cs.berkeley.edu>
31916 32367
31917 * vc-svn.el (vc-svn-diff): Stay local if possible. 32368 * vc-svn.el (vc-svn-diff): Stay local if possible.
31918 32369
diff --git a/lisp/ChangeLog.10 b/lisp/ChangeLog.10
index d7264dfb0b8..d6d69c52924 100644
--- a/lisp/ChangeLog.10
+++ b/lisp/ChangeLog.10
@@ -2972,7 +2972,7 @@
2972 (rename-buffer): Use the `newname' arg as base. 2972 (rename-buffer): Use the `newname' arg as base.
2973 (create-file-buffer): Split the file name into base and dirname. 2973 (create-file-buffer): Split the file name into base and dirname.
2974 2974
29752003-05-09 Jesper Harder <harder@ifa.au.dk> (tiny change) 29752003-05-09 Jesper Harder <harder@ifa.au.dk>
2976 2976
2977 * mail/smtpmail.el (smtpmail-send-queued-mail): Don't use kill-line. 2977 * mail/smtpmail.el (smtpmail-send-queued-mail): Don't use kill-line.
2978 2978
@@ -3275,7 +3275,7 @@
3275 * filesets.el (filesets-data): Add another defvar. 3275 * filesets.el (filesets-data): Add another defvar.
3276 (filesets-verbosity): Doc fix. 3276 (filesets-verbosity): Doc fix.
3277 3277
32782003-05-02 Tak Ota <Takaaki.Ota@am.sony.com> (tiny change) 32782003-05-02 Tak Ota <Takaaki.Ota@am.sony.com>
3279 3279
3280 * recentf.el (recentf-cleanup): Swap tests for exclusion and 3280 * recentf.el (recentf-cleanup): Swap tests for exclusion and
3281 accessibility. 3281 accessibility.
@@ -3492,10 +3492,10 @@
3492 (Info-display-images-node): New functions for displaying images. 3492 (Info-display-images-node): New functions for displaying images.
3493 (Info-select-node): Call Info-display-images-node. 3493 (Info-select-node): Call Info-display-images-node.
3494 3494
34952003-04-25 Kai Gro,A_(Bjohann <kai.grossjohann@gmx.net> 34952003-04-25 David Ponce <david.ponce@wanadoo.fr>
3496 3496
3497 * files.el (file-relative-name): Recognize "c:/foo" as absolute 3497 * files.el (file-relative-name): Recognize "c:/foo" as absolute
3498 file name. Tiny change from David PONCE <david.ponce@wanadoo.fr>. 3498 file name.
3499 3499
35002003-04-24 Sam Steingold <sds@gnu.org> 35002003-04-24 Sam Steingold <sds@gnu.org>
3501 3501
@@ -5595,7 +5595,7 @@
5595 beginning-of-defun to the non-existing command 5595 beginning-of-defun to the non-existing command
5596 sh-beginning-of-compound-command. 5596 sh-beginning-of-compound-command.
5597 5597
55982003-02-12 Karl Chen <quarl@hkn.eecs.berkeley.edu> (tiny change) 55982003-02-12 Karl Chen <quarl@hkn.eecs.berkeley.edu>
5599 5599
5600 * files.el (find-alternate-file): Check whether `dired-directory' 5600 * files.el (find-alternate-file): Check whether `dired-directory'
5601 is bound. 5601 is bound.
@@ -11971,7 +11971,7 @@
11971 * calendar/appt.el (appt-delete): Use substring-no-properties. 11971 * calendar/appt.el (appt-delete): Use substring-no-properties.
11972 (appt-make-list): Don't use prin1-to-string; use the string unchanged. 11972 (appt-make-list): Don't use prin1-to-string; use the string unchanged.
11973 11973
119742002-08-15 Jan Nieuwenhuizen <janneke@gnu.org> (tiny change) 119742002-08-15 Jan Nieuwenhuizen <janneke@gnu.org>
11975 11975
11976 * server.el (server-process-filter): Simplify code. 11976 * server.el (server-process-filter): Simplify code.
11977 (server-goto-line-column): New function. 11977 (server-goto-line-column): New function.
@@ -12378,7 +12378,7 @@
12378 * dired.el: Hide disabling of dired-find-alternate-file behind 12378 * dired.el: Hide disabling of dired-find-alternate-file behind
12379 autoload-cookie. 12379 autoload-cookie.
12380 12380
123812002-07-31 Tak Ota <Takaaki.Ota@am.sony.com> (tiny change) 123812002-07-31 Tak Ota <Takaaki.Ota@am.sony.com>
12382 12382
12383 * makefile.w32-in: Revert some changes from 2002-07-23 because they 12383 * makefile.w32-in: Revert some changes from 2002-07-23 because they
12384 don't work on MSVC/nmake builds. 12384 don't work on MSVC/nmake builds.
@@ -22919,13 +22919,14 @@
22919 * startup.el: Document command line option --no-window-system 22919 * startup.el: Document command line option --no-window-system
22920 instead of --no-windows. 22920 instead of --no-windows.
22921 22921
229222001-10-30 Stefan Monnier <monnier@cs.yale.edu> 229222001-10-30 David Ponce <david.ponce@wanadoo.fr>
22923
22924 * progmodes/autoconf.el (autoconf-mode): Fix comment-start-skip.
22925 22923
22926 * font-lock.el (java-font-lock-syntactic-face-function): New fun. 22924 * font-lock.el (java-font-lock-syntactic-face-function): New fun.
22927 (font-lock-defaults-alist): Use it. 22925 (font-lock-defaults-alist): Use it.
22928 From David Ponce <david.ponce@wanadoo.fr> 22926
229272001-10-30 Stefan Monnier <monnier@cs.yale.edu>
22928
22929 * progmodes/autoconf.el (autoconf-mode): Fix comment-start-skip.
22929 22930
22930 * progmodes/perl-mode.el (perl-indent-line): Use `eq' to compare 22931 * progmodes/perl-mode.el (perl-indent-line): Use `eq' to compare
22931 output of `char-after'. 22932 output of `char-after'.
diff --git a/lisp/ChangeLog.11 b/lisp/ChangeLog.11
index e9c752464f7..ac47f4eaeaa 100644
--- a/lisp/ChangeLog.11
+++ b/lisp/ChangeLog.11
@@ -4993,7 +4993,7 @@
4993 4993
4994 * international/latin1-disp.el (latin1-char-displayable-p): Likewise. 4994 * international/latin1-disp.el (latin1-char-displayable-p): Likewise.
4995 4995
49962004-08-21 Peter Seibel <peter@javamonkey.com> (tiny patch) 49962004-08-21 Peter Seibel <peter@javamonkey.com> (tiny change)
4997 4997
4998 * emacs-lisp/cl-indent.el (lisp-indent-defmethod): 4998 * emacs-lisp/cl-indent.el (lisp-indent-defmethod):
4999 Correct indentation of DEFMETHODS with non-standard method 4999 Correct indentation of DEFMETHODS with non-standard method
@@ -6043,12 +6043,12 @@
6043 * international/utf-8.el (ccl-decode-mule-utf-8): Fix previous change. 6043 * international/utf-8.el (ccl-decode-mule-utf-8): Fix previous change.
6044 (ccl-untranslated-to-ucs): Fix typo. 6044 (ccl-untranslated-to-ucs): Fix typo.
6045 6045
60462004-06-12 Karl Chen <quarl@hkn.eecs.berkeley.edu> (tiny change) 60462004-06-12 Karl Chen <quarl@hkn.eecs.berkeley.edu>
6047 6047
6048 * progmodes/python.el (python-open-block-statement-p): 6048 * progmodes/python.el (python-open-block-statement-p):
6049 Fix indentation after a block opening that contains a comment. 6049 Fix indentation after a block opening that contains a comment.
6050 6050
60512004-06-12 J,Ai(Br,At(Bme Marant <jerome@marant.org> (tiny change) 60512004-06-12 J,Ai(Br,At(Bme Marant <jerome@marant.org>
6052 6052
6053 * bindings.el (completion-ignored-extensions): Add file extensions 6053 * bindings.el (completion-ignored-extensions): Add file extensions
6054 of Python byte-compiled files. 6054 of Python byte-compiled files.
@@ -6982,7 +6982,7 @@
6982 (byte-goto-log-buffer): Delete. 6982 (byte-goto-log-buffer): Delete.
6983 (byte-compile-log-file): Call compilation-forget-errors. 6983 (byte-compile-log-file): Call compilation-forget-errors.
6984 6984
69852004-05-19 Takaaki Ota <Takaaki.Ota@am.sony.com> (tiny change) 69852004-05-19 Takaaki Ota <Takaaki.Ota@am.sony.com>
6986 6986
6987 * net/ldap.el (ldap-search-internal): Avoid mixing standard error 6987 * net/ldap.el (ldap-search-internal): Avoid mixing standard error
6988 output messages into the search result. 6988 output messages into the search result.
@@ -6996,7 +6996,7 @@
6996 6996
6997 * international/characters.el: Fix syntax (open/close) of CJK chars. 6997 * international/characters.el: Fix syntax (open/close) of CJK chars.
6998 6998
69992004-05-18 Karl Chen <quarl@hkn.eecs.berkeley.edu> (tiny change) 69992004-05-18 Karl Chen <quarl@hkn.eecs.berkeley.edu>
7000 7000
7001 * help-mode.el (help-go-back): Don't depend on position of back button. 7001 * help-mode.el (help-go-back): Don't depend on position of back button.
7002 7002
@@ -7121,7 +7121,7 @@
7121 * calendar/appt.el (appt-disp-window): 7121 * calendar/appt.el (appt-disp-window):
7122 Use `calendar-set-mode-line' for a centered mode-line. 7122 Use `calendar-set-mode-line' for a centered mode-line.
7123 7123
71242004-05-13 Takaaki Ota <Takaaki.Ota@am.sony.com> (tiny change) 71242004-05-13 Takaaki Ota <Takaaki.Ota@am.sony.com>
7125 7125
7126 * calendar/appt.el (appt-disp-window): Do not split window 7126 * calendar/appt.el (appt-disp-window): Do not split window
7127 excessively when `split-height-threshold' is low. 7127 excessively when `split-height-threshold' is low.
@@ -10484,12 +10484,12 @@
10484 * loadhist.el (unload-feature): Doc fix. Rename flist to 10484 * loadhist.el (unload-feature): Doc fix. Rename flist to
10485 unload-hook-features-list. 10485 unload-hook-features-list.
10486 10486
104872004-02-16 Jay Belanger <belanger@truman.edu> (tiny change) 104872004-02-16 Jay Belanger <belanger@truman.edu>
10488 10488
10489 * calc/calc-embed.el (calc-do-embedded-activate): Add autoload 10489 * calc/calc-embed.el (calc-do-embedded-activate): Add autoload
10490 cookie. Don't check if we are looking-at open-formula. 10490 cookie. Don't check if we are looking-at open-formula.
10491 10491
104922004-02-16 Jesper Harder <harder@ifa.au.dk> (tiny change) 104922004-02-16 Jesper Harder <harder@ifa.au.dk>
10493 10493
10494 * subr.el (match-string-no-properties): Use substring-no-properties. 10494 * subr.el (match-string-no-properties): Use substring-no-properties.
10495 10495
@@ -10564,7 +10564,7 @@
10564 * international/ccl.el (ccl-compile-write): Pass `left' to 10564 * international/ccl.el (ccl-compile-write): Pass `left' to
10565 ccl-embed-code to generate correct code of write-expr-register. 10565 ccl-embed-code to generate correct code of write-expr-register.
10566 10566
105672004-02-15 Dan Nicolaescu <dann@ics.uci.edu> (tiny change) 105672004-02-15 Dan Nicolaescu <dann@ics.uci.edu>
10568 10568
10569 * progmodes/grep.el (grep-compute-defaults): Fix typos. 10569 * progmodes/grep.el (grep-compute-defaults): Fix typos.
10570 10570
@@ -10766,7 +10766,7 @@
10766 * vc.el (with-vc-file): Fix unsafe uses of error. 10766 * vc.el (with-vc-file): Fix unsafe uses of error.
10767 (vc-cancel-version): Likewise. 10767 (vc-cancel-version): Likewise.
10768 10768
107692004-02-08 Jan Nieuwenhuizen <jan.nieuwenhuizen@aspiratie.nl> (tiny change) 107692004-02-08 Jan Nieuwenhuizen <jan.nieuwenhuizen@aspiratie.nl>
10770 10770
10771 * progmodes/gud.el (gud-jdb-marker-filter): Add period as optional 10771 * progmodes/gud.el (gud-jdb-marker-filter): Add period as optional
10772 thousands separator; fixes <class>:<line-number> regexp for 10772 thousands separator; fixes <class>:<line-number> regexp for
@@ -11113,7 +11113,7 @@
11113 11113
11114 * mail/smtpmail.el (smtpmail-send-data): Don't append spurious newline. 11114 * mail/smtpmail.el (smtpmail-send-data): Don't append spurious newline.
11115 11115
111162004-01-18 David Ponce <david@dponce.com> (tiny change) 111162004-01-18 David Ponce <david@dponce.com>
11117 11117
11118 * progmodes/which-func.el (which-function-mode): Don't cancel 11118 * progmodes/which-func.el (which-function-mode): Don't cancel
11119 which-func-update-timer if not set. 11119 which-func-update-timer if not set.
@@ -11322,7 +11322,7 @@
11322 11322
11323 * subr.el (functionp): Doc fix. 11323 * subr.el (functionp): Doc fix.
11324 11324
113252004-01-03 Jesper Harder <harder@ifa.au.dk> (tiny change) 113252004-01-03 Jesper Harder <harder@ifa.au.dk>
11326 11326
11327 * progmodes/idlwave.el (idlwave-make-tags): 11327 * progmodes/idlwave.el (idlwave-make-tags):
11328 * textmodes/flyspell.el (flyspell-large-region):. 11328 * textmodes/flyspell.el (flyspell-large-region):.
@@ -11525,7 +11525,7 @@
11525 (table--put-cell-indicator-property): Put yank-handler property 11525 (table--put-cell-indicator-property): Put yank-handler property
11526 that indicates the yank handler for the table cell. 11526 that indicates the yank handler for the table cell.
11527 11527
115282003-12-29 Jesper Harder <harder@ifa.au.dk> (tiny change) 115282003-12-29 Jesper Harder <harder@ifa.au.dk>
11529 11529
11530 * generic-x.el (etc-modules-conf-generic-mode): A more complete 11530 * generic-x.el (etc-modules-conf-generic-mode): A more complete
11531 set of keywords. 11531 set of keywords.
@@ -11583,7 +11583,7 @@
11583 (ido-file-name-all-completions1): Return empty list for 11583 (ido-file-name-all-completions1): Return empty list for
11584 non-readable directory. 11584 non-readable directory.
11585 (ido-exhibit): Print [Not readable] if directory is not readable. 11585 (ido-exhibit): Print [Not readable] if directory is not readable.
11586 (ido-expand-directory): New defun (based on tiny fix from Karl Chen). 11586 (ido-expand-directory): New defun (based on fix from Karl Chen).
11587 (ido-read-file-name, ido-file-internal, ido-read-directory-name): 11587 (ido-read-file-name, ido-file-internal, ido-read-directory-name):
11588 Use it. 11588 Use it.
11589 11589
@@ -11921,7 +11921,7 @@
11921 (breakpoint-enabled-icon, breakpoint-disabled-icon): Set :ascent 11921 (breakpoint-enabled-icon, breakpoint-disabled-icon): Set :ascent
11922 to 100 for icons to avoid increasing line height when shown. 11922 to 100 for icons to avoid increasing line height when shown.
11923 11923
119242003-11-17 Jesper Harder <harder@ifa.au.dk> (tiny change) 119242003-11-17 Jesper Harder <harder@ifa.au.dk>
11925 11925
11926 * newcomment.el (comment-normalize-vars): Initialize properly if 11926 * newcomment.el (comment-normalize-vars): Initialize properly if
11927 comment-start was nil. 11927 comment-start was nil.
@@ -11935,7 +11935,7 @@
11935 * international/latin1-disp.el (latin1-display-ucs-per-lynx): 11935 * international/latin1-disp.el (latin1-display-ucs-per-lynx):
11936 Fix docstring. 11936 Fix docstring.
11937 11937
119382003-11-17 Jesper Harder <harder@ifa.au.dk> (tiny change) 119382003-11-17 Jesper Harder <harder@ifa.au.dk>
11939 11939
11940 * international/latin1-disp.el (latin1-display): Fix docstring. 11940 * international/latin1-disp.el (latin1-display): Fix docstring.
11941 11941
@@ -12665,12 +12665,12 @@
12665 * language/chinese.el ("Chinese-GB", "Chinese-BIG5"): Set up for 12665 * language/chinese.el ("Chinese-GB", "Chinese-BIG5"): Set up for
12666 using a Chinese tutorial. 12666 using a Chinese tutorial.
12667 12667
126682003-09-28 Jesper Harder <harder@ifa.au.dk> (tiny change) 126682003-09-28 Jesper Harder <harder@ifa.au.dk>
12669 12669
12670 * mail/smtpmail.el (smtpmail-via-smtp): Don't insert a space 12670 * mail/smtpmail.el (smtpmail-via-smtp): Don't insert a space
12671 between "MAIL FROM:" and "RCPT TO:" and the following address. 12671 between "MAIL FROM:" and "RCPT TO:" and the following address.
12672 12672
126732003-09-28 Jesper Harder <harder@ifa.au.dk> (tiny change) 126732003-09-28 Jesper Harder <harder@ifa.au.dk>
12674 12674
12675 * textmodes/text-mode.el (paragraph-indent-minor-mode): Doc fix. 12675 * textmodes/text-mode.el (paragraph-indent-minor-mode): Doc fix.
12676 12676
@@ -13685,7 +13685,7 @@
13685 * international/fontset.el (setup-default-fontset): 13685 * international/fontset.el (setup-default-fontset):
13686 Change registry names of Akurti fonts. 13686 Change registry names of Akurti fonts.
13687 13687
136882003-07-29 Jesper Harder <harder@ifa.au.dk> (tiny change) 136882003-07-29 Jesper Harder <harder@ifa.au.dk>
13689 13689
13690 * comint.el (comint-read-noecho): Use `clear-string' instead of 13690 * comint.el (comint-read-noecho): Use `clear-string' instead of
13691 `fillarray'. 13691 `fillarray'.
@@ -13701,7 +13701,7 @@
13701 (menu): Add gdb-restore-windows to menu. Make gdba 13701 (menu): Add gdb-restore-windows to menu. Make gdba
13702 specific menus only visible from gdba. 13702 specific menus only visible from gdba.
13703 13703
137042003-07-28 Tak Ota <Takaaki.Ota@am.sony.com> (tiny change) 137042003-07-28 Tak Ota <Takaaki.Ota@am.sony.com>
13705 13705
13706 * progmodes/compile.el (compilation-environment): New user variable. 13706 * progmodes/compile.el (compilation-environment): New user variable.
13707 (compile-internal): Respect it. 13707 (compile-internal): Respect it.
@@ -13930,7 +13930,7 @@
13930 * desktop.el (desktop-buffer-dired-misc-data, desktop-buffer-dired): 13930 * desktop.el (desktop-buffer-dired-misc-data, desktop-buffer-dired):
13931 Handle `dired-directory' being a list. 13931 Handle `dired-directory' being a list.
13932 13932
139332003-07-13 Jesper Harder <harder@ifa.au.dk> (tiny change) 139332003-07-13 Jesper Harder <harder@ifa.au.dk>
13934 13934
13935 * mail/smtpmail.el (smtpmail-send-it): Create smtpmail-queue-dir if 13935 * mail/smtpmail.el (smtpmail-send-it): Create smtpmail-queue-dir if
13936 it doesn't exist. 13936 it doesn't exist.
diff --git a/lisp/ChangeLog.3 b/lisp/ChangeLog.3
index 1fcfc5bd94a..c2379009c00 100644
--- a/lisp/ChangeLog.3
+++ b/lisp/ChangeLog.3
@@ -5091,7 +5091,7 @@
5091 * holidays.el (calendar-holiday-function-sexp): 5091 * holidays.el (calendar-holiday-function-sexp):
5092 New function. 5092 New function.
5093 *calendar.el (calendar-holidays): Describe it and use it for daylight 5093 *calendar.el (calendar-holidays): Describe it and use it for daylight
5094 savings. 5094 saving.
5095 5095
5096 * calendar.el, cal-mayan.el, cal-french.el: Change names of all 5096 * calendar.el, cal-mayan.el, cal-french.el: Change names of all
5097 calendar-goto-next- or calendar-goto-previous- commands to 5097 calendar-goto-next- or calendar-goto-previous- commands to
diff --git a/lisp/ChangeLog.4 b/lisp/ChangeLog.4
index fc7318d8feb..872a39fa4b2 100644
--- a/lisp/ChangeLog.4
+++ b/lisp/ChangeLog.4
@@ -6131,7 +6131,7 @@
6131 6131
6132 * cal-dst.el (calendar-time-zone-daylight-rules): Remove 6132 * cal-dst.el (calendar-time-zone-daylight-rules): Remove
6133 special case for Israel. Israel has changed its daylight 6133 special case for Israel. Israel has changed its daylight
6134 savings time rules. We don't know what the current rules are, 6134 saving time rules. We don't know what the current rules are,
6135 but the special case was definitely incorrect. 6135 but the special case was definitely incorrect.
6136 6136
61371993-09-06 Roland McGrath (roland@churchy.gnu.ai.mit.edu) 61371993-09-06 Roland McGrath (roland@churchy.gnu.ai.mit.edu)
@@ -8087,7 +8087,7 @@
8087 (general-holidays, calendar-holidays, hebrew-holidays, 8087 (general-holidays, calendar-holidays, hebrew-holidays,
8088 christian-holidays, islamic-holidays, 8088 christian-holidays, islamic-holidays,
8089 solar-holidays): Rewritten to include require of cal-dst.el and to 8089 solar-holidays): Rewritten to include require of cal-dst.el and to
8090 show the time of the change to/from daylight savings time. 8090 show the time of the change to/from daylight saving time.
8091 (calendar-current-time-zone, calendar-time-zone, 8091 (calendar-current-time-zone, calendar-time-zone,
8092 calendar-daylight-time-offset, calendar-standard-time-zone-name, 8092 calendar-daylight-time-offset, calendar-standard-time-zone-name,
8093 calendar-daylight-time-zone-name, calendar-daylight-savings-starts, 8093 calendar-daylight-time-zone-name, calendar-daylight-savings-starts,
@@ -8772,7 +8772,7 @@
8772 (solar-time-string): Use calendar-daylight-time-offset instead of 8772 (solar-time-string): Use calendar-daylight-time-offset instead of
8773 1 hr, and use calendar-daylight-savings-switchover-time instead of 8773 1 hr, and use calendar-daylight-savings-switchover-time instead of
8774 midnight. Add an optional parameter to allow forcing the use of 8774 midnight. Add an optional parameter to allow forcing the use of
8775 standard or daylight savings time. Fix code so it works in 8775 standard or daylight saving time. Fix code so it works in
8776 southern hemisphere (start of dst precedes end of dst in a 8776 southern hemisphere (start of dst precedes end of dst in a
8777 calendar year) and when dst either starts or ends in a calendar 8777 calendar year) and when dst either starts or ends in a calendar
8778 year, but not both. 8778 year, but not both.
diff --git a/lisp/ChangeLog.5 b/lisp/ChangeLog.5
index dbc9ddc6b04..10ac1321a35 100644
--- a/lisp/ChangeLog.5
+++ b/lisp/ChangeLog.5
@@ -989,7 +989,7 @@
989 989
990 * easymenu.el (easy-menu-do-define): Add autoload cookie. 990 * easymenu.el (easy-menu-do-define): Add autoload cookie.
991 991
9921995-05-19 Kevin Rodgers <kevinr@ihs.com> 9921995-05-19 Kevin Rodgers <kevinr@ihs.com> (tiny change)
993 993
994 * mailalias.el (expand-mail-aliases): Expand aliases in 994 * mailalias.el (expand-mail-aliases): Expand aliases in
995 From and Reply-to headers as well, plus the Resent- variants. 995 From and Reply-to headers as well, plus the Resent- variants.
@@ -8278,7 +8278,7 @@
8278 8278
8279 * indent.el (move-to-tab-stop): Delete spurious multiple definition. 8279 * indent.el (move-to-tab-stop): Delete spurious multiple definition.
8280 8280
82811994-07-11 Kevin Rodgers <kevinr@ihs.com> 82811994-07-11 Kevin Rodgers <kevinr@ihs.com> (tiny change)
8282 8282
8283 * mailabbrev.el (define-mail-abbrev): Don't try to parse empty aliases. 8283 * mailabbrev.el (define-mail-abbrev): Don't try to parse empty aliases.
8284 8284
@@ -8906,7 +8906,7 @@
8906 8906
8907 * faces.el (x-create-frame-with-faces): Set the cursor color last. 8907 * faces.el (x-create-frame-with-faces): Set the cursor color last.
8908 8908
89091994-06-17 Kevin Rodgers (kevinr@ihs.com) 89091994-06-17 Kevin Rodgers (kevinr@ihs.com) (tiny change)
8910 8910
8911 * mailabbrev.el (build-mail-abbrevs): Pass a recursivep argument in 8911 * mailabbrev.el (build-mail-abbrevs): Pass a recursivep argument in
8912 recursive call. 8912 recursive call.
diff --git a/lisp/ChangeLog.7 b/lisp/ChangeLog.7
index d9923a02016..4124a1dd955 100644
--- a/lisp/ChangeLog.7
+++ b/lisp/ChangeLog.7
@@ -1297,7 +1297,7 @@
1297 1297
1298 * language/misc-lang.el ("IPA"): Add coding-priority and coding-system. 1298 * language/misc-lang.el ("IPA"): Add coding-priority and coding-system.
1299 1299
13001998-07-07 Kevin Rodgers <kevinr@ihs.com> 13001998-07-07 Kevin Rodgers <kevinr@ihs.com> (tiny change)
1301 1301
1302 * vc.el (vc-finish-logentry): Only delete windows in the 1302 * vc.el (vc-finish-logentry): Only delete windows in the
1303 selected frame displaying the *VC-log* buffer, in case another 1303 selected frame displaying the *VC-log* buffer, in case another
@@ -2475,7 +2475,7 @@
2475 * rsz-mini.el (resize-minibuffer-mode): 2475 * rsz-mini.el (resize-minibuffer-mode):
2476 * iswitchb.el (iswitchb-read-buffer): Add autoload cookie. 2476 * iswitchb.el (iswitchb-read-buffer): Add autoload cookie.
2477 2477
24781998-06-03 Kevin Rodgers <kevinr@ihs.com> 24781998-06-03 Kevin Rodgers <kevinr@ihs.com> (tiny change)
2479 2479
2480 * replace.el (esc-map): Bind C-M-% to query-replace-regexp. 2480 * replace.el (esc-map): Bind C-M-% to query-replace-regexp.
2481 2481
@@ -7508,7 +7508,7 @@
7508 * avoid.el (mouse-avoidance-mode): Variable customized to 7508 * avoid.el (mouse-avoidance-mode): Variable customized to
7509 automatically load the package. 7509 automatically load the package.
7510 7510
75111997-12-22 Kevin Rodgers <kevinr@ihs.com> 75111997-12-22 Kevin Rodgers <kevinr@ihs.com> (tiny change)
7512 7512
7513 * simple.el (previous-matching-history-element): Bind 7513 * simple.el (previous-matching-history-element): Bind
7514 case-fold-search to nil if REGEXP contains an uppercase letter. 7514 case-fold-search to nil if REGEXP contains an uppercase letter.
@@ -8260,7 +8260,7 @@
8260 8260
8261 * cal-tex.el (cal-tex-cursor-week-iso): Delete spurious %. 8261 * cal-tex.el (cal-tex-cursor-week-iso): Delete spurious %.
8262 8262
82631997-11-02 Kevin Rodgers <kevinr@airedale.ihs.com> 82631997-11-02 Kevin Rodgers <kevinr@ihs.com>
8264 8264
8265 * emacs-lisp/byte-opt.el (byte-optimize-concat): New function. 8265 * emacs-lisp/byte-opt.el (byte-optimize-concat): New function.
8266 8266
@@ -21588,7 +21588,7 @@
21588 21588
21589 * time-stamp.el (time-stamp-dd/mm/yyyy): New function. 21589 * time-stamp.el (time-stamp-dd/mm/yyyy): New function.
21590 21590
215911996-11-04 Kevin Rodgers <evinr@ihs.com> 215911996-11-04 Kevin Rodgers <kevinr@ihs.com>
21592 21592
21593 * compile.el (compile-highlight-display-limit): New variable. 21593 * compile.el (compile-highlight-display-limit): New variable.
21594 (compilation-handle-exit): Parse error messages here 21594 (compilation-handle-exit): Parse error messages here
diff --git a/lisp/ChangeLog.8 b/lisp/ChangeLog.8
index d89de848b59..4dfb876c086 100644
--- a/lisp/ChangeLog.8
+++ b/lisp/ChangeLog.8
@@ -9846,7 +9846,7 @@
9846 * gnus/gnus-start.el (gnus-save-newsrc-file): Bind 9846 * gnus/gnus-start.el (gnus-save-newsrc-file): Bind
9847 coding-system-for-write before saving. 9847 coding-system-for-write before saving.
9848 9848
98491998-08-26 Kevin Rodgers <kevinr@ihs.com> 98491998-08-26 Kevin Rodgers <kevinr@ihs.com> (tiny change)
9850 9850
9851 * isearch.el (isearch-forward): Doc fix. 9851 * isearch.el (isearch-forward): Doc fix.
9852 9852
diff --git a/lisp/Makefile.in b/lisp/Makefile.in
index 3e155bf2b89..8adaa27e619 100644
--- a/lisp/Makefile.in
+++ b/lisp/Makefile.in
@@ -87,12 +87,12 @@ doit:
87 87
88$(lisp)/cus-load.el: 88$(lisp)/cus-load.el:
89 touch $@ 89 touch $@
90custom-deps: $(lisp)/loaddefs.el $(lisp)/cus-load.el doit 90custom-deps: $(lisp)/subdirs.el $(lisp)/loaddefs.el $(lisp)/cus-load.el doit
91 wd=$(lisp); $(setwins_almost); \ 91 wd=$(lisp); $(setwins_almost); \
92 echo Directories: $$wins; \ 92 echo Directories: $$wins; \
93 $(EMACS) $(EMACSOPT) -l cus-dep --eval '(setq generated-custom-dependencies-file "$(lisp)/cus-load.el")' -f custom-make-dependencies $$wins 93 $(EMACS) $(EMACSOPT) -l cus-dep --eval '(setq generated-custom-dependencies-file "$(lisp)/cus-load.el")' -f custom-make-dependencies $$wins
94 94
95finder-data: $(lisp)/loaddefs.el doit 95finder-data: $(lisp)/subdirs.el $(lisp)/loaddefs.el doit
96 wd=$(lisp); $(setwins_almost); \ 96 wd=$(lisp); $(setwins_almost); \
97 echo Directories: $$wins; \ 97 echo Directories: $$wins; \
98 $(EMACS) $(EMACSOPT) -l finder --eval '(setq generated-finder-keywords-file "$(lisp)/finder-inf.el")' -f finder-compile-keywords-make-dist $$wins 98 $(EMACS) $(EMACSOPT) -l finder --eval '(setq generated-finder-keywords-file "$(lisp)/finder-inf.el")' -f finder-compile-keywords-make-dist $$wins
@@ -107,7 +107,7 @@ $(lisp)/loaddefs.el:
107 echo ";; no-update-autoloads: t" >> $@ 107 echo ";; no-update-autoloads: t" >> $@
108 echo ";; End:" >> $@ 108 echo ";; End:" >> $@
109 echo ";;; loaddefs.el ends here" >> $@ 109 echo ";;; loaddefs.el ends here" >> $@
110autoloads: $(lisp)/loaddefs.el doit 110autoloads: $(lisp)/subdirs.el $(lisp)/loaddefs.el doit
111 wd=$(lisp); $(setwins_almost); \ 111 wd=$(lisp); $(setwins_almost); \
112 echo Directories: $$wins; \ 112 echo Directories: $$wins; \
113 $(EMACS) $(EMACSOPT) -l autoload --eval '(setq generated-autoload-file "$(lisp)/loaddefs.el")' -f batch-update-autoloads $$wins 113 $(EMACS) $(EMACSOPT) -l autoload --eval '(setq generated-autoload-file "$(lisp)/loaddefs.el")' -f batch-update-autoloads $$wins
diff --git a/lisp/abbrev.el b/lisp/abbrev.el
index 1363ccee561..83a3fbbe49d 100644
--- a/lisp/abbrev.el
+++ b/lisp/abbrev.el
@@ -363,5 +363,7 @@ A prefix argument means don't query; expand all abbrevs."
363 (if (or noquery (y-or-n-p (format "Expand `%s'? " string))) 363 (if (or noquery (y-or-n-p (format "Expand `%s'? " string)))
364 (expand-abbrev))))))) 364 (expand-abbrev)))))))
365 365
366(provide 'abbrev)
367
366;; arch-tag: dbd6f3ae-dfe3-40ba-b00f-f9e3ff960df5 368;; arch-tag: dbd6f3ae-dfe3-40ba-b00f-f9e3ff960df5
367;;; abbrev.el ends here 369;;; abbrev.el ends here
diff --git a/lisp/autorevert.el b/lisp/autorevert.el
index cb8821bb64c..bd9d6fe76e8 100644
--- a/lisp/autorevert.el
+++ b/lisp/autorevert.el
@@ -457,6 +457,7 @@ This is an internal function used by Auto-Revert Mode."
457 (save-excursion 457 (save-excursion
458 (goto-char (point-max)) 458 (goto-char (point-max))
459 (insert-file-contents file nil auto-revert-tail-pos size))) 459 (insert-file-contents file nil auto-revert-tail-pos size)))
460 (run-mode-hooks 'after-revert-hook)
460 (undo-boundary) 461 (undo-boundary)
461 (setq auto-revert-tail-pos size) 462 (setq auto-revert-tail-pos size)
462 (set-buffer-modified-p modified))) 463 (set-buffer-modified-p modified)))
diff --git a/lisp/calc/calc-aent.el b/lisp/calc/calc-aent.el
index e0727e17afb..988b0240067 100644
--- a/lisp/calc/calc-aent.el
+++ b/lisp/calc/calc-aent.el
@@ -8,20 +8,20 @@
8 8
9;; This file is part of GNU Emacs. 9;; This file is part of GNU Emacs.
10 10
11;; GNU Emacs is free software; you can redistribute it and/or modify
12;; it under the terms of the GNU General Public License as published by
13;; the Free Software Foundation; either version 2, or (at your option)
14;; any later version.
15
11;; GNU Emacs is distributed in the hope that it will be useful, 16;; GNU Emacs is distributed in the hope that it will be useful,
12;; but WITHOUT ANY WARRANTY. No author or distributor 17;; but WITHOUT ANY WARRANTY; without even the implied warranty of
13;; accepts responsibility to anyone for the consequences of using it 18;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14;; or for whether it serves any particular purpose or works at all, 19;; GNU General Public License for more details.
15;; unless he says so in writing. Refer to the GNU Emacs General Public 20
16;; License for full details. 21;; You should have received a copy of the GNU General Public License
17 22;; along with GNU Emacs; see the file COPYING. If not, write to the
18;; Everyone is granted permission to copy, modify and redistribute 23;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
19;; GNU Emacs, but only under the conditions described in the 24;; Boston, MA 02110-1301, USA.
20;; GNU Emacs General Public License. A copy of this license is
21;; supposed to have been given to you along with GNU Emacs so you
22;; can know your rights and responsibilities. It should be in a
23;; file named COPYING. Among other things, the copyright notice
24;; and this notice must be preserved on all copies.
25 25
26;;; Commentary: 26;;; Commentary:
27 27
diff --git a/lisp/calc/calc-alg.el b/lisp/calc/calc-alg.el
index e66be236782..2037ed099af 100644
--- a/lisp/calc/calc-alg.el
+++ b/lisp/calc/calc-alg.el
@@ -8,20 +8,20 @@
8 8
9;; This file is part of GNU Emacs. 9;; This file is part of GNU Emacs.
10 10
11;; GNU Emacs is free software; you can redistribute it and/or modify
12;; it under the terms of the GNU General Public License as published by
13;; the Free Software Foundation; either version 2, or (at your option)
14;; any later version.
15
11;; GNU Emacs is distributed in the hope that it will be useful, 16;; GNU Emacs is distributed in the hope that it will be useful,
12;; but WITHOUT ANY WARRANTY. No author or distributor 17;; but WITHOUT ANY WARRANTY; without even the implied warranty of
13;; accepts responsibility to anyone for the consequences of using it 18;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14;; or for whether it serves any particular purpose or works at all, 19;; GNU General Public License for more details.
15;; unless he says so in writing. Refer to the GNU Emacs General Public 20
16;; License for full details. 21;; You should have received a copy of the GNU General Public License
17 22;; along with GNU Emacs; see the file COPYING. If not, write to the
18;; Everyone is granted permission to copy, modify and redistribute 23;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
19;; GNU Emacs, but only under the conditions described in the 24;; Boston, MA 02110-1301, USA.
20;; GNU Emacs General Public License. A copy of this license is
21;; supposed to have been given to you along with GNU Emacs so you
22;; can know your rights and responsibilities. It should be in a
23;; file named COPYING. Among other things, the copyright notice
24;; and this notice must be preserved on all copies.
25 25
26;;; Commentary: 26;;; Commentary:
27 27
diff --git a/lisp/calc/calc-arith.el b/lisp/calc/calc-arith.el
index 0f6f6d6fbf0..6d56365fc9c 100644
--- a/lisp/calc/calc-arith.el
+++ b/lisp/calc/calc-arith.el
@@ -8,20 +8,20 @@
8 8
9;; This file is part of GNU Emacs. 9;; This file is part of GNU Emacs.
10 10
11;; GNU Emacs is free software; you can redistribute it and/or modify
12;; it under the terms of the GNU General Public License as published by
13;; the Free Software Foundation; either version 2, or (at your option)
14;; any later version.
15
11;; GNU Emacs is distributed in the hope that it will be useful, 16;; GNU Emacs is distributed in the hope that it will be useful,
12;; but WITHOUT ANY WARRANTY. No author or distributor 17;; but WITHOUT ANY WARRANTY; without even the implied warranty of
13;; accepts responsibility to anyone for the consequences of using it 18;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14;; or for whether it serves any particular purpose or works at all, 19;; GNU General Public License for more details.
15;; unless he says so in writing. Refer to the GNU Emacs General Public 20
16;; License for full details. 21;; You should have received a copy of the GNU General Public License
17 22;; along with GNU Emacs; see the file COPYING. If not, write to the
18;; Everyone is granted permission to copy, modify and redistribute 23;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
19;; GNU Emacs, but only under the conditions described in the 24;; Boston, MA 02110-1301, USA.
20;; GNU Emacs General Public License. A copy of this license is
21;; supposed to have been given to you along with GNU Emacs so you
22;; can know your rights and responsibilities. It should be in a
23;; file named COPYING. Among other things, the copyright notice
24;; and this notice must be preserved on all copies.
25 25
26;;; Commentary: 26;;; Commentary:
27 27
diff --git a/lisp/calc/calc-bin.el b/lisp/calc/calc-bin.el
index 7c82c5f1de8..07be863a99a 100644
--- a/lisp/calc/calc-bin.el
+++ b/lisp/calc/calc-bin.el
@@ -8,20 +8,20 @@
8 8
9;; This file is part of GNU Emacs. 9;; This file is part of GNU Emacs.
10 10
11;; GNU Emacs is free software; you can redistribute it and/or modify
12;; it under the terms of the GNU General Public License as published by
13;; the Free Software Foundation; either version 2, or (at your option)
14;; any later version.
15
11;; GNU Emacs is distributed in the hope that it will be useful, 16;; GNU Emacs is distributed in the hope that it will be useful,
12;; but WITHOUT ANY WARRANTY. No author or distributor 17;; but WITHOUT ANY WARRANTY; without even the implied warranty of
13;; accepts responsibility to anyone for the consequences of using it 18;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14;; or for whether it serves any particular purpose or works at all, 19;; GNU General Public License for more details.
15;; unless he says so in writing. Refer to the GNU Emacs General Public 20
16;; License for full details. 21;; You should have received a copy of the GNU General Public License
17 22;; along with GNU Emacs; see the file COPYING. If not, write to the
18;; Everyone is granted permission to copy, modify and redistribute 23;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
19;; GNU Emacs, but only under the conditions described in the 24;; Boston, MA 02110-1301, USA.
20;; GNU Emacs General Public License. A copy of this license is
21;; supposed to have been given to you along with GNU Emacs so you
22;; can know your rights and responsibilities. It should be in a
23;; file named COPYING. Among other things, the copyright notice
24;; and this notice must be preserved on all copies.
25 25
26;;; Commentary: 26;;; Commentary:
27 27
diff --git a/lisp/calc/calc-comb.el b/lisp/calc/calc-comb.el
index b47f3b3c222..eed8124494f 100644
--- a/lisp/calc/calc-comb.el
+++ b/lisp/calc/calc-comb.el
@@ -8,20 +8,20 @@
8 8
9;; This file is part of GNU Emacs. 9;; This file is part of GNU Emacs.
10 10
11;; GNU Emacs is free software; you can redistribute it and/or modify
12;; it under the terms of the GNU General Public License as published by
13;; the Free Software Foundation; either version 2, or (at your option)
14;; any later version.
15
11;; GNU Emacs is distributed in the hope that it will be useful, 16;; GNU Emacs is distributed in the hope that it will be useful,
12;; but WITHOUT ANY WARRANTY. No author or distributor 17;; but WITHOUT ANY WARRANTY; without even the implied warranty of
13;; accepts responsibility to anyone for the consequences of using it 18;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14;; or for whether it serves any particular purpose or works at all, 19;; GNU General Public License for more details.
15;; unless he says so in writing. Refer to the GNU Emacs General Public 20
16;; License for full details. 21;; You should have received a copy of the GNU General Public License
17 22;; along with GNU Emacs; see the file COPYING. If not, write to the
18;; Everyone is granted permission to copy, modify and redistribute 23;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
19;; GNU Emacs, but only under the conditions described in the 24;; Boston, MA 02110-1301, USA.
20;; GNU Emacs General Public License. A copy of this license is
21;; supposed to have been given to you along with GNU Emacs so you
22;; can know your rights and responsibilities. It should be in a
23;; file named COPYING. Among other things, the copyright notice
24;; and this notice must be preserved on all copies.
25 25
26;;; Commentary: 26;;; Commentary:
27 27
diff --git a/lisp/calc/calc-cplx.el b/lisp/calc/calc-cplx.el
index aa454b7454f..de2cfd8354c 100644
--- a/lisp/calc/calc-cplx.el
+++ b/lisp/calc/calc-cplx.el
@@ -8,20 +8,20 @@
8 8
9;; This file is part of GNU Emacs. 9;; This file is part of GNU Emacs.
10 10
11;; GNU Emacs is free software; you can redistribute it and/or modify
12;; it under the terms of the GNU General Public License as published by
13;; the Free Software Foundation; either version 2, or (at your option)
14;; any later version.
15
11;; GNU Emacs is distributed in the hope that it will be useful, 16;; GNU Emacs is distributed in the hope that it will be useful,
12;; but WITHOUT ANY WARRANTY. No author or distributor 17;; but WITHOUT ANY WARRANTY; without even the implied warranty of
13;; accepts responsibility to anyone for the consequences of using it 18;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14;; or for whether it serves any particular purpose or works at all, 19;; GNU General Public License for more details.
15;; unless he says so in writing. Refer to the GNU Emacs General Public 20
16;; License for full details. 21;; You should have received a copy of the GNU General Public License
17 22;; along with GNU Emacs; see the file COPYING. If not, write to the
18;; Everyone is granted permission to copy, modify and redistribute 23;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
19;; GNU Emacs, but only under the conditions described in the 24;; Boston, MA 02110-1301, USA.
20;; GNU Emacs General Public License. A copy of this license is
21;; supposed to have been given to you along with GNU Emacs so you
22;; can know your rights and responsibilities. It should be in a
23;; file named COPYING. Among other things, the copyright notice
24;; and this notice must be preserved on all copies.
25 25
26;;; Commentary: 26;;; Commentary:
27 27
diff --git a/lisp/calc/calc-embed.el b/lisp/calc/calc-embed.el
index 9313802ab86..eb35b8a7a4b 100644
--- a/lisp/calc/calc-embed.el
+++ b/lisp/calc/calc-embed.el
@@ -8,20 +8,20 @@
8 8
9;; This file is part of GNU Emacs. 9;; This file is part of GNU Emacs.
10 10
11;; GNU Emacs is free software; you can redistribute it and/or modify
12;; it under the terms of the GNU General Public License as published by
13;; the Free Software Foundation; either version 2, or (at your option)
14;; any later version.
15
11;; GNU Emacs is distributed in the hope that it will be useful, 16;; GNU Emacs is distributed in the hope that it will be useful,
12;; but WITHOUT ANY WARRANTY. No author or distributor 17;; but WITHOUT ANY WARRANTY; without even the implied warranty of
13;; accepts responsibility to anyone for the consequences of using it 18;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14;; or for whether it serves any particular purpose or works at all, 19;; GNU General Public License for more details.
15;; unless he says so in writing. Refer to the GNU Emacs General Public 20
16;; License for full details. 21;; You should have received a copy of the GNU General Public License
17 22;; along with GNU Emacs; see the file COPYING. If not, write to the
18;; Everyone is granted permission to copy, modify and redistribute 23;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
19;; GNU Emacs, but only under the conditions described in the 24;; Boston, MA 02110-1301, USA.
20;; GNU Emacs General Public License. A copy of this license is
21;; supposed to have been given to you along with GNU Emacs so you
22;; can know your rights and responsibilities. It should be in a
23;; file named COPYING. Among other things, the copyright notice
24;; and this notice must be preserved on all copies.
25 25
26;;; Commentary: 26;;; Commentary:
27 27
diff --git a/lisp/calc/calc-ext.el b/lisp/calc/calc-ext.el
index 2eeae51613d..22b366a04d9 100644
--- a/lisp/calc/calc-ext.el
+++ b/lisp/calc/calc-ext.el
@@ -8,20 +8,20 @@
8 8
9;; This file is part of GNU Emacs. 9;; This file is part of GNU Emacs.
10 10
11;; GNU Emacs is free software; you can redistribute it and/or modify
12;; it under the terms of the GNU General Public License as published by
13;; the Free Software Foundation; either version 2, or (at your option)
14;; any later version.
15
11;; GNU Emacs is distributed in the hope that it will be useful, 16;; GNU Emacs is distributed in the hope that it will be useful,
12;; but WITHOUT ANY WARRANTY. No author or distributor 17;; but WITHOUT ANY WARRANTY; without even the implied warranty of
13;; accepts responsibility to anyone for the consequences of using it 18;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14;; or for whether it serves any particular purpose or works at all, 19;; GNU General Public License for more details.
15;; unless he says so in writing. Refer to the GNU Emacs General Public 20
16;; License for full details. 21;; You should have received a copy of the GNU General Public License
17 22;; along with GNU Emacs; see the file COPYING. If not, write to the
18;; Everyone is granted permission to copy, modify and redistribute 23;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
19;; GNU Emacs, but only under the conditions described in the 24;; Boston, MA 02110-1301, USA.
20;; GNU Emacs General Public License. A copy of this license is
21;; supposed to have been given to you along with GNU Emacs so you
22;; can know your rights and responsibilities. It should be in a
23;; file named COPYING. Among other things, the copyright notice
24;; and this notice must be preserved on all copies.
25 25
26;;; Commentary: 26;;; Commentary:
27 27
diff --git a/lisp/calc/calc-fin.el b/lisp/calc/calc-fin.el
index 008e38a1e73..24516f65535 100644
--- a/lisp/calc/calc-fin.el
+++ b/lisp/calc/calc-fin.el
@@ -8,20 +8,20 @@
8 8
9;; This file is part of GNU Emacs. 9;; This file is part of GNU Emacs.
10 10
11;; GNU Emacs is free software; you can redistribute it and/or modify
12;; it under the terms of the GNU General Public License as published by
13;; the Free Software Foundation; either version 2, or (at your option)
14;; any later version.
15
11;; GNU Emacs is distributed in the hope that it will be useful, 16;; GNU Emacs is distributed in the hope that it will be useful,
12;; but WITHOUT ANY WARRANTY. No author or distributor 17;; but WITHOUT ANY WARRANTY; without even the implied warranty of
13;; accepts responsibility to anyone for the consequences of using it 18;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14;; or for whether it serves any particular purpose or works at all, 19;; GNU General Public License for more details.
15;; unless he says so in writing. Refer to the GNU Emacs General Public 20
16;; License for full details. 21;; You should have received a copy of the GNU General Public License
17 22;; along with GNU Emacs; see the file COPYING. If not, write to the
18;; Everyone is granted permission to copy, modify and redistribute 23;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
19;; GNU Emacs, but only under the conditions described in the 24;; Boston, MA 02110-1301, USA.
20;; GNU Emacs General Public License. A copy of this license is
21;; supposed to have been given to you along with GNU Emacs so you
22;; can know your rights and responsibilities. It should be in a
23;; file named COPYING. Among other things, the copyright notice
24;; and this notice must be preserved on all copies.
25 25
26;;; Commentary: 26;;; Commentary:
27 27
diff --git a/lisp/calc/calc-forms.el b/lisp/calc/calc-forms.el
index 00c43af7c59..3f368499395 100644
--- a/lisp/calc/calc-forms.el
+++ b/lisp/calc/calc-forms.el
@@ -8,20 +8,20 @@
8 8
9;; This file is part of GNU Emacs. 9;; This file is part of GNU Emacs.
10 10
11;; GNU Emacs is free software; you can redistribute it and/or modify
12;; it under the terms of the GNU General Public License as published by
13;; the Free Software Foundation; either version 2, or (at your option)
14;; any later version.
15
11;; GNU Emacs is distributed in the hope that it will be useful, 16;; GNU Emacs is distributed in the hope that it will be useful,
12;; but WITHOUT ANY WARRANTY. No author or distributor 17;; but WITHOUT ANY WARRANTY; without even the implied warranty of
13;; accepts responsibility to anyone for the consequences of using it 18;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14;; or for whether it serves any particular purpose or works at all, 19;; GNU General Public License for more details.
15;; unless he says so in writing. Refer to the GNU Emacs General Public 20
16;; License for full details. 21;; You should have received a copy of the GNU General Public License
17 22;; along with GNU Emacs; see the file COPYING. If not, write to the
18;; Everyone is granted permission to copy, modify and redistribute 23;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
19;; GNU Emacs, but only under the conditions described in the 24;; Boston, MA 02110-1301, USA.
20;; GNU Emacs General Public License. A copy of this license is
21;; supposed to have been given to you along with GNU Emacs so you
22;; can know your rights and responsibilities. It should be in a
23;; file named COPYING. Among other things, the copyright notice
24;; and this notice must be preserved on all copies.
25 25
26;;; Commentary: 26;;; Commentary:
27 27
@@ -508,7 +508,7 @@
508 508
509(defvar math-format-date-cache nil) 509(defvar math-format-date-cache nil)
510 510
511;; The variables math-fd-date, math-fd-dt, math-fd-year, 511;; The variables math-fd-date, math-fd-dt, math-fd-year,
512;; math-fd-month, math-fd-day, math-fd-weekday, math-fd-hour, 512;; math-fd-month, math-fd-day, math-fd-weekday, math-fd-hour,
513;; math-fd-minute, math-fd-second, math-fd-bc-flag are local 513;; math-fd-minute, math-fd-second, math-fd-bc-flag are local
514;; to math-format-date, but are used by math-format-date-part, 514;; to math-format-date, but are used by math-format-date-part,
@@ -533,7 +533,7 @@
533 (calc-group-digits nil) 533 (calc-group-digits nil)
534 (calc-leading-zeros nil) 534 (calc-leading-zeros nil)
535 (calc-number-radix 10) 535 (calc-number-radix 10)
536 math-fd-year math-fd-month math-fd-day math-fd-weekday 536 math-fd-year math-fd-month math-fd-day math-fd-weekday
537 math-fd-hour math-fd-minute math-fd-second 537 math-fd-hour math-fd-minute math-fd-second
538 (math-fd-bc-flag nil) 538 (math-fd-bc-flag nil)
539 (fmt (apply 'concat (mapcar 'math-format-date-part 539 (fmt (apply 'concat (mapcar 'math-format-date-part
@@ -570,7 +570,7 @@
570 math-fd-year (car math-fd-dt) 570 math-fd-year (car math-fd-dt)
571 math-fd-month (nth 1 math-fd-dt) 571 math-fd-month (nth 1 math-fd-dt)
572 math-fd-day (nth 2 math-fd-dt) 572 math-fd-day (nth 2 math-fd-dt)
573 math-fd-weekday (math-mod 573 math-fd-weekday (math-mod
574 (math-add (math-floor math-fd-date) 6) 7) 574 (math-add (math-floor math-fd-date) 6) 7)
575 math-fd-hour (nth 3 math-fd-dt) 575 math-fd-hour (nth 3 math-fd-dt)
576 math-fd-minute (nth 4 math-fd-dt) 576 math-fd-minute (nth 4 math-fd-dt)
@@ -727,8 +727,8 @@
727 (a nil) (b nil) (c nil) (bigyear nil) temp) 727 (a nil) (b nil) (c nil) (bigyear nil) temp)
728 728
729 ;; Extract the time, if any. 729 ;; Extract the time, if any.
730 (if (or (string-match "\\([0-9][0-9]?\\):\\([0-9][0-9]?\\)\\(:\\([0-9][0-9]?\\(\\.[0-9]+\\)?\\)\\)? *\\([ap]m?\\|[ap]\\. *m\\.\\|noon\\|n\\>\\|midnight\\|mid\\>\\|m\\>\\)?" math-pd-str) 730 (if (or (string-match "\\([0-9][0-9]?\\):\\([0-9][0-9]?\\)\\(:\\([0-9][0-9]?\\(\\.[0-9]+\\)?\\)\\)? *\\([ap]\\>\\|[ap]m\\|[ap]\\. *m\\.\\|noon\\|n\\>\\|midnight\\|mid\\>\\|m\\>\\)?" math-pd-str)
731 (string-match "\\([0-9][0-9]?\\)\\(\\)\\(\\(\\(\\)\\)\\) *\\([ap]m?\\|[ap]\\. *m\\.\\|noon\\|n\\>\\|midnight\\|mid\\>\\|m\\>\\)" math-pd-str)) 731 (string-match "\\([0-9][0-9]?\\)\\(\\)\\(\\(\\(\\)\\)\\) *\\([ap]\\>\\|[ap]m\\|[ap]\\. *m\\.\\|noon\\|n\\>\\|midnight\\|mid\\>\\|m\\>\\)" math-pd-str))
732 (let ((ampm (math-match-substring math-pd-str 6))) 732 (let ((ampm (math-match-substring math-pd-str 6)))
733 (setq hour (string-to-number (math-match-substring math-pd-str 1)) 733 (setq hour (string-to-number (math-match-substring math-pd-str 1))
734 minute (math-match-substring math-pd-str 2) 734 minute (math-match-substring math-pd-str 2)
@@ -784,7 +784,7 @@
784 (while (and (string-match "[-+]?0*[1-9][0-9][0-9][0-9][0-9]+" math-pd-str) 784 (while (and (string-match "[-+]?0*[1-9][0-9][0-9][0-9][0-9]+" math-pd-str)
785 (setq temp (concat (substring math-pd-str 0 (match-beginning 0)) 785 (setq temp (concat (substring math-pd-str 0 (match-beginning 0))
786 (substring math-pd-str (match-end 0)))) 786 (substring math-pd-str (match-end 0))))
787 (string-match 787 (string-match
788 "[4-9][0-9]\\|[0-9][0-9][0-9]\\|[-+][0-9]+[^-]*\\'" temp)) 788 "[4-9][0-9]\\|[0-9][0-9][0-9]\\|[-+][0-9]+[^-]*\\'" temp))
789 (setq math-pd-str temp)) 789 (setq math-pd-str temp))
790 790
@@ -1173,7 +1173,7 @@
1173;;; Note: Longer names must appear before shorter names which are 1173;;; Note: Longer names must appear before shorter names which are
1174;;; substrings of them. 1174;;; substrings of them.
1175(defvar math-tzone-names 1175(defvar math-tzone-names
1176 '(( "UTC" 0 0) 1176 '(( "UTC" 0 0)
1177 ( "MEGT" -1 "MET" "METDST" ) ; Middle Europe 1177 ( "MEGT" -1 "MET" "METDST" ) ; Middle Europe
1178 ( "METDST" -1 -1 ) ( "MET" -1 0 ) 1178 ( "METDST" -1 -1 ) ( "MET" -1 0 )
1179 ( "MEGZ" -1 "MEZ" "MESZ" ) ( "MEZ" -1 0 ) ( "MESZ" -1 -1 ) 1179 ( "MEGZ" -1 "MEZ" "MESZ" ) ( "MEZ" -1 0 ) ( "MESZ" -1 -1 )
@@ -1312,9 +1312,42 @@
1312 (calcFunc-unixtime (calcFunc-unixtime date z1) z2))) 1312 (calcFunc-unixtime (calcFunc-unixtime date z1) z2)))
1313 1313
1314(defun math-std-daylight-savings (date dt zone bump) 1314(defun math-std-daylight-savings (date dt zone bump)
1315 "Standard North American daylight savings algorithm. 1315 "Standard North American daylight saving algorithm.
1316This implements the rules for the U.S. and Canada as of 1987. 1316Before 2007, this uses `math-std-daylight-savings-old', where
1317Daylight savings begins on the first Sunday of April at 2 a.m., 1317daylight saving began on the first Sunday of April at 2 a.m.,
1318and ended on the last Sunday of October at 2 a.m.
1319As of 2007, this uses `math-std-daylight-savings-new', where
1320daylight saving begins on the second Sunday of March at 2 a.m.,
1321and ends on the first Sunday of November at 2 a.m."
1322 (if (< (car dt) 2007)
1323 (math-std-daylight-savings-old date dt zone bump)
1324 (math-std-daylight-savings-new date dt zone bump)))
1325
1326(defun math-std-daylight-savings-new (date dt zone bump)
1327 "Standard North American daylight saving algorithm as of 2007.
1328This implements the rules for the U.S. and Canada.
1329Daylight saving begins on the second Sunday of March at 2 a.m.,
1330and ends on the first Sunday of November at 2 a.m."
1331 (cond ((< (nth 1 dt) 3) 0)
1332 ((= (nth 1 dt) 3)
1333 (let ((sunday (math-prev-weekday-in-month date dt 14 0)))
1334 (cond ((< (nth 2 dt) sunday) 0)
1335 ((= (nth 2 dt) sunday)
1336 (if (>= (nth 3 dt) (+ 3 bump)) -1 0))
1337 (t -1))))
1338 ((< (nth 1 dt) 11) -1)
1339 ((= (nth 1 dt) 11)
1340 (let ((sunday (math-prev-weekday-in-month date dt 7 0)))
1341 (cond ((< (nth 2 dt) sunday) -1)
1342 ((= (nth 2 dt) sunday)
1343 (if (>= (nth 3 dt) (+ 2 bump)) 0 -1))
1344 (t 0))))
1345 (t 0)))
1346
1347(defun math-std-daylight-savings-old (date dt zone bump)
1348 "Standard North American daylight saving algorithm before 2007.
1349This implements the rules for the U.S. and Canada.
1350Daylight saving begins on the first Sunday of April at 2 a.m.,
1318and ends on the last Sunday of October at 2 a.m." 1351and ends on the last Sunday of October at 2 a.m."
1319 (cond ((< (nth 1 dt) 4) 0) 1352 (cond ((< (nth 1 dt) 4) 0)
1320 ((= (nth 1 dt) 4) 1353 ((= (nth 1 dt) 4)
@@ -1817,7 +1850,7 @@ and ends on the last Sunday of October at 2 a.m."
1817 (math-make-intv 2 0 b))))) 1850 (math-make-intv 2 0 b)))))
1818 1851
1819;; The variables math-exp-str and math-exp-pos are local to 1852;; The variables math-exp-str and math-exp-pos are local to
1820;; math-read-exprs in math-aent.el, but are used by 1853;; math-read-exprs in math-aent.el, but are used by
1821;; math-read-angle-brackets, which is called (indirectly) by 1854;; math-read-angle-brackets, which is called (indirectly) by
1822;; math-read-exprs. 1855;; math-read-exprs.
1823(defvar math-exp-str) 1856(defvar math-exp-str)
diff --git a/lisp/calc/calc-frac.el b/lisp/calc/calc-frac.el
index 8329d95e899..b30fcd1d145 100644
--- a/lisp/calc/calc-frac.el
+++ b/lisp/calc/calc-frac.el
@@ -8,20 +8,20 @@
8 8
9;; This file is part of GNU Emacs. 9;; This file is part of GNU Emacs.
10 10
11;; GNU Emacs is free software; you can redistribute it and/or modify
12;; it under the terms of the GNU General Public License as published by
13;; the Free Software Foundation; either version 2, or (at your option)
14;; any later version.
15
11;; GNU Emacs is distributed in the hope that it will be useful, 16;; GNU Emacs is distributed in the hope that it will be useful,
12;; but WITHOUT ANY WARRANTY. No author or distributor 17;; but WITHOUT ANY WARRANTY; without even the implied warranty of
13;; accepts responsibility to anyone for the consequences of using it 18;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14;; or for whether it serves any particular purpose or works at all, 19;; GNU General Public License for more details.
15;; unless he says so in writing. Refer to the GNU Emacs General Public 20
16;; License for full details. 21;; You should have received a copy of the GNU General Public License
17 22;; along with GNU Emacs; see the file COPYING. If not, write to the
18;; Everyone is granted permission to copy, modify and redistribute 23;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
19;; GNU Emacs, but only under the conditions described in the 24;; Boston, MA 02110-1301, USA.
20;; GNU Emacs General Public License. A copy of this license is
21;; supposed to have been given to you along with GNU Emacs so you
22;; can know your rights and responsibilities. It should be in a
23;; file named COPYING. Among other things, the copyright notice
24;; and this notice must be preserved on all copies.
25 25
26;;; Commentary: 26;;; Commentary:
27 27
diff --git a/lisp/calc/calc-funcs.el b/lisp/calc/calc-funcs.el
index e9b5ec97539..bd8aa753ddf 100644
--- a/lisp/calc/calc-funcs.el
+++ b/lisp/calc/calc-funcs.el
@@ -8,20 +8,20 @@
8 8
9;; This file is part of GNU Emacs. 9;; This file is part of GNU Emacs.
10 10
11;; GNU Emacs is free software; you can redistribute it and/or modify
12;; it under the terms of the GNU General Public License as published by
13;; the Free Software Foundation; either version 2, or (at your option)
14;; any later version.
15
11;; GNU Emacs is distributed in the hope that it will be useful, 16;; GNU Emacs is distributed in the hope that it will be useful,
12;; but WITHOUT ANY WARRANTY. No author or distributor 17;; but WITHOUT ANY WARRANTY; without even the implied warranty of
13;; accepts responsibility to anyone for the consequences of using it 18;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14;; or for whether it serves any particular purpose or works at all, 19;; GNU General Public License for more details.
15;; unless he says so in writing. Refer to the GNU Emacs General Public 20
16;; License for full details. 21;; You should have received a copy of the GNU General Public License
17 22;; along with GNU Emacs; see the file COPYING. If not, write to the
18;; Everyone is granted permission to copy, modify and redistribute 23;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
19;; GNU Emacs, but only under the conditions described in the 24;; Boston, MA 02110-1301, USA.
20;; GNU Emacs General Public License. A copy of this license is
21;; supposed to have been given to you along with GNU Emacs so you
22;; can know your rights and responsibilities. It should be in a
23;; file named COPYING. Among other things, the copyright notice
24;; and this notice must be preserved on all copies.
25 25
26;;; Commentary: 26;;; Commentary:
27 27
diff --git a/lisp/calc/calc-graph.el b/lisp/calc/calc-graph.el
index e7473fa57ca..734f7615329 100644
--- a/lisp/calc/calc-graph.el
+++ b/lisp/calc/calc-graph.el
@@ -8,20 +8,20 @@
8 8
9;; This file is part of GNU Emacs. 9;; This file is part of GNU Emacs.
10 10
11;; GNU Emacs is free software; you can redistribute it and/or modify
12;; it under the terms of the GNU General Public License as published by
13;; the Free Software Foundation; either version 2, or (at your option)
14;; any later version.
15
11;; GNU Emacs is distributed in the hope that it will be useful, 16;; GNU Emacs is distributed in the hope that it will be useful,
12;; but WITHOUT ANY WARRANTY. No author or distributor 17;; but WITHOUT ANY WARRANTY; without even the implied warranty of
13;; accepts responsibility to anyone for the consequences of using it 18;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14;; or for whether it serves any particular purpose or works at all, 19;; GNU General Public License for more details.
15;; unless he says so in writing. Refer to the GNU Emacs General Public 20
16;; License for full details. 21;; You should have received a copy of the GNU General Public License
17 22;; along with GNU Emacs; see the file COPYING. If not, write to the
18;; Everyone is granted permission to copy, modify and redistribute 23;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
19;; GNU Emacs, but only under the conditions described in the 24;; Boston, MA 02110-1301, USA.
20;; GNU Emacs General Public License. A copy of this license is
21;; supposed to have been given to you along with GNU Emacs so you
22;; can know your rights and responsibilities. It should be in a
23;; file named COPYING. Among other things, the copyright notice
24;; and this notice must be preserved on all copies.
25 25
26;;; Commentary: 26;;; Commentary:
27 27
diff --git a/lisp/calc/calc-help.el b/lisp/calc/calc-help.el
index 6d3f072554f..90a89c079fa 100644
--- a/lisp/calc/calc-help.el
+++ b/lisp/calc/calc-help.el
@@ -8,20 +8,20 @@
8 8
9;; This file is part of GNU Emacs. 9;; This file is part of GNU Emacs.
10 10
11;; GNU Emacs is free software; you can redistribute it and/or modify
12;; it under the terms of the GNU General Public License as published by
13;; the Free Software Foundation; either version 2, or (at your option)
14;; any later version.
15
11;; GNU Emacs is distributed in the hope that it will be useful, 16;; GNU Emacs is distributed in the hope that it will be useful,
12;; but WITHOUT ANY WARRANTY. No author or distributor 17;; but WITHOUT ANY WARRANTY; without even the implied warranty of
13;; accepts responsibility to anyone for the consequences of using it 18;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14;; or for whether it serves any particular purpose or works at all, 19;; GNU General Public License for more details.
15;; unless he says so in writing. Refer to the GNU Emacs General Public 20
16;; License for full details. 21;; You should have received a copy of the GNU General Public License
17 22;; along with GNU Emacs; see the file COPYING. If not, write to the
18;; Everyone is granted permission to copy, modify and redistribute 23;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
19;; GNU Emacs, but only under the conditions described in the 24;; Boston, MA 02110-1301, USA.
20;; GNU Emacs General Public License. A copy of this license is
21;; supposed to have been given to you along with GNU Emacs so you
22;; can know your rights and responsibilities. It should be in a
23;; file named COPYING. Among other things, the copyright notice
24;; and this notice must be preserved on all copies.
25 25
26;;; Commentary: 26;;; Commentary:
27 27
diff --git a/lisp/calc/calc-incom.el b/lisp/calc/calc-incom.el
index a32b6c09f85..5d1034cf2fc 100644
--- a/lisp/calc/calc-incom.el
+++ b/lisp/calc/calc-incom.el
@@ -8,20 +8,20 @@
8 8
9;; This file is part of GNU Emacs. 9;; This file is part of GNU Emacs.
10 10
11;; GNU Emacs is free software; you can redistribute it and/or modify
12;; it under the terms of the GNU General Public License as published by
13;; the Free Software Foundation; either version 2, or (at your option)
14;; any later version.
15
11;; GNU Emacs is distributed in the hope that it will be useful, 16;; GNU Emacs is distributed in the hope that it will be useful,
12;; but WITHOUT ANY WARRANTY. No author or distributor 17;; but WITHOUT ANY WARRANTY; without even the implied warranty of
13;; accepts responsibility to anyone for the consequences of using it 18;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14;; or for whether it serves any particular purpose or works at all, 19;; GNU General Public License for more details.
15;; unless he says so in writing. Refer to the GNU Emacs General Public 20
16;; License for full details. 21;; You should have received a copy of the GNU General Public License
17 22;; along with GNU Emacs; see the file COPYING. If not, write to the
18;; Everyone is granted permission to copy, modify and redistribute 23;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
19;; GNU Emacs, but only under the conditions described in the 24;; Boston, MA 02110-1301, USA.
20;; GNU Emacs General Public License. A copy of this license is
21;; supposed to have been given to you along with GNU Emacs so you
22;; can know your rights and responsibilities. It should be in a
23;; file named COPYING. Among other things, the copyright notice
24;; and this notice must be preserved on all copies.
25 25
26;;; Commentary: 26;;; Commentary:
27 27
diff --git a/lisp/calc/calc-keypd.el b/lisp/calc/calc-keypd.el
index 3e5fa194609..d044335e94c 100644
--- a/lisp/calc/calc-keypd.el
+++ b/lisp/calc/calc-keypd.el
@@ -8,20 +8,20 @@
8 8
9;; This file is part of GNU Emacs. 9;; This file is part of GNU Emacs.
10 10
11;; GNU Emacs is free software; you can redistribute it and/or modify
12;; it under the terms of the GNU General Public License as published by
13;; the Free Software Foundation; either version 2, or (at your option)
14;; any later version.
15
11;; GNU Emacs is distributed in the hope that it will be useful, 16;; GNU Emacs is distributed in the hope that it will be useful,
12;; but WITHOUT ANY WARRANTY. No author or distributor 17;; but WITHOUT ANY WARRANTY; without even the implied warranty of
13;; accepts responsibility to anyone for the consequences of using it 18;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14;; or for whether it serves any particular purpose or works at all, 19;; GNU General Public License for more details.
15;; unless he says so in writing. Refer to the GNU Emacs General Public 20
16;; License for full details. 21;; You should have received a copy of the GNU General Public License
17 22;; along with GNU Emacs; see the file COPYING. If not, write to the
18;; Everyone is granted permission to copy, modify and redistribute 23;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
19;; GNU Emacs, but only under the conditions described in the 24;; Boston, MA 02110-1301, USA.
20;; GNU Emacs General Public License. A copy of this license is
21;; supposed to have been given to you along with GNU Emacs so you
22;; can know your rights and responsibilities. It should be in a
23;; file named COPYING. Among other things, the copyright notice
24;; and this notice must be preserved on all copies.
25 25
26;;; Commentary: 26;;; Commentary:
27 27
diff --git a/lisp/calc/calc-lang.el b/lisp/calc/calc-lang.el
index fc584f2213f..5e91fe153af 100644
--- a/lisp/calc/calc-lang.el
+++ b/lisp/calc/calc-lang.el
@@ -8,20 +8,20 @@
8 8
9;; This file is part of GNU Emacs. 9;; This file is part of GNU Emacs.
10 10
11;; GNU Emacs is free software; you can redistribute it and/or modify
12;; it under the terms of the GNU General Public License as published by
13;; the Free Software Foundation; either version 2, or (at your option)
14;; any later version.
15
11;; GNU Emacs is distributed in the hope that it will be useful, 16;; GNU Emacs is distributed in the hope that it will be useful,
12;; but WITHOUT ANY WARRANTY. No author or distributor 17;; but WITHOUT ANY WARRANTY; without even the implied warranty of
13;; accepts responsibility to anyone for the consequences of using it 18;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14;; or for whether it serves any particular purpose or works at all, 19;; GNU General Public License for more details.
15;; unless he says so in writing. Refer to the GNU Emacs General Public 20
16;; License for full details. 21;; You should have received a copy of the GNU General Public License
17 22;; along with GNU Emacs; see the file COPYING. If not, write to the
18;; Everyone is granted permission to copy, modify and redistribute 23;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
19;; GNU Emacs, but only under the conditions described in the 24;; Boston, MA 02110-1301, USA.
20;; GNU Emacs General Public License. A copy of this license is
21;; supposed to have been given to you along with GNU Emacs so you
22;; can know your rights and responsibilities. It should be in a
23;; file named COPYING. Among other things, the copyright notice
24;; and this notice must be preserved on all copies.
25 25
26;;; Commentary: 26;;; Commentary:
27 27
diff --git a/lisp/calc/calc-macs.el b/lisp/calc/calc-macs.el
index 4db6d9752e1..692770030fc 100644
--- a/lisp/calc/calc-macs.el
+++ b/lisp/calc/calc-macs.el
@@ -8,20 +8,20 @@
8 8
9;; This file is part of GNU Emacs. 9;; This file is part of GNU Emacs.
10 10
11;; GNU Emacs is free software; you can redistribute it and/or modify
12;; it under the terms of the GNU General Public License as published by
13;; the Free Software Foundation; either version 2, or (at your option)
14;; any later version.
15
11;; GNU Emacs is distributed in the hope that it will be useful, 16;; GNU Emacs is distributed in the hope that it will be useful,
12;; but WITHOUT ANY WARRANTY. No author or distributor 17;; but WITHOUT ANY WARRANTY; without even the implied warranty of
13;; accepts responsibility to anyone for the consequences of using it 18;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14;; or for whether it serves any particular purpose or works at all, 19;; GNU General Public License for more details.
15;; unless he says so in writing. Refer to the GNU Emacs General Public 20
16;; License for full details. 21;; You should have received a copy of the GNU General Public License
17 22;; along with GNU Emacs; see the file COPYING. If not, write to the
18;; Everyone is granted permission to copy, modify and redistribute 23;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
19;; GNU Emacs, but only under the conditions described in the 24;; Boston, MA 02110-1301, USA.
20;; GNU Emacs General Public License. A copy of this license is
21;; supposed to have been given to you along with GNU Emacs so you
22;; can know your rights and responsibilities. It should be in a
23;; file named COPYING. Among other things, the copyright notice
24;; and this notice must be preserved on all copies.
25 25
26;;; Commentary: 26;;; Commentary:
27 27
diff --git a/lisp/calc/calc-map.el b/lisp/calc/calc-map.el
index 5fcaecd95e9..9ae9a9b5cfd 100644
--- a/lisp/calc/calc-map.el
+++ b/lisp/calc/calc-map.el
@@ -8,20 +8,20 @@
8 8
9;; This file is part of GNU Emacs. 9;; This file is part of GNU Emacs.
10 10
11;; GNU Emacs is free software; you can redistribute it and/or modify
12;; it under the terms of the GNU General Public License as published by
13;; the Free Software Foundation; either version 2, or (at your option)
14;; any later version.
15
11;; GNU Emacs is distributed in the hope that it will be useful, 16;; GNU Emacs is distributed in the hope that it will be useful,
12;; but WITHOUT ANY WARRANTY. No author or distributor 17;; but WITHOUT ANY WARRANTY; without even the implied warranty of
13;; accepts responsibility to anyone for the consequences of using it 18;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14;; or for whether it serves any particular purpose or works at all, 19;; GNU General Public License for more details.
15;; unless he says so in writing. Refer to the GNU Emacs General Public 20
16;; License for full details. 21;; You should have received a copy of the GNU General Public License
17 22;; along with GNU Emacs; see the file COPYING. If not, write to the
18;; Everyone is granted permission to copy, modify and redistribute 23;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
19;; GNU Emacs, but only under the conditions described in the 24;; Boston, MA 02110-1301, USA.
20;; GNU Emacs General Public License. A copy of this license is
21;; supposed to have been given to you along with GNU Emacs so you
22;; can know your rights and responsibilities. It should be in a
23;; file named COPYING. Among other things, the copyright notice
24;; and this notice must be preserved on all copies.
25 25
26;;; Commentary: 26;;; Commentary:
27 27
diff --git a/lisp/calc/calc-math.el b/lisp/calc/calc-math.el
index 96cfd6fc50d..32a3f0409c8 100644
--- a/lisp/calc/calc-math.el
+++ b/lisp/calc/calc-math.el
@@ -8,20 +8,20 @@
8 8
9;; This file is part of GNU Emacs. 9;; This file is part of GNU Emacs.
10 10
11;; GNU Emacs is free software; you can redistribute it and/or modify
12;; it under the terms of the GNU General Public License as published by
13;; the Free Software Foundation; either version 2, or (at your option)
14;; any later version.
15
11;; GNU Emacs is distributed in the hope that it will be useful, 16;; GNU Emacs is distributed in the hope that it will be useful,
12;; but WITHOUT ANY WARRANTY. No author or distributor 17;; but WITHOUT ANY WARRANTY; without even the implied warranty of
13;; accepts responsibility to anyone for the consequences of using it 18;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14;; or for whether it serves any particular purpose or works at all, 19;; GNU General Public License for more details.
15;; unless he says so in writing. Refer to the GNU Emacs General Public 20
16;; License for full details. 21;; You should have received a copy of the GNU General Public License
17 22;; along with GNU Emacs; see the file COPYING. If not, write to the
18;; Everyone is granted permission to copy, modify and redistribute 23;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
19;; GNU Emacs, but only under the conditions described in the 24;; Boston, MA 02110-1301, USA.
20;; GNU Emacs General Public License. A copy of this license is
21;; supposed to have been given to you along with GNU Emacs so you
22;; can know your rights and responsibilities. It should be in a
23;; file named COPYING. Among other things, the copyright notice
24;; and this notice must be preserved on all copies.
25 25
26;;; Commentary: 26;;; Commentary:
27 27
diff --git a/lisp/calc/calc-misc.el b/lisp/calc/calc-misc.el
index 0f3547ed06e..178734c1f1d 100644
--- a/lisp/calc/calc-misc.el
+++ b/lisp/calc/calc-misc.el
@@ -8,20 +8,20 @@
8 8
9;; This file is part of GNU Emacs. 9;; This file is part of GNU Emacs.
10 10
11;; GNU Emacs is free software; you can redistribute it and/or modify
12;; it under the terms of the GNU General Public License as published by
13;; the Free Software Foundation; either version 2, or (at your option)
14;; any later version.
15
11;; GNU Emacs is distributed in the hope that it will be useful, 16;; GNU Emacs is distributed in the hope that it will be useful,
12;; but WITHOUT ANY WARRANTY. No author or distributor 17;; but WITHOUT ANY WARRANTY; without even the implied warranty of
13;; accepts responsibility to anyone for the consequences of using it 18;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14;; or for whether it serves any particular purpose or works at all, 19;; GNU General Public License for more details.
15;; unless he says so in writing. Refer to the GNU Emacs General Public 20
16;; License for full details. 21;; You should have received a copy of the GNU General Public License
17 22;; along with GNU Emacs; see the file COPYING. If not, write to the
18;; Everyone is granted permission to copy, modify and redistribute 23;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
19;; GNU Emacs, but only under the conditions described in the 24;; Boston, MA 02110-1301, USA.
20;; GNU Emacs General Public License. A copy of this license is
21;; supposed to have been given to you along with GNU Emacs so you
22;; can know your rights and responsibilities. It should be in a
23;; file named COPYING. Among other things, the copyright notice
24;; and this notice must be preserved on all copies.
25 25
26;;; Commentary: 26;;; Commentary:
27 27
diff --git a/lisp/calc/calc-mode.el b/lisp/calc/calc-mode.el
index 14cb3c746d5..136ca2e91a9 100644
--- a/lisp/calc/calc-mode.el
+++ b/lisp/calc/calc-mode.el
@@ -8,20 +8,20 @@
8 8
9;; This file is part of GNU Emacs. 9;; This file is part of GNU Emacs.
10 10
11;; GNU Emacs is free software; you can redistribute it and/or modify
12;; it under the terms of the GNU General Public License as published by
13;; the Free Software Foundation; either version 2, or (at your option)
14;; any later version.
15
11;; GNU Emacs is distributed in the hope that it will be useful, 16;; GNU Emacs is distributed in the hope that it will be useful,
12;; but WITHOUT ANY WARRANTY. No author or distributor 17;; but WITHOUT ANY WARRANTY; without even the implied warranty of
13;; accepts responsibility to anyone for the consequences of using it 18;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14;; or for whether it serves any particular purpose or works at all, 19;; GNU General Public License for more details.
15;; unless he says so in writing. Refer to the GNU Emacs General Public 20
16;; License for full details. 21;; You should have received a copy of the GNU General Public License
17 22;; along with GNU Emacs; see the file COPYING. If not, write to the
18;; Everyone is granted permission to copy, modify and redistribute 23;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
19;; GNU Emacs, but only under the conditions described in the 24;; Boston, MA 02110-1301, USA.
20;; GNU Emacs General Public License. A copy of this license is
21;; supposed to have been given to you along with GNU Emacs so you
22;; can know your rights and responsibilities. It should be in a
23;; file named COPYING. Among other things, the copyright notice
24;; and this notice must be preserved on all copies.
25 25
26;;; Commentary: 26;;; Commentary:
27 27
diff --git a/lisp/calc/calc-mtx.el b/lisp/calc/calc-mtx.el
index 4d4201aee5a..012600f86ab 100644
--- a/lisp/calc/calc-mtx.el
+++ b/lisp/calc/calc-mtx.el
@@ -8,20 +8,20 @@
8 8
9;; This file is part of GNU Emacs. 9;; This file is part of GNU Emacs.
10 10
11;; GNU Emacs is free software; you can redistribute it and/or modify
12;; it under the terms of the GNU General Public License as published by
13;; the Free Software Foundation; either version 2, or (at your option)
14;; any later version.
15
11;; GNU Emacs is distributed in the hope that it will be useful, 16;; GNU Emacs is distributed in the hope that it will be useful,
12;; but WITHOUT ANY WARRANTY. No author or distributor 17;; but WITHOUT ANY WARRANTY; without even the implied warranty of
13;; accepts responsibility to anyone for the consequences of using it 18;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14;; or for whether it serves any particular purpose or works at all, 19;; GNU General Public License for more details.
15;; unless he says so in writing. Refer to the GNU Emacs General Public 20
16;; License for full details. 21;; You should have received a copy of the GNU General Public License
17 22;; along with GNU Emacs; see the file COPYING. If not, write to the
18;; Everyone is granted permission to copy, modify and redistribute 23;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
19;; GNU Emacs, but only under the conditions described in the 24;; Boston, MA 02110-1301, USA.
20;; GNU Emacs General Public License. A copy of this license is
21;; supposed to have been given to you along with GNU Emacs so you
22;; can know your rights and responsibilities. It should be in a
23;; file named COPYING. Among other things, the copyright notice
24;; and this notice must be preserved on all copies.
25 25
26;;; Commentary: 26;;; Commentary:
27 27
diff --git a/lisp/calc/calc-poly.el b/lisp/calc/calc-poly.el
index aef7a28efd4..31e026e4ffe 100644
--- a/lisp/calc/calc-poly.el
+++ b/lisp/calc/calc-poly.el
@@ -8,20 +8,20 @@
8 8
9;; This file is part of GNU Emacs. 9;; This file is part of GNU Emacs.
10 10
11;; GNU Emacs is free software; you can redistribute it and/or modify
12;; it under the terms of the GNU General Public License as published by
13;; the Free Software Foundation; either version 2, or (at your option)
14;; any later version.
15
11;; GNU Emacs is distributed in the hope that it will be useful, 16;; GNU Emacs is distributed in the hope that it will be useful,
12;; but WITHOUT ANY WARRANTY. No author or distributor 17;; but WITHOUT ANY WARRANTY; without even the implied warranty of
13;; accepts responsibility to anyone for the consequences of using it 18;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14;; or for whether it serves any particular purpose or works at all, 19;; GNU General Public License for more details.
15;; unless he says so in writing. Refer to the GNU Emacs General Public 20
16;; License for full details. 21;; You should have received a copy of the GNU General Public License
17 22;; along with GNU Emacs; see the file COPYING. If not, write to the
18;; Everyone is granted permission to copy, modify and redistribute 23;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
19;; GNU Emacs, but only under the conditions described in the 24;; Boston, MA 02110-1301, USA.
20;; GNU Emacs General Public License. A copy of this license is
21;; supposed to have been given to you along with GNU Emacs so you
22;; can know your rights and responsibilities. It should be in a
23;; file named COPYING. Among other things, the copyright notice
24;; and this notice must be preserved on all copies.
25 25
26;;; Commentary: 26;;; Commentary:
27 27
diff --git a/lisp/calc/calc-prog.el b/lisp/calc/calc-prog.el
index 41e9254ffd6..b0a0feccec8 100644
--- a/lisp/calc/calc-prog.el
+++ b/lisp/calc/calc-prog.el
@@ -8,20 +8,20 @@
8 8
9;; This file is part of GNU Emacs. 9;; This file is part of GNU Emacs.
10 10
11;; GNU Emacs is free software; you can redistribute it and/or modify
12;; it under the terms of the GNU General Public License as published by
13;; the Free Software Foundation; either version 2, or (at your option)
14;; any later version.
15
11;; GNU Emacs is distributed in the hope that it will be useful, 16;; GNU Emacs is distributed in the hope that it will be useful,
12;; but WITHOUT ANY WARRANTY. No author or distributor 17;; but WITHOUT ANY WARRANTY; without even the implied warranty of
13;; accepts responsibility to anyone for the consequences of using it 18;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14;; or for whether it serves any particular purpose or works at all, 19;; GNU General Public License for more details.
15;; unless he says so in writing. Refer to the GNU Emacs General Public 20
16;; License for full details. 21;; You should have received a copy of the GNU General Public License
17 22;; along with GNU Emacs; see the file COPYING. If not, write to the
18;; Everyone is granted permission to copy, modify and redistribute 23;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
19;; GNU Emacs, but only under the conditions described in the 24;; Boston, MA 02110-1301, USA.
20;; GNU Emacs General Public License. A copy of this license is
21;; supposed to have been given to you along with GNU Emacs so you
22;; can know your rights and responsibilities. It should be in a
23;; file named COPYING. Among other things, the copyright notice
24;; and this notice must be preserved on all copies.
25 25
26;;; Commentary: 26;;; Commentary:
27 27
diff --git a/lisp/calc/calc-rewr.el b/lisp/calc/calc-rewr.el
index 0159f50dc45..d1dc4a27f1c 100644
--- a/lisp/calc/calc-rewr.el
+++ b/lisp/calc/calc-rewr.el
@@ -8,20 +8,20 @@
8 8
9;; This file is part of GNU Emacs. 9;; This file is part of GNU Emacs.
10 10
11;; GNU Emacs is free software; you can redistribute it and/or modify
12;; it under the terms of the GNU General Public License as published by
13;; the Free Software Foundation; either version 2, or (at your option)
14;; any later version.
15
11;; GNU Emacs is distributed in the hope that it will be useful, 16;; GNU Emacs is distributed in the hope that it will be useful,
12;; but WITHOUT ANY WARRANTY. No author or distributor 17;; but WITHOUT ANY WARRANTY; without even the implied warranty of
13;; accepts responsibility to anyone for the consequences of using it 18;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14;; or for whether it serves any particular purpose or works at all, 19;; GNU General Public License for more details.
15;; unless he says so in writing. Refer to the GNU Emacs General Public 20
16;; License for full details. 21;; You should have received a copy of the GNU General Public License
17 22;; along with GNU Emacs; see the file COPYING. If not, write to the
18;; Everyone is granted permission to copy, modify and redistribute 23;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
19;; GNU Emacs, but only under the conditions described in the 24;; Boston, MA 02110-1301, USA.
20;; GNU Emacs General Public License. A copy of this license is
21;; supposed to have been given to you along with GNU Emacs so you
22;; can know your rights and responsibilities. It should be in a
23;; file named COPYING. Among other things, the copyright notice
24;; and this notice must be preserved on all copies.
25 25
26;;; Commentary: 26;;; Commentary:
27 27
diff --git a/lisp/calc/calc-rules.el b/lisp/calc/calc-rules.el
index 23ae04ac114..5053a0a9fa1 100644
--- a/lisp/calc/calc-rules.el
+++ b/lisp/calc/calc-rules.el
@@ -8,20 +8,20 @@
8 8
9;; This file is part of GNU Emacs. 9;; This file is part of GNU Emacs.
10 10
11;; GNU Emacs is free software; you can redistribute it and/or modify
12;; it under the terms of the GNU General Public License as published by
13;; the Free Software Foundation; either version 2, or (at your option)
14;; any later version.
15
11;; GNU Emacs is distributed in the hope that it will be useful, 16;; GNU Emacs is distributed in the hope that it will be useful,
12;; but WITHOUT ANY WARRANTY. No author or distributor 17;; but WITHOUT ANY WARRANTY; without even the implied warranty of
13;; accepts responsibility to anyone for the consequences of using it 18;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14;; or for whether it serves any particular purpose or works at all, 19;; GNU General Public License for more details.
15;; unless he says so in writing. Refer to the GNU Emacs General Public 20
16;; License for full details. 21;; You should have received a copy of the GNU General Public License
17 22;; along with GNU Emacs; see the file COPYING. If not, write to the
18;; Everyone is granted permission to copy, modify and redistribute 23;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
19;; GNU Emacs, but only under the conditions described in the 24;; Boston, MA 02110-1301, USA.
20;; GNU Emacs General Public License. A copy of this license is
21;; supposed to have been given to you along with GNU Emacs so you
22;; can know your rights and responsibilities. It should be in a
23;; file named COPYING. Among other things, the copyright notice
24;; and this notice must be preserved on all copies.
25 25
26;;; Commentary: 26;;; Commentary:
27 27
diff --git a/lisp/calc/calc-sel.el b/lisp/calc/calc-sel.el
index 01d8ec3fc30..61b0dd70bd8 100644
--- a/lisp/calc/calc-sel.el
+++ b/lisp/calc/calc-sel.el
@@ -8,20 +8,20 @@
8 8
9;; This file is part of GNU Emacs. 9;; This file is part of GNU Emacs.
10 10
11;; GNU Emacs is free software; you can redistribute it and/or modify
12;; it under the terms of the GNU General Public License as published by
13;; the Free Software Foundation; either version 2, or (at your option)
14;; any later version.
15
11;; GNU Emacs is distributed in the hope that it will be useful, 16;; GNU Emacs is distributed in the hope that it will be useful,
12;; but WITHOUT ANY WARRANTY. No author or distributor 17;; but WITHOUT ANY WARRANTY; without even the implied warranty of
13;; accepts responsibility to anyone for the consequences of using it 18;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14;; or for whether it serves any particular purpose or works at all, 19;; GNU General Public License for more details.
15;; unless he says so in writing. Refer to the GNU Emacs General Public 20
16;; License for full details. 21;; You should have received a copy of the GNU General Public License
17 22;; along with GNU Emacs; see the file COPYING. If not, write to the
18;; Everyone is granted permission to copy, modify and redistribute 23;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
19;; GNU Emacs, but only under the conditions described in the 24;; Boston, MA 02110-1301, USA.
20;; GNU Emacs General Public License. A copy of this license is
21;; supposed to have been given to you along with GNU Emacs so you
22;; can know your rights and responsibilities. It should be in a
23;; file named COPYING. Among other things, the copyright notice
24;; and this notice must be preserved on all copies.
25 25
26;;; Commentary: 26;;; Commentary:
27 27
diff --git a/lisp/calc/calc-stat.el b/lisp/calc/calc-stat.el
index 0631a823c5f..d1c481d16fd 100644
--- a/lisp/calc/calc-stat.el
+++ b/lisp/calc/calc-stat.el
@@ -8,20 +8,20 @@
8 8
9;; This file is part of GNU Emacs. 9;; This file is part of GNU Emacs.
10 10
11;; GNU Emacs is free software; you can redistribute it and/or modify
12;; it under the terms of the GNU General Public License as published by
13;; the Free Software Foundation; either version 2, or (at your option)
14;; any later version.
15
11;; GNU Emacs is distributed in the hope that it will be useful, 16;; GNU Emacs is distributed in the hope that it will be useful,
12;; but WITHOUT ANY WARRANTY. No author or distributor 17;; but WITHOUT ANY WARRANTY; without even the implied warranty of
13;; accepts responsibility to anyone for the consequences of using it 18;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14;; or for whether it serves any particular purpose or works at all, 19;; GNU General Public License for more details.
15;; unless he says so in writing. Refer to the GNU Emacs General Public 20
16;; License for full details. 21;; You should have received a copy of the GNU General Public License
17 22;; along with GNU Emacs; see the file COPYING. If not, write to the
18;; Everyone is granted permission to copy, modify and redistribute 23;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
19;; GNU Emacs, but only under the conditions described in the 24;; Boston, MA 02110-1301, USA.
20;; GNU Emacs General Public License. A copy of this license is
21;; supposed to have been given to you along with GNU Emacs so you
22;; can know your rights and responsibilities. It should be in a
23;; file named COPYING. Among other things, the copyright notice
24;; and this notice must be preserved on all copies.
25 25
26;;; Commentary: 26;;; Commentary:
27 27
diff --git a/lisp/calc/calc-store.el b/lisp/calc/calc-store.el
index 458a5ea9268..517106f9d7d 100644
--- a/lisp/calc/calc-store.el
+++ b/lisp/calc/calc-store.el
@@ -8,20 +8,20 @@
8 8
9;; This file is part of GNU Emacs. 9;; This file is part of GNU Emacs.
10 10
11;; GNU Emacs is free software; you can redistribute it and/or modify
12;; it under the terms of the GNU General Public License as published by
13;; the Free Software Foundation; either version 2, or (at your option)
14;; any later version.
15
11;; GNU Emacs is distributed in the hope that it will be useful, 16;; GNU Emacs is distributed in the hope that it will be useful,
12;; but WITHOUT ANY WARRANTY. No author or distributor 17;; but WITHOUT ANY WARRANTY; without even the implied warranty of
13;; accepts responsibility to anyone for the consequences of using it 18;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14;; or for whether it serves any particular purpose or works at all, 19;; GNU General Public License for more details.
15;; unless he says so in writing. Refer to the GNU Emacs General Public 20
16;; License for full details. 21;; You should have received a copy of the GNU General Public License
17 22;; along with GNU Emacs; see the file COPYING. If not, write to the
18;; Everyone is granted permission to copy, modify and redistribute 23;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
19;; GNU Emacs, but only under the conditions described in the 24;; Boston, MA 02110-1301, USA.
20;; GNU Emacs General Public License. A copy of this license is
21;; supposed to have been given to you along with GNU Emacs so you
22;; can know your rights and responsibilities. It should be in a
23;; file named COPYING. Among other things, the copyright notice
24;; and this notice must be preserved on all copies.
25 25
26;;; Commentary: 26;;; Commentary:
27 27
diff --git a/lisp/calc/calc-stuff.el b/lisp/calc/calc-stuff.el
index 6cb1a9b1974..cafe298fb0e 100644
--- a/lisp/calc/calc-stuff.el
+++ b/lisp/calc/calc-stuff.el
@@ -8,20 +8,20 @@
8 8
9;; This file is part of GNU Emacs. 9;; This file is part of GNU Emacs.
10 10
11;; GNU Emacs is free software; you can redistribute it and/or modify
12;; it under the terms of the GNU General Public License as published by
13;; the Free Software Foundation; either version 2, or (at your option)
14;; any later version.
15
11;; GNU Emacs is distributed in the hope that it will be useful, 16;; GNU Emacs is distributed in the hope that it will be useful,
12;; but WITHOUT ANY WARRANTY. No author or distributor 17;; but WITHOUT ANY WARRANTY; without even the implied warranty of
13;; accepts responsibility to anyone for the consequences of using it 18;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14;; or for whether it serves any particular purpose or works at all, 19;; GNU General Public License for more details.
15;; unless he says so in writing. Refer to the GNU Emacs General Public 20
16;; License for full details. 21;; You should have received a copy of the GNU General Public License
17 22;; along with GNU Emacs; see the file COPYING. If not, write to the
18;; Everyone is granted permission to copy, modify and redistribute 23;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
19;; GNU Emacs, but only under the conditions described in the 24;; Boston, MA 02110-1301, USA.
20;; GNU Emacs General Public License. A copy of this license is
21;; supposed to have been given to you along with GNU Emacs so you
22;; can know your rights and responsibilities. It should be in a
23;; file named COPYING. Among other things, the copyright notice
24;; and this notice must be preserved on all copies.
25 25
26;;; Commentary: 26;;; Commentary:
27 27
diff --git a/lisp/calc/calc-trail.el b/lisp/calc/calc-trail.el
index a6ed07f7612..2f3de0c5e28 100644
--- a/lisp/calc/calc-trail.el
+++ b/lisp/calc/calc-trail.el
@@ -8,20 +8,20 @@
8 8
9;; This file is part of GNU Emacs. 9;; This file is part of GNU Emacs.
10 10
11;; GNU Emacs is free software; you can redistribute it and/or modify
12;; it under the terms of the GNU General Public License as published by
13;; the Free Software Foundation; either version 2, or (at your option)
14;; any later version.
15
11;; GNU Emacs is distributed in the hope that it will be useful, 16;; GNU Emacs is distributed in the hope that it will be useful,
12;; but WITHOUT ANY WARRANTY. No author or distributor 17;; but WITHOUT ANY WARRANTY; without even the implied warranty of
13;; accepts responsibility to anyone for the consequences of using it 18;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14;; or for whether it serves any particular purpose or works at all, 19;; GNU General Public License for more details.
15;; unless he says so in writing. Refer to the GNU Emacs General Public 20
16;; License for full details. 21;; You should have received a copy of the GNU General Public License
17 22;; along with GNU Emacs; see the file COPYING. If not, write to the
18;; Everyone is granted permission to copy, modify and redistribute 23;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
19;; GNU Emacs, but only under the conditions described in the 24;; Boston, MA 02110-1301, USA.
20;; GNU Emacs General Public License. A copy of this license is
21;; supposed to have been given to you along with GNU Emacs so you
22;; can know your rights and responsibilities. It should be in a
23;; file named COPYING. Among other things, the copyright notice
24;; and this notice must be preserved on all copies.
25 25
26;;; Commentary: 26;;; Commentary:
27 27
diff --git a/lisp/calc/calc-undo.el b/lisp/calc/calc-undo.el
index 80259d4ee26..e1cec48abf5 100644
--- a/lisp/calc/calc-undo.el
+++ b/lisp/calc/calc-undo.el
@@ -8,20 +8,20 @@
8 8
9;; This file is part of GNU Emacs. 9;; This file is part of GNU Emacs.
10 10
11;; GNU Emacs is free software; you can redistribute it and/or modify
12;; it under the terms of the GNU General Public License as published by
13;; the Free Software Foundation; either version 2, or (at your option)
14;; any later version.
15
11;; GNU Emacs is distributed in the hope that it will be useful, 16;; GNU Emacs is distributed in the hope that it will be useful,
12;; but WITHOUT ANY WARRANTY. No author or distributor 17;; but WITHOUT ANY WARRANTY; without even the implied warranty of
13;; accepts responsibility to anyone for the consequences of using it 18;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14;; or for whether it serves any particular purpose or works at all, 19;; GNU General Public License for more details.
15;; unless he says so in writing. Refer to the GNU Emacs General Public 20
16;; License for full details. 21;; You should have received a copy of the GNU General Public License
17 22;; along with GNU Emacs; see the file COPYING. If not, write to the
18;; Everyone is granted permission to copy, modify and redistribute 23;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
19;; GNU Emacs, but only under the conditions described in the 24;; Boston, MA 02110-1301, USA.
20;; GNU Emacs General Public License. A copy of this license is
21;; supposed to have been given to you along with GNU Emacs so you
22;; can know your rights and responsibilities. It should be in a
23;; file named COPYING. Among other things, the copyright notice
24;; and this notice must be preserved on all copies.
25 25
26;;; Commentary: 26;;; Commentary:
27 27
diff --git a/lisp/calc/calc-units.el b/lisp/calc/calc-units.el
index 5a010236226..750dc53a54a 100644
--- a/lisp/calc/calc-units.el
+++ b/lisp/calc/calc-units.el
@@ -8,20 +8,20 @@
8 8
9;; This file is part of GNU Emacs. 9;; This file is part of GNU Emacs.
10 10
11;; GNU Emacs is free software; you can redistribute it and/or modify
12;; it under the terms of the GNU General Public License as published by
13;; the Free Software Foundation; either version 2, or (at your option)
14;; any later version.
15
11;; GNU Emacs is distributed in the hope that it will be useful, 16;; GNU Emacs is distributed in the hope that it will be useful,
12;; but WITHOUT ANY WARRANTY. No author or distributor 17;; but WITHOUT ANY WARRANTY; without even the implied warranty of
13;; accepts responsibility to anyone for the consequences of using it 18;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14;; or for whether it serves any particular purpose or works at all, 19;; GNU General Public License for more details.
15;; unless he says so in writing. Refer to the GNU Emacs General Public 20
16;; License for full details. 21;; You should have received a copy of the GNU General Public License
17 22;; along with GNU Emacs; see the file COPYING. If not, write to the
18;; Everyone is granted permission to copy, modify and redistribute 23;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
19;; GNU Emacs, but only under the conditions described in the 24;; Boston, MA 02110-1301, USA.
20;; GNU Emacs General Public License. A copy of this license is
21;; supposed to have been given to you along with GNU Emacs so you
22;; can know your rights and responsibilities. It should be in a
23;; file named COPYING. Among other things, the copyright notice
24;; and this notice must be preserved on all copies.
25 25
26;;; Commentary: 26;;; Commentary:
27 27
diff --git a/lisp/calc/calc-vec.el b/lisp/calc/calc-vec.el
index 1980ab7cc04..d2ec77ceab7 100644
--- a/lisp/calc/calc-vec.el
+++ b/lisp/calc/calc-vec.el
@@ -8,20 +8,20 @@
8 8
9;; This file is part of GNU Emacs. 9;; This file is part of GNU Emacs.
10 10
11;; GNU Emacs is free software; you can redistribute it and/or modify
12;; it under the terms of the GNU General Public License as published by
13;; the Free Software Foundation; either version 2, or (at your option)
14;; any later version.
15
11;; GNU Emacs is distributed in the hope that it will be useful, 16;; GNU Emacs is distributed in the hope that it will be useful,
12;; but WITHOUT ANY WARRANTY. No author or distributor 17;; but WITHOUT ANY WARRANTY; without even the implied warranty of
13;; accepts responsibility to anyone for the consequences of using it 18;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14;; or for whether it serves any particular purpose or works at all, 19;; GNU General Public License for more details.
15;; unless he says so in writing. Refer to the GNU Emacs General Public 20
16;; License for full details. 21;; You should have received a copy of the GNU General Public License
17 22;; along with GNU Emacs; see the file COPYING. If not, write to the
18;; Everyone is granted permission to copy, modify and redistribute 23;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
19;; GNU Emacs, but only under the conditions described in the 24;; Boston, MA 02110-1301, USA.
20;; GNU Emacs General Public License. A copy of this license is
21;; supposed to have been given to you along with GNU Emacs so you
22;; can know your rights and responsibilities. It should be in a
23;; file named COPYING. Among other things, the copyright notice
24;; and this notice must be preserved on all copies.
25 25
26;;; Commentary: 26;;; Commentary:
27 27
diff --git a/lisp/calc/calc-yank.el b/lisp/calc/calc-yank.el
index f957cf4cc14..17997c1f8e1 100644
--- a/lisp/calc/calc-yank.el
+++ b/lisp/calc/calc-yank.el
@@ -8,20 +8,20 @@
8 8
9;; This file is part of GNU Emacs. 9;; This file is part of GNU Emacs.
10 10
11;; GNU Emacs is free software; you can redistribute it and/or modify
12;; it under the terms of the GNU General Public License as published by
13;; the Free Software Foundation; either version 2, or (at your option)
14;; any later version.
15
11;; GNU Emacs is distributed in the hope that it will be useful, 16;; GNU Emacs is distributed in the hope that it will be useful,
12;; but WITHOUT ANY WARRANTY. No author or distributor 17;; but WITHOUT ANY WARRANTY; without even the implied warranty of
13;; accepts responsibility to anyone for the consequences of using it 18;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14;; or for whether it serves any particular purpose or works at all, 19;; GNU General Public License for more details.
15;; unless he says so in writing. Refer to the GNU Emacs General Public 20
16;; License for full details. 21;; You should have received a copy of the GNU General Public License
17 22;; along with GNU Emacs; see the file COPYING. If not, write to the
18;; Everyone is granted permission to copy, modify and redistribute 23;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
19;; GNU Emacs, but only under the conditions described in the 24;; Boston, MA 02110-1301, USA.
20;; GNU Emacs General Public License. A copy of this license is
21;; supposed to have been given to you along with GNU Emacs so you
22;; can know your rights and responsibilities. It should be in a
23;; file named COPYING. Among other things, the copyright notice
24;; and this notice must be preserved on all copies.
25 25
26;;; Commentary: 26;;; Commentary:
27 27
diff --git a/lisp/calc/calc.el b/lisp/calc/calc.el
index 43bddbfe2c8..75e1c83df03 100644
--- a/lisp/calc/calc.el
+++ b/lisp/calc/calc.el
@@ -10,20 +10,20 @@
10 10
11;; This file is part of GNU Emacs. 11;; This file is part of GNU Emacs.
12 12
13;; GNU Emacs is free software; you can redistribute it and/or modify
14;; it under the terms of the GNU General Public License as published by
15;; the Free Software Foundation; either version 2, or (at your option)
16;; any later version.
17
13;; GNU Emacs is distributed in the hope that it will be useful, 18;; GNU Emacs is distributed in the hope that it will be useful,
14;; but WITHOUT ANY WARRANTY. No author or distributor 19;; but WITHOUT ANY WARRANTY; without even the implied warranty of
15;; accepts responsibility to anyone for the consequences of using it 20;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16;; or for whether it serves any particular purpose or works at all, 21;; GNU General Public License for more details.
17;; unless he says so in writing. Refer to the GNU Emacs General Public 22
18;; License for full details. 23;; You should have received a copy of the GNU General Public License
19 24;; along with GNU Emacs; see the file COPYING. If not, write to the
20;; Everyone is granted permission to copy, modify and redistribute 25;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
21;; GNU Emacs, but only under the conditions described in the 26;; Boston, MA 02110-1301, USA.
22;; GNU Emacs General Public License. A copy of this license is
23;; supposed to have been given to you along with GNU Emacs so you
24;; can know your rights and responsibilities. It should be in a
25;; file named COPYING. Among other things, the copyright notice
26;; and this notice must be preserved on all copies.
27 27
28;;; Commentary: 28;;; Commentary:
29 29
diff --git a/lisp/calc/calcalg2.el b/lisp/calc/calcalg2.el
index 5443cc883bd..5bf388b7431 100644
--- a/lisp/calc/calcalg2.el
+++ b/lisp/calc/calcalg2.el
@@ -8,20 +8,20 @@
8 8
9;; This file is part of GNU Emacs. 9;; This file is part of GNU Emacs.
10 10
11;; GNU Emacs is free software; you can redistribute it and/or modify
12;; it under the terms of the GNU General Public License as published by
13;; the Free Software Foundation; either version 2, or (at your option)
14;; any later version.
15
11;; GNU Emacs is distributed in the hope that it will be useful, 16;; GNU Emacs is distributed in the hope that it will be useful,
12;; but WITHOUT ANY WARRANTY. No author or distributor 17;; but WITHOUT ANY WARRANTY; without even the implied warranty of
13;; accepts responsibility to anyone for the consequences of using it 18;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14;; or for whether it serves any particular purpose or works at all, 19;; GNU General Public License for more details.
15;; unless he says so in writing. Refer to the GNU Emacs General Public 20
16;; License for full details. 21;; You should have received a copy of the GNU General Public License
17 22;; along with GNU Emacs; see the file COPYING. If not, write to the
18;; Everyone is granted permission to copy, modify and redistribute 23;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
19;; GNU Emacs, but only under the conditions described in the 24;; Boston, MA 02110-1301, USA.
20;; GNU Emacs General Public License. A copy of this license is
21;; supposed to have been given to you along with GNU Emacs so you
22;; can know your rights and responsibilities. It should be in a
23;; file named COPYING. Among other things, the copyright notice
24;; and this notice must be preserved on all copies.
25 25
26;;; Commentary: 26;;; Commentary:
27 27
diff --git a/lisp/calc/calcalg3.el b/lisp/calc/calcalg3.el
index b4d1eee854e..f5053689fe7 100644
--- a/lisp/calc/calcalg3.el
+++ b/lisp/calc/calcalg3.el
@@ -8,20 +8,20 @@
8 8
9;; This file is part of GNU Emacs. 9;; This file is part of GNU Emacs.
10 10
11;; GNU Emacs is free software; you can redistribute it and/or modify
12;; it under the terms of the GNU General Public License as published by
13;; the Free Software Foundation; either version 2, or (at your option)
14;; any later version.
15
11;; GNU Emacs is distributed in the hope that it will be useful, 16;; GNU Emacs is distributed in the hope that it will be useful,
12;; but WITHOUT ANY WARRANTY. No author or distributor 17;; but WITHOUT ANY WARRANTY; without even the implied warranty of
13;; accepts responsibility to anyone for the consequences of using it 18;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14;; or for whether it serves any particular purpose or works at all, 19;; GNU General Public License for more details.
15;; unless he says so in writing. Refer to the GNU Emacs General Public 20
16;; License for full details. 21;; You should have received a copy of the GNU General Public License
17 22;; along with GNU Emacs; see the file COPYING. If not, write to the
18;; Everyone is granted permission to copy, modify and redistribute 23;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
19;; GNU Emacs, but only under the conditions described in the 24;; Boston, MA 02110-1301, USA.
20;; GNU Emacs General Public License. A copy of this license is
21;; supposed to have been given to you along with GNU Emacs so you
22;; can know your rights and responsibilities. It should be in a
23;; file named COPYING. Among other things, the copyright notice
24;; and this notice must be preserved on all copies.
25 25
26;;; Commentary: 26;;; Commentary:
27 27
diff --git a/lisp/calc/calccomp.el b/lisp/calc/calccomp.el
index 05ec4daf920..1bc844af481 100644
--- a/lisp/calc/calccomp.el
+++ b/lisp/calc/calccomp.el
@@ -8,20 +8,20 @@
8 8
9;; This file is part of GNU Emacs. 9;; This file is part of GNU Emacs.
10 10
11;; GNU Emacs is free software; you can redistribute it and/or modify
12;; it under the terms of the GNU General Public License as published by
13;; the Free Software Foundation; either version 2, or (at your option)
14;; any later version.
15
11;; GNU Emacs is distributed in the hope that it will be useful, 16;; GNU Emacs is distributed in the hope that it will be useful,
12;; but WITHOUT ANY WARRANTY. No author or distributor 17;; but WITHOUT ANY WARRANTY; without even the implied warranty of
13;; accepts responsibility to anyone for the consequences of using it 18;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14;; or for whether it serves any particular purpose or works at all, 19;; GNU General Public License for more details.
15;; unless he says so in writing. Refer to the GNU Emacs General Public 20
16;; License for full details. 21;; You should have received a copy of the GNU General Public License
17 22;; along with GNU Emacs; see the file COPYING. If not, write to the
18;; Everyone is granted permission to copy, modify and redistribute 23;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
19;; GNU Emacs, but only under the conditions described in the 24;; Boston, MA 02110-1301, USA.
20;; GNU Emacs General Public License. A copy of this license is
21;; supposed to have been given to you along with GNU Emacs so you
22;; can know your rights and responsibilities. It should be in a
23;; file named COPYING. Among other things, the copyright notice
24;; and this notice must be preserved on all copies.
25 25
26;;; Commentary: 26;;; Commentary:
27 27
diff --git a/lisp/calc/calcsel2.el b/lisp/calc/calcsel2.el
index d0f982f1598..f28efba30b8 100644
--- a/lisp/calc/calcsel2.el
+++ b/lisp/calc/calcsel2.el
@@ -8,20 +8,20 @@
8 8
9;; This file is part of GNU Emacs. 9;; This file is part of GNU Emacs.
10 10
11;; GNU Emacs is free software; you can redistribute it and/or modify
12;; it under the terms of the GNU General Public License as published by
13;; the Free Software Foundation; either version 2, or (at your option)
14;; any later version.
15
11;; GNU Emacs is distributed in the hope that it will be useful, 16;; GNU Emacs is distributed in the hope that it will be useful,
12;; but WITHOUT ANY WARRANTY. No author or distributor 17;; but WITHOUT ANY WARRANTY; without even the implied warranty of
13;; accepts responsibility to anyone for the consequences of using it 18;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14;; or for whether it serves any particular purpose or works at all, 19;; GNU General Public License for more details.
15;; unless he says so in writing. Refer to the GNU Emacs General Public
16;; License for full details.
17 20
18;; Everyone is granted permission to copy, modify and redistribute 21;; You should have received a copy of the GNU General Public License
19;; GNU Emacs, but only under the conditions described in the 22;; along with GNU Emacs; see the file COPYING. If not, write to the
20;; GNU Emacs General Public License. A copy of this license is 23;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
21;; supposed to have been given to you along with GNU Emacs so you 24;; Boston, MA 02110-1301, USA.
22;; can know your rights and responsibilities. It should be in a
23;; file named COPYING. Among other things, the copyright notice
24;; and this notice must be preserved on all copies.
25 25
26;;; Commentary: 26;;; Commentary:
27 27
diff --git a/lisp/calendar/cal-china.el b/lisp/calendar/cal-china.el
index 1c08d553754..a838141db1c 100644
--- a/lisp/calendar/cal-china.el
+++ b/lisp/calendar/cal-china.el
@@ -83,8 +83,8 @@ UT+7:45:40 to UT+8."
83; The correct value is as follows, but the Chinese calendrical 83; The correct value is as follows, but the Chinese calendrical
84; authorities do NOT use DST in determining astronomical events: 84; authorities do NOT use DST in determining astronomical events:
85; 60 85; 60
86 "*Number of minutes difference between daylight savings and standard time 86 "*Number of minutes difference between daylight saving and standard time
87for Chinese calendar. Default is for no daylight savings time." 87for Chinese calendar. Default is for no daylight saving time."
88 :type 'integer 88 :type 'integer
89 :group 'chinese-calendar) 89 :group 'chinese-calendar)
90 90
@@ -99,7 +99,7 @@ at 1928-01-01 00:00:00 from `PMT' to `CST'."
99 :group 'chinese-calendar) 99 :group 'chinese-calendar)
100 100
101(defcustom chinese-calendar-daylight-time-zone-name "CDT" 101(defcustom chinese-calendar-daylight-time-zone-name "CDT"
102 "*Abbreviated name of daylight-savings time zone used for Chinese calendar." 102 "*Abbreviated name of daylight saving time zone used for Chinese calendar."
103 :type 'string 103 :type 'string
104 :group 'chinese-calendar) 104 :group 'chinese-calendar)
105 105
@@ -109,8 +109,8 @@ at 1928-01-01 00:00:00 from `PMT' to `CST'."
109; '(cond ((< 1986 year) (calendar-nth-named-day 1 0 4 year 10)) 109; '(cond ((< 1986 year) (calendar-nth-named-day 1 0 4 year 10))
110; ((= 1986 year) '(5 4 1986)) 110; ((= 1986 year) '(5 4 1986))
111; (t nil)) 111; (t nil))
112 "*Sexp giving the date on which daylight savings time starts for Chinese 112 "*Sexp giving the date on which daylight saving time starts for Chinese
113calendar. Default is for no daylight savings time. See documentation of 113calendar. Default is for no daylight saving time. See documentation of
114`calendar-daylight-savings-starts'." 114`calendar-daylight-savings-starts'."
115 :type 'sexp 115 :type 'sexp
116 :group 'chinese-calendar) 116 :group 'chinese-calendar)
@@ -119,21 +119,21 @@ calendar. Default is for no daylight savings time. See documentation of
119; The correct value is as follows, but the Chinese calendrical 119; The correct value is as follows, but the Chinese calendrical
120; authorities do NOT use DST in determining astronomical events: 120; authorities do NOT use DST in determining astronomical events:
121; '(if (<= 1986 year) (calendar-nth-named-day 1 0 9 year 11)) 121; '(if (<= 1986 year) (calendar-nth-named-day 1 0 9 year 11))
122 "*Sexp giving the date on which daylight savings time ends for Chinese 122 "*Sexp giving the date on which daylight saving time ends for Chinese
123calendar. Default is for no daylight savings time. See documentation of 123calendar. Default is for no daylight saving time. See documentation of
124`calendar-daylight-savings-ends'." 124`calendar-daylight-savings-ends'."
125 :type 'sexp 125 :type 'sexp
126 :group 'chinese-calendar) 126 :group 'chinese-calendar)
127 127
128(defcustom chinese-calendar-daylight-savings-starts-time 0 128(defcustom chinese-calendar-daylight-savings-starts-time 0
129 "*Number of minutes after midnight that daylight savings time starts for 129 "*Number of minutes after midnight that daylight saving time starts for
130Chinese calendar. Default is for no daylight savings time." 130Chinese calendar. Default is for no daylight saving time."
131 :type 'integer 131 :type 'integer
132 :group 'chinese-calendar) 132 :group 'chinese-calendar)
133 133
134(defcustom chinese-calendar-daylight-savings-ends-time 0 134(defcustom chinese-calendar-daylight-savings-ends-time 0
135 "*Number of minutes after midnight that daylight savings time ends for 135 "*Number of minutes after midnight that daylight saving time ends for
136Chinese calendar. Default is for no daylight savings time." 136Chinese calendar. Default is for no daylight saving time."
137 :type 'integer 137 :type 'integer
138 :group 'chinese-calendar) 138 :group 'chinese-calendar)
139 139
diff --git a/lisp/calendar/cal-dst.el b/lisp/calendar/cal-dst.el
index 928c42f9122..3aea69b8ccf 100644
--- a/lisp/calendar/cal-dst.el
+++ b/lisp/calendar/cal-dst.el
@@ -1,4 +1,4 @@
1;;; cal-dst.el --- calendar functions for daylight savings rules 1;;; cal-dst.el --- calendar functions for daylight saving rules
2 2
3;; Copyright (C) 1993, 1994, 1995, 1996, 2001, 2002, 2003, 2004, 2005, 3;; Copyright (C) 1993, 1994, 1995, 1996, 2001, 2002, 2003, 2004, 2005,
4;; 2006, 2007 Free Software Foundation, Inc. 4;; 2006, 2007 Free Software Foundation, Inc.
@@ -7,7 +7,7 @@
7;; Edward M. Reingold <reingold@cs.uiuc.edu> 7;; Edward M. Reingold <reingold@cs.uiuc.edu>
8;; Maintainer: Glenn Morris <rgm@gnu.org> 8;; Maintainer: Glenn Morris <rgm@gnu.org>
9;; Keywords: calendar 9;; Keywords: calendar
10;; Human-Keywords: daylight savings time, calendar, diary, holidays 10;; Human-Keywords: daylight saving time, calendar, diary, holidays
11 11
12;; This file is part of GNU Emacs. 12;; This file is part of GNU Emacs.
13 13
@@ -29,7 +29,7 @@
29;;; Commentary: 29;;; Commentary:
30 30
31;; This collection of functions implements the features of calendar.el and 31;; This collection of functions implements the features of calendar.el and
32;; holiday.el that deal with daylight savings time. 32;; holiday.el that deal with daylight saving time.
33 33
34;; Comments, corrections, and improvements should be sent to 34;; Comments, corrections, and improvements should be sent to
35;; Edward M. Reingold Department of Computer Science 35;; Edward M. Reingold Department of Computer Science
@@ -46,7 +46,7 @@
46 "Non-nil means to check each year for DST transitions as needed. 46 "Non-nil means to check each year for DST transitions as needed.
47Otherwise assume the next two transitions found after the 47Otherwise assume the next two transitions found after the
48current date apply to all years. This is faster, but not always 48current date apply to all years. This is faster, but not always
49correct, since the dates of Daylight Saving transitions sometimes 49correct, since the dates of daylight saving transitions sometimes
50change." 50change."
51 :type 'boolean 51 :type 'boolean
52 :version "22.1" 52 :version "22.1"
@@ -142,8 +142,8 @@ Return nil if no such transition can be found."
142 142
143(defun calendar-time-zone-daylight-rules (abs-date utc-diff) 143(defun calendar-time-zone-daylight-rules (abs-date utc-diff)
144 "Return daylight transition rule for ABS-DATE, UTC-DIFF sec offset from UTC. 144 "Return daylight transition rule for ABS-DATE, UTC-DIFF sec offset from UTC.
145ABS-DATE must specify a day that contains a daylight savings transition. 145ABS-DATE must specify a day that contains a daylight saving transition.
146The result has the proper form for calendar-daylight-savings-starts'." 146The result has the proper form for `calendar-daylight-savings-starts'."
147 (let* ((date (calendar-gregorian-from-absolute abs-date)) 147 (let* ((date (calendar-gregorian-from-absolute abs-date))
148 (weekday (% abs-date 7)) 148 (weekday (% abs-date 7))
149 (m (extract-calendar-month date)) 149 (m (extract-calendar-month date))
@@ -215,7 +215,7 @@ The result has the proper form for calendar-daylight-savings-starts'."
215;; See thread 215;; See thread
216;; http://lists.gnu.org/archive/html/emacs-pretest-bug/2006-11/msg00060.html 216;; http://lists.gnu.org/archive/html/emacs-pretest-bug/2006-11/msg00060.html
217(defun calendar-dst-find-data (&optional time) 217(defun calendar-dst-find-data (&optional time)
218 "Find data on the first Daylight Saving Time transitions after TIME. 218 "Find data on the first daylight saving time transitions after TIME.
219TIME defaults to `current-time'. Return value is as described 219TIME defaults to `current-time'. Return value is as described
220for `calendar-current-time-zone'." 220for `calendar-current-time-zone'."
221 (let* ((t0 (or time (current-time))) 221 (let* ((t0 (or time (current-time)))
@@ -228,9 +228,9 @@ for `calendar-current-time-zone'."
228 (let* ((t1 (calendar-next-time-zone-transition t0)) 228 (let* ((t1 (calendar-next-time-zone-transition t0))
229 (t2 (and t1 (calendar-next-time-zone-transition t1)))) 229 (t2 (and t1 (calendar-next-time-zone-transition t1))))
230 (if (not t2) 230 (if (not t2)
231 ;; This locale does not have daylight savings time. 231 ;; This locale does not have daylight saving time.
232 (list (/ t0-utc-diff 60) 0 t0-name t0-name nil nil 0 0) 232 (list (/ t0-utc-diff 60) 0 t0-name t0-name nil nil 0 0)
233 ;; Use heuristics to find daylight savings parameters. 233 ;; Use heuristics to find daylight saving parameters.
234 (let* ((t1-zone (current-time-zone t1)) 234 (let* ((t1-zone (current-time-zone t1))
235 (t1-utc-diff (car t1-zone)) 235 (t1-utc-diff (car t1-zone))
236 (t1-name (car (cdr t1-zone))) 236 (t1-name (car (cdr t1-zone)))
@@ -254,14 +254,14 @@ for `calendar-current-time-zone'."
254 ))))))))) 254 )))))))))
255 255
256(defvar calendar-dst-transition-cache nil 256(defvar calendar-dst-transition-cache nil
257 "Internal cal-dst variable storing date of Daylight Saving Time transitions. 257 "Internal cal-dst variable storing date of daylight saving time transitions.
258Value is a list with elements of the form (YEAR START END), where 258Value is a list with elements of the form (YEAR START END), where
259START and END are expressions that when evaluated return the 259START and END are expressions that when evaluated return the
260start and end dates (respectively) for DST in YEAR. Used by the 260start and end dates (respectively) for DST in YEAR. Used by the
261function `calendar-dst-find-startend'.") 261function `calendar-dst-find-startend'.")
262 262
263(defun calendar-dst-find-startend (year) 263(defun calendar-dst-find-startend (year)
264 "Find the dates in YEAR on which Daylight Saving Time starts and ends. 264 "Find the dates in YEAR on which daylight saving time starts and ends.
265Returns a list (YEAR START END), where START and END are 265Returns a list (YEAR START END), where START and END are
266expressions that when evaluated return the start and end dates, 266expressions that when evaluated return the start and end dates,
267respectively. This function first attempts to use pre-calculated 267respectively. This function first attempts to use pre-calculated
@@ -288,16 +288,16 @@ system knows:
288UTC-DIFF is an integer specifying the number of minutes difference between 288UTC-DIFF is an integer specifying the number of minutes difference between
289 standard time in the current time zone and Coordinated Universal Time 289 standard time in the current time zone and Coordinated Universal Time
290 (Greenwich Mean Time). A negative value means west of Greenwich. 290 (Greenwich Mean Time). A negative value means west of Greenwich.
291DST-OFFSET is an integer giving the daylight savings time offset in minutes. 291DST-OFFSET is an integer giving the daylight saving time offset in minutes.
292STD-ZONE is a string giving the name of the time zone when no seasonal time 292STD-ZONE is a string giving the name of the time zone when no seasonal time
293 adjustment is in effect. 293 adjustment is in effect.
294DST-ZONE is a string giving the name of the time zone when there is a seasonal 294DST-ZONE is a string giving the name of the time zone when there is a seasonal
295 time adjustment in effect. 295 time adjustment in effect.
296DST-STARTS and DST-ENDS are sexps in the variable `year' giving the daylight 296DST-STARTS and DST-ENDS are sexps in the variable `year' giving the daylight
297 savings time start and end rules, in the form expected by 297 saving time start and end rules, in the form expected by
298 `calendar-daylight-savings-starts'. 298 `calendar-daylight-savings-starts'.
299DST-STARTS-TIME and DST-ENDS-TIME are integers giving the number of minutes 299DST-STARTS-TIME and DST-ENDS-TIME are integers giving the number of minutes
300 after midnight that daylight savings time starts and ends. 300 after midnight that daylight saving time starts and ends.
301 301
302If the local area does not use a seasonal time adjustment, STD-ZONE and 302If the local area does not use a seasonal time adjustment, STD-ZONE and
303DST-ZONE are equal, and all the DST-* integer variables are 0. 303DST-ZONE are equal, and all the DST-* integer variables are 0.
@@ -308,7 +308,7 @@ it can't find."
308 (unless calendar-current-time-zone-cache 308 (unless calendar-current-time-zone-cache
309 (setq calendar-current-time-zone-cache (calendar-dst-find-data)))) 309 (setq calendar-current-time-zone-cache (calendar-dst-find-data))))
310 310
311;;; The following eight defvars relating to daylight savings time should NOT be 311;;; The following eight defvars relating to daylight saving time should NOT be
312;;; marked to go into loaddefs.el where they would be evaluated when Emacs is 312;;; marked to go into loaddefs.el where they would be evaluated when Emacs is
313;;; dumped. These variables' appropriate values depend on the conditions under 313;;; dumped. These variables' appropriate values depend on the conditions under
314;;; which the code is INVOKED; so it's inappropriate to initialize them when 314;;; which the code is INVOKED; so it's inappropriate to initialize them when
@@ -324,9 +324,9 @@ example, -300 for New York City, -480 for Los Angeles.")
324 324
325(defvar calendar-daylight-time-offset 325(defvar calendar-daylight-time-offset
326 (or (car (cdr calendar-current-time-zone-cache)) 60) 326 (or (car (cdr calendar-current-time-zone-cache)) 60)
327 "*Number of minutes difference between daylight savings and standard time. 327 "*Number of minutes difference between daylight saving and standard time.
328 328
329If the locale never uses daylight savings time, set this to 0.") 329If the locale never uses daylight saving time, set this to 0.")
330 330
331(defvar calendar-standard-time-zone-name 331(defvar calendar-standard-time-zone-name
332 (or (car (nthcdr 2 calendar-current-time-zone-cache)) "EST") 332 (or (car (nthcdr 2 calendar-current-time-zone-cache)) "EST")
@@ -335,12 +335,12 @@ For example, \"EST\" in New York City, \"PST\" for Los Angeles.")
335 335
336(defvar calendar-daylight-time-zone-name 336(defvar calendar-daylight-time-zone-name
337 (or (car (nthcdr 3 calendar-current-time-zone-cache)) "EDT") 337 (or (car (nthcdr 3 calendar-current-time-zone-cache)) "EDT")
338 "*Abbreviated name of daylight-savings time zone at `calendar-location-name'. 338 "*Abbreviated name of daylight saving time zone at `calendar-location-name'.
339For example, \"EDT\" in New York City, \"PDT\" for Los Angeles.") 339For example, \"EDT\" in New York City, \"PDT\" for Los Angeles.")
340 340
341 341
342(defun calendar-dst-starts (year) 342(defun calendar-dst-starts (year)
343 "Return the date of YEAR on which Daylight Saving Time starts. 343 "Return the date of YEAR on which daylight saving time starts.
344This function respects the value of `calendar-dst-check-each-year-flag'." 344This function respects the value of `calendar-dst-check-each-year-flag'."
345 (or (let ((expr (if calendar-dst-check-each-year-flag 345 (or (let ((expr (if calendar-dst-check-each-year-flag
346 (cadr (calendar-dst-find-startend year)) 346 (cadr (calendar-dst-find-startend year))
@@ -351,7 +351,7 @@ This function respects the value of `calendar-dst-check-each-year-flag'."
351 (calendar-nth-named-day 2 0 3 year)))) 351 (calendar-nth-named-day 2 0 3 year))))
352 352
353(defun calendar-dst-ends (year) 353(defun calendar-dst-ends (year)
354 "Return the date of YEAR on which Daylight Saving Time ends. 354 "Return the date of YEAR on which daylight saving time ends.
355This function respects the value of `calendar-dst-check-each-year-flag'." 355This function respects the value of `calendar-dst-check-each-year-flag'."
356 (or (let ((expr (if calendar-dst-check-each-year-flag 356 (or (let ((expr (if calendar-dst-check-each-year-flag
357 (nth 2 (calendar-dst-find-startend year)) 357 (nth 2 (calendar-dst-find-startend year))
@@ -366,13 +366,13 @@ This function respects the value of `calendar-dst-check-each-year-flag'."
366(put 'calendar-daylight-savings-starts 'risky-local-variable t) 366(put 'calendar-daylight-savings-starts 'risky-local-variable t)
367(defvar calendar-daylight-savings-starts 367(defvar calendar-daylight-savings-starts
368 '(calendar-dst-starts year) 368 '(calendar-dst-starts year)
369 "*Sexp giving the date on which daylight savings time starts. 369 "*Sexp giving the date on which daylight saving time starts.
370This is an expression in the variable `year' whose value gives the Gregorian 370This is an expression in the variable `year' whose value gives the Gregorian
371date in the form (month day year) on which daylight savings time starts. It is 371date in the form (month day year) on which daylight saving time starts. It is
372used to determine the starting date of daylight savings time for the holiday 372used to determine the starting date of daylight saving time for the holiday
373list and for correcting times of day in the solar and lunar calculations. 373list and for correcting times of day in the solar and lunar calculations.
374 374
375For example, if daylight savings time is mandated to start on October 1, 375For example, if daylight saving time is mandated to start on October 1,
376you would set `calendar-daylight-savings-starts' to 376you would set `calendar-daylight-savings-starts' to
377 377
378 '(10 1 year) 378 '(10 1 year)
@@ -381,35 +381,35 @@ If it starts on the first Sunday in April, you would set it to
381 381
382 '(calendar-nth-named-day 1 0 4 year) 382 '(calendar-nth-named-day 1 0 4 year)
383 383
384If the locale never uses daylight savings time, set this to nil.") 384If the locale never uses daylight saving time, set this to nil.")
385 385
386;;;###autoload 386;;;###autoload
387(put 'calendar-daylight-savings-ends 'risky-local-variable t) 387(put 'calendar-daylight-savings-ends 'risky-local-variable t)
388(defvar calendar-daylight-savings-ends 388(defvar calendar-daylight-savings-ends
389 '(calendar-dst-ends year) 389 '(calendar-dst-ends year)
390 "*Sexp giving the date on which daylight savings time ends. 390 "*Sexp giving the date on which daylight saving time ends.
391This is an expression in the variable `year' whose value gives the Gregorian 391This is an expression in the variable `year' whose value gives the Gregorian
392date in the form (month day year) on which daylight savings time ends. It is 392date in the form (month day year) on which daylight saving time ends. It is
393used to determine the starting date of daylight savings time for the holiday 393used to determine the starting date of daylight saving time for the holiday
394list and for correcting times of day in the solar and lunar calculations. 394list and for correcting times of day in the solar and lunar calculations.
395 395
396For example, if daylight savings time ends on the last Sunday in October: 396For example, if daylight saving time ends on the last Sunday in October:
397 397
398 '(calendar-nth-named-day -1 0 10 year) 398 '(calendar-nth-named-day -1 0 10 year)
399 399
400If the locale never uses daylight savings time, set this to nil.") 400If the locale never uses daylight saving time, set this to nil.")
401 401
402(defvar calendar-daylight-savings-starts-time 402(defvar calendar-daylight-savings-starts-time
403 (or (car (nthcdr 6 calendar-current-time-zone-cache)) 120) 403 (or (car (nthcdr 6 calendar-current-time-zone-cache)) 120)
404 "*Number of minutes after midnight that daylight savings time starts.") 404 "*Number of minutes after midnight that daylight saving time starts.")
405 405
406(defvar calendar-daylight-savings-ends-time 406(defvar calendar-daylight-savings-ends-time
407 (or (car (nthcdr 7 calendar-current-time-zone-cache)) 407 (or (car (nthcdr 7 calendar-current-time-zone-cache))
408 calendar-daylight-savings-starts-time) 408 calendar-daylight-savings-starts-time)
409 "*Number of minutes after midnight that daylight savings time ends.") 409 "*Number of minutes after midnight that daylight saving time ends.")
410 410
411(defun dst-in-effect (date) 411(defun dst-in-effect (date)
412 "True if on absolute DATE daylight savings time is in effect. 412 "True if on absolute DATE daylight saving time is in effect.
413Fractional part of DATE is local standard time of day." 413Fractional part of DATE is local standard time of day."
414 (let* ((year (extract-calendar-year 414 (let* ((year (extract-calendar-year
415 (calendar-gregorian-from-absolute (floor date)))) 415 (calendar-gregorian-from-absolute (floor date))))
@@ -438,10 +438,10 @@ adjusted for `zone'; here `date' is a list (month day year), `adj-time' is a
438decimal fraction time, and `zone' is a string. 438decimal fraction time, and `zone' is a string.
439 439
440Optional parameter STYLE forces the result time to be standard time when its 440Optional parameter STYLE forces the result time to be standard time when its
441value is 'standard and daylight savings time (if available) when its value is 441value is 'standard and daylight saving time (if available) when its value is
442'daylight. 442'daylight.
443 443
444Conversion to daylight savings time is done according to 444Conversion to daylight saving time is done according to
445`calendar-daylight-savings-starts', `calendar-daylight-savings-ends', 445`calendar-daylight-savings-starts', `calendar-daylight-savings-ends',
446`calendar-daylight-savings-starts-time', 446`calendar-daylight-savings-starts-time',
447`calendar-daylight-savings-ends-time', and 447`calendar-daylight-savings-ends-time', and
diff --git a/lisp/calendar/calendar.el b/lisp/calendar/calendar.el
index 711de4c1f28..fa7a68acd30 100644
--- a/lisp/calendar/calendar.el
+++ b/lisp/calendar/calendar.el
@@ -57,7 +57,7 @@
57;; appt.el Appointment notification 57;; appt.el Appointment notification
58;; cal-china.el Chinese calendar 58;; cal-china.el Chinese calendar
59;; cal-coptic.el Coptic/Ethiopic calendars 59;; cal-coptic.el Coptic/Ethiopic calendars
60;; cal-dst.el Daylight savings time rules 60;; cal-dst.el Daylight saving time rules
61;; cal-hebrew.el Hebrew calendar 61;; cal-hebrew.el Hebrew calendar
62;; cal-islam.el Islamic calendar 62;; cal-islam.el Islamic calendar
63;; cal-bahai.el Baha'i calendar 63;; cal-bahai.el Baha'i calendar
@@ -770,6 +770,8 @@ Can be used for appointment notification."
770 :type 'hook 770 :type 'hook
771 :group 'diary) 771 :group 'diary)
772 772
773(autoload 'diary-set-maybe-redraw "diary-lib")
774
773;;;###autoload 775;;;###autoload
774(defcustom diary-display-hook nil 776(defcustom diary-display-hook nil
775 "List of functions that handle the display of the diary. 777 "List of functions that handle the display of the diary.
@@ -794,6 +796,8 @@ if that day is a holiday; if you want such days to be shown in the fancy
794diary buffer, set the variable `diary-list-include-blanks' to t." 796diary buffer, set the variable `diary-list-include-blanks' to t."
795 :type 'hook 797 :type 'hook
796 :options '(fancy-diary-display) 798 :options '(fancy-diary-display)
799 :initialize 'custom-initialize-default
800 :set 'diary-set-maybe-redraw
797 :group 'diary) 801 :group 'diary)
798 802
799;;;###autoload 803;;;###autoload
@@ -1160,7 +1164,7 @@ See the documentation for `calendar-holidays' for details."
1160 (funcall 1164 (funcall
1161 'holiday-sexp 1165 'holiday-sexp
1162 calendar-daylight-savings-starts 1166 calendar-daylight-savings-starts
1163 '(format "Daylight Savings Time Begins %s" 1167 '(format "Daylight Saving Time Begins %s"
1164 (if (fboundp 'atan) 1168 (if (fboundp 'atan)
1165 (solar-time-string 1169 (solar-time-string
1166 (/ calendar-daylight-savings-starts-time (float 60)) 1170 (/ calendar-daylight-savings-starts-time (float 60))
@@ -1169,7 +1173,7 @@ See the documentation for `calendar-holidays' for details."
1169 (funcall 1173 (funcall
1170 'holiday-sexp 1174 'holiday-sexp
1171 calendar-daylight-savings-ends 1175 calendar-daylight-savings-ends
1172 '(format "Daylight Savings Time Ends %s" 1176 '(format "Daylight Saving Time Ends %s"
1173 (if (fboundp 'atan) 1177 (if (fboundp 'atan)
1174 (solar-time-string 1178 (solar-time-string
1175 (/ calendar-daylight-savings-ends-time (float 60)) 1179 (/ calendar-daylight-savings-ends-time (float 60))
diff --git a/lisp/calendar/diary-lib.el b/lisp/calendar/diary-lib.el
index a5644f7972d..72620a7f9bb 100644
--- a/lisp/calendar/diary-lib.el
+++ b/lisp/calendar/diary-lib.el
@@ -267,10 +267,12 @@ search."
267;; This can be removed once the kill/yank treatment of invisible text 267;; This can be removed once the kill/yank treatment of invisible text
268;; (see etc/TODO) is fixed. -- gm 268;; (see etc/TODO) is fixed. -- gm
269(defcustom diary-header-line-flag t 269(defcustom diary-header-line-flag t
270 "If non-nil, `diary-simple-display' will show a header line. 270 "If non-nil, `simple-diary-display' will show a header line.
271The format of the header is specified by `diary-header-line-format'." 271The format of the header is specified by `diary-header-line-format'."
272 :group 'diary 272 :group 'diary
273 :type 'boolean 273 :type 'boolean
274 :initialize 'custom-initialize-default
275 :set 'diary-set-maybe-redraw
274 :version "22.1") 276 :version "22.1")
275 277
276(defvar diary-selective-display nil) 278(defvar diary-selective-display nil)
@@ -282,7 +284,7 @@ The format of the header is specified by `diary-header-line-format'."
282before edit/copy" 284before edit/copy"
283 "Diary")) 285 "Diary"))
284 ?\s (frame-width))) 286 ?\s (frame-width)))
285 "Format of the header line displayed by `diary-simple-display'. 287 "Format of the header line displayed by `simple-diary-display'.
286Only used if `diary-header-line-flag' is non-nil." 288Only used if `diary-header-line-flag' is non-nil."
287 :group 'diary 289 :group 'diary
288 :type 'sexp 290 :type 'sexp
@@ -290,6 +292,27 @@ Only used if `diary-header-line-flag' is non-nil."
290 292
291(defvar diary-saved-point) ; internal 293(defvar diary-saved-point) ; internal
292 294
295(defun diary-live-p ()
296 "Return non-nil if the diary is being displayed.
297This is not the same as just visiting the `diary-file'."
298 (or (get-buffer fancy-diary-buffer)
299 (when diary-file
300 (let ((dbuff (find-buffer-visiting
301 (substitute-in-file-name diary-file))))
302 (when dbuff
303 (with-current-buffer dbuff
304 diary-selective-display))))))
305
306(defun diary-set-maybe-redraw (symbol value)
307 "Set SYMBOL's value to VALUE, and redraw the diary if necessary.
308Redraws the diary if it is being displayed (note this is not the same as
309just visiting the `diary-file'), and SYMBOL's value is to be changed."
310 (let ((oldvalue (eval symbol)))
311 (custom-set-default symbol value)
312 (and (not (equal value oldvalue))
313 (diary-live-p)
314 ;; Note this assumes diary was called without prefix arg.
315 (diary))))
293 316
294(defcustom number-of-diary-entries 1 317(defcustom number-of-diary-entries 1
295 "Specifies how many days of diary entries are to be displayed initially. 318 "Specifies how many days of diary entries are to be displayed initially.
@@ -300,10 +323,10 @@ entries will be displayed. If the value 2 is used, then both the current
300day's and the next day's entries will be displayed. 323day's and the next day's entries will be displayed.
301 324
302The value can also be a vector such as [0 2 2 2 2 4 1]; this value 325The value can also be a vector such as [0 2 2 2 2 4 1]; this value
303says to display no diary entries on Sunday, the display the entries 326says to display no diary entries on Sunday, the entries for
304for the current date and the day after on Monday through Thursday, 327the current date and the day after on Monday through Thursday,
305display Friday through Monday's entries on Friday, and display only 328Friday through Monday's entries on Friday, and only Saturday's
306Saturday's entries on Saturday. 329entries on Saturday.
307 330
308This variable does not affect the diary display with the `d' command 331This variable does not affect the diary display with the `d' command
309from the calendar; in that case, the prefix argument controls the 332from the calendar; in that case, the prefix argument controls the
@@ -317,6 +340,8 @@ number of days of diary entries displayed."
317 (integer :tag "Thursday") 340 (integer :tag "Thursday")
318 (integer :tag "Friday") 341 (integer :tag "Friday")
319 (integer :tag "Saturday"))) 342 (integer :tag "Saturday")))
343 :initialize 'custom-initialize-default
344 :set 'diary-set-maybe-redraw
320 :group 'diary) 345 :group 'diary)
321 346
322 347
@@ -410,7 +435,10 @@ If LIST-ONLY is non-nil don't modify or display the buffer, only return a list."
410 (or (verify-visited-file-modtime diary-buffer) 435 (or (verify-visited-file-modtime diary-buffer)
411 (revert-buffer t t)))) 436 (revert-buffer t t))))
412 ;; Setup things like the header-line-format and invisibility-spec. 437 ;; Setup things like the header-line-format and invisibility-spec.
413 (when (eq major-mode default-major-mode) (diary-mode)) 438 ;; This used to only run if the major-mode was default-major-mode,
439 ;; but that meant eg changes to header-line-format did not
440 ;; take effect from one diary invocation to the next.
441 (diary-mode)
414 ;; d-s-p is passed to the diary display function. 442 ;; d-s-p is passed to the diary display function.
415 (let ((diary-saved-point (point))) 443 (let ((diary-saved-point (point)))
416 (save-excursion 444 (save-excursion
diff --git a/lisp/calendar/icalendar.el b/lisp/calendar/icalendar.el
index cb9885fc125..7bbd12a436e 100644
--- a/lisp/calendar/icalendar.el
+++ b/lisp/calendar/icalendar.el
@@ -101,7 +101,7 @@
101 101
102;;; Code: 102;;; Code:
103 103
104(defconst icalendar-version "0.14" 104(defconst icalendar-version "0.15"
105 "Version number of icalendar.el.") 105 "Version number of icalendar.el.")
106 106
107;; ====================================================================== 107;; ======================================================================
@@ -226,16 +226,17 @@ buffer."
226 (replace-match "" nil nil))) 226 (replace-match "" nil nil)))
227 unfolded-buffer)) 227 unfolded-buffer))
228 228
229(defsubst icalendar--rris (&rest args) 229(defsubst icalendar--rris (regexp rep string &optional fixedcase literal)
230 "Replace regular expression in string. 230 "Replace regular expression in string.
231Pass ARGS to `replace-regexp-in-string' (Emacs) or to 231Pass arguments REGEXP REP STRING FIXEDCASE LITERAL to
232`replace-in-string' (XEmacs)." 232`replace-regexp-in-string' (Emacs) or to `replace-in-string' (XEmacs)."
233 (if (fboundp 'replace-regexp-in-string) 233 (cond ((fboundp 'replace-regexp-in-string)
234 ;; Emacs: 234 ;; Emacs:
235 (apply 'replace-regexp-in-string args) 235 (replace-regexp-in-string regexp rep string fixedcase literal))
236 ;; XEmacs: 236 ((fboundp 'replace-in-string)
237 (save-match-data ;; apparently XEmacs needs save-match-data 237 ;; XEmacs:
238 (apply 'replace-in-string args)))) 238 (save-match-data ;; apparently XEmacs needs save-match-data
239 (replace-in-string string regexp rep literal)))))
239 240
240(defun icalendar--read-element (invalue inparams) 241(defun icalendar--read-element (invalue inparams)
241 "Recursively read the next iCalendar element in the current buffer. 242 "Recursively read the next iCalendar element in the current buffer.
@@ -1472,8 +1473,8 @@ object, reads it and adds all VEVENT elements to the diary
1472DIARY-FILE. 1473DIARY-FILE.
1473 1474
1474It will ask for each appointment whether to add it to the diary 1475It will ask for each appointment whether to add it to the diary
1475when DO-NOT-ASK is non-nil. When called interactively, 1476unless DO-NOT-ASK is non-nil. When called interactively,
1476DO-NOT-ASK is set to t, so that you are asked fore each event. 1477DO-NOT-ASK is nil, so that you are asked for each event.
1477 1478
1478NON-MARKING determines whether diary events are created as 1479NON-MARKING determines whether diary events are created as
1479non-marking. 1480non-marking.
@@ -1669,8 +1670,11 @@ written into the buffer `*icalendar-errors*'."
1669 (concat diary-string " " 1670 (concat diary-string " "
1670 (icalendar--format-ical-event e))) 1671 (icalendar--format-ical-event e)))
1671 (if do-not-ask (setq summary nil)) 1672 (if do-not-ask (setq summary nil))
1672 (icalendar--add-diary-entry diary-string diary-file 1673 ;; add entry to diary and store actual name of diary
1673 non-marking summary)) 1674 ;; file (in case it was nil)
1675 (setq diary-file
1676 (icalendar--add-diary-entry diary-string diary-file
1677 non-marking summary)))
1674 ;; event was not ok 1678 ;; event was not ok
1675 (setq found-error t) 1679 (setq found-error t)
1676 (setq error-string 1680 (setq error-string
@@ -1684,13 +1688,15 @@ written into the buffer `*icalendar-errors*'."
1684 (setq error-string (format "%s\n%s\nCannot handle this event: %s" 1688 (setq error-string (format "%s\n%s\nCannot handle this event: %s"
1685 error-val error-string e)) 1689 error-val error-string e))
1686 (message "%s" error-string)))) 1690 (message "%s" error-string))))
1691
1687 ;; insert final newline 1692 ;; insert final newline
1688 (let ((b (find-buffer-visiting diary-file))) 1693 (if diary-file
1689 (when b 1694 (let ((b (find-buffer-visiting diary-file)))
1690 (save-current-buffer 1695 (when b
1691 (set-buffer b) 1696 (save-current-buffer
1692 (goto-char (point-max)) 1697 (set-buffer b)
1693 (insert "\n")))) 1698 (goto-char (point-max))
1699 (insert "\n")))))
1694 (if found-error 1700 (if found-error
1695 (save-current-buffer 1701 (save-current-buffer
1696 (set-buffer (get-buffer-create "*icalendar-errors*")) 1702 (set-buffer (get-buffer-create "*icalendar-errors*"))
@@ -1943,7 +1949,9 @@ the entry."
1943 (setq diary-file 1949 (setq diary-file
1944 (read-file-name "Add appointment to this diary file: "))) 1950 (read-file-name "Add appointment to this diary file: ")))
1945 ;; Note: make-diary-entry will add a trailing blank char.... :( 1951 ;; Note: make-diary-entry will add a trailing blank char.... :(
1946 (make-diary-entry string non-marking diary-file)))) 1952 (make-diary-entry string non-marking diary-file)))
1953 ;; return diary-file in case it has been changed interactively
1954 diary-file)
1947 1955
1948(provide 'icalendar) 1956(provide 'icalendar)
1949 1957
diff --git a/lisp/calendar/lunar.el b/lisp/calendar/lunar.el
index 95bcae3875a..33da7cef8e0 100644
--- a/lisp/calendar/lunar.el
+++ b/lisp/calendar/lunar.el
@@ -377,7 +377,7 @@ use when highlighting the day in the calendar."
377 "Astronomical (Julian) day number of first new moon on or after astronomical 377 "Astronomical (Julian) day number of first new moon on or after astronomical
378\(Julian) day number d. The fractional part is the time of day. 378\(Julian) day number d. The fractional part is the time of day.
379 379
380The date and time are local time, including any daylight savings rules, 380The date and time are local time, including any daylight saving rules,
381as governed by the values of calendar-daylight-savings-starts, 381as governed by the values of calendar-daylight-savings-starts,
382calendar-daylight-savings-starts-time, calendar-daylight-savings-ends, 382calendar-daylight-savings-starts-time, calendar-daylight-savings-ends,
383calendar-daylight-savings-ends-time, calendar-daylight-time-offset, and 383calendar-daylight-savings-ends-time, calendar-daylight-time-offset, and
diff --git a/lisp/calendar/solar.el b/lisp/calendar/solar.el
index f8112b3e896..c4a8352a8d8 100644
--- a/lisp/calendar/solar.el
+++ b/lisp/calendar/solar.el
@@ -507,7 +507,7 @@ Result is in julian centuries of ephemeris time."
507(defun solar-date-next-longitude (d l) 507(defun solar-date-next-longitude (d l)
508 "First moment on or after Julian day number D when sun's longitude is a 508 "First moment on or after Julian day number D when sun's longitude is a
509multiple of L degrees at calendar-location-name with that location's 509multiple of L degrees at calendar-location-name with that location's
510local time (including any daylight savings rules). 510local time (including any daylight saving rules).
511 511
512L must be an integer divisor of 360. 512L must be an integer divisor of 360.
513 513
diff --git a/lisp/comint.el b/lisp/comint.el
index 19ce168a02e..ee102c423b4 100644
--- a/lisp/comint.el
+++ b/lisp/comint.el
@@ -1347,7 +1347,11 @@ Quotes are single and double."
1347(defun comint-delim-arg (arg) 1347(defun comint-delim-arg (arg)
1348 "Return a list of arguments from ARG. 1348 "Return a list of arguments from ARG.
1349Break it up at the delimiters in `comint-delimiter-argument-list'. 1349Break it up at the delimiters in `comint-delimiter-argument-list'.
1350Returned list is backwards." 1350Returned list is backwards.
1351
1352Characters with non-nil values of the text property `literal' are
1353assumed to have literal values (e.g., backslash-escaped
1354characters), and are not considered to be delimiters."
1351 (if (null comint-delimiter-argument-list) 1355 (if (null comint-delimiter-argument-list)
1352 (list arg) 1356 (list arg)
1353 (let ((args nil) 1357 (let ((args nil)
@@ -1356,12 +1360,16 @@ Returned list is backwards."
1356 (while (< pos len) 1360 (while (< pos len)
1357 (let ((char (aref arg pos)) 1361 (let ((char (aref arg pos))
1358 (start pos)) 1362 (start pos))
1359 (if (memq char comint-delimiter-argument-list) 1363 (if (and (memq char comint-delimiter-argument-list)
1364 ;; Ignore backslash-escaped characters.
1365 (not (get-text-property pos 'literal arg)))
1360 (while (and (< pos len) (eq (aref arg pos) char)) 1366 (while (and (< pos len) (eq (aref arg pos) char))
1361 (setq pos (1+ pos))) 1367 (setq pos (1+ pos)))
1362 (while (and (< pos len) 1368 (while (and (< pos len)
1363 (not (memq (aref arg pos) 1369 (not (and (memq (aref arg pos)
1364 comint-delimiter-argument-list))) 1370 comint-delimiter-argument-list)
1371 (not (get-text-property
1372 pos 'literal arg)))))
1365 (setq pos (1+ pos)))) 1373 (setq pos (1+ pos))))
1366 (setq args (cons (substring arg start pos) args)))) 1374 (setq args (cons (substring arg start pos) args))))
1367 args))) 1375 args)))
@@ -1381,24 +1389,32 @@ Argument 0 is the command name."
1381 ;; The third matches '-quoted strings. 1389 ;; The third matches '-quoted strings.
1382 ;; The fourth matches `-quoted strings. 1390 ;; The fourth matches `-quoted strings.
1383 ;; This seems to fit the syntax of BASH 2.0. 1391 ;; This seems to fit the syntax of BASH 2.0.
1384 (let* ((first (if (if (fboundp 'w32-shell-dos-semantics) 1392 (let* ((backslash-escape (not (and (fboundp 'w32-shell-dos-semantics)
1385 (w32-shell-dos-semantics)) 1393 (w32-shell-dos-semantics))))
1386 "[^ \n\t\"'`]+\\|" 1394 (first (if backslash-escape
1387 "[^ \n\t\"'`\\]+\\|\\\\[\"'`\\ \t]+\\|")) 1395 "[^ \n\t\"'`\\]\\|\\(\\\\.\\)\\|"
1396 "[^ \n\t\"'`]+\\|"))
1388 (argpart (concat first 1397 (argpart (concat first
1389 "\\(\"\\([^\"\\]\\|\\\\.\\)*\"\\|\ 1398 "\\(\"\\([^\"\\]\\|\\\\.\\)*\"\\|\
1390'[^']*'\\|\ 1399'[^']*'\\|\
1391`[^`]*`\\)")) 1400`[^`]*`\\)"))
1401 (quote-subexpr (if backslash-escape 2 1))
1392 (args ()) (pos 0) 1402 (args ()) (pos 0)
1393 (count 0) 1403 (count 0)
1394 beg str quotes) 1404 beg str quotes)
1395 ;; Build a list of all the args until we have as many as we want. 1405 ;; Build a list of all the args until we have as many as we want.
1396 (while (and (or (null mth) (<= count mth)) 1406 (while (and (or (null mth) (<= count mth))
1397 (string-match argpart string pos)) 1407 (string-match argpart string pos))
1408 ;; Apply the `literal' text property to backslash-escaped
1409 ;; characters, so that `comint-delim-arg' won't break them up.
1410 (and backslash-escape
1411 (match-beginning 1)
1412 (put-text-property (match-beginning 1) (match-end 1)
1413 'literal t string))
1398 (if (and beg (= pos (match-beginning 0))) 1414 (if (and beg (= pos (match-beginning 0)))
1399 ;; It's contiguous, part of the same arg. 1415 ;; It's contiguous, part of the same arg.
1400 (setq pos (match-end 0) 1416 (setq pos (match-end 0)
1401 quotes (or quotes (match-beginning 1))) 1417 quotes (or quotes (match-beginning quote-subexpr)))
1402 ;; It's a new separate arg. 1418 ;; It's a new separate arg.
1403 (if beg 1419 (if beg
1404 ;; Put the previous arg, if there was one, onto ARGS. 1420 ;; Put the previous arg, if there was one, onto ARGS.
@@ -1406,7 +1422,7 @@ Argument 0 is the command name."
1406 args (if quotes (cons str args) 1422 args (if quotes (cons str args)
1407 (nconc (comint-delim-arg str) args)))) 1423 (nconc (comint-delim-arg str) args))))
1408 (setq count (length args)) 1424 (setq count (length args))
1409 (setq quotes (match-beginning 1)) 1425 (setq quotes (match-beginning quote-subexpr))
1410 (setq beg (match-beginning 0)) 1426 (setq beg (match-beginning 0))
1411 (setq pos (match-end 0)))) 1427 (setq pos (match-end 0))))
1412 (if beg 1428 (if beg
diff --git a/lisp/complete.el b/lisp/complete.el
index cc8f29356b6..ce5094d1aef 100644
--- a/lisp/complete.el
+++ b/lisp/complete.el
@@ -147,6 +147,8 @@ If nil, means use the colon-separated path in the variable $INCPATH instead."
147 (cond ((not bind) 147 (cond ((not bind)
148 ;; These bindings are the default bindings. It would be better to 148 ;; These bindings are the default bindings. It would be better to
149 ;; restore the previous bindings. 149 ;; restore the previous bindings.
150 (define-key read-expression-map "\e\t" 'lisp-complete-symbol)
151
150 (define-key completion-map "\t" 'minibuffer-complete) 152 (define-key completion-map "\t" 'minibuffer-complete)
151 (define-key completion-map " " 'minibuffer-complete-word) 153 (define-key completion-map " " 'minibuffer-complete-word)
152 (define-key completion-map "?" 'minibuffer-completion-help) 154 (define-key completion-map "?" 'minibuffer-completion-help)
@@ -157,8 +159,10 @@ If nil, means use the colon-separated path in the variable $INCPATH instead."
157 (define-key must-match-map "\n" 'minibuffer-complete-and-exit) 159 (define-key must-match-map "\n" 'minibuffer-complete-and-exit)
158 (define-key must-match-map "?" 'minibuffer-completion-help) 160 (define-key must-match-map "?" 'minibuffer-completion-help)
159 161
160 (define-key global-map "\e\t" 'complete-symbol)) 162 (define-key global-map [remap lisp-complete-symbol] nil))
161 (PC-default-bindings 163 (PC-default-bindings
164 (define-key read-expression-map "\e\t" 'PC-lisp-complete-symbol)
165
162 (define-key completion-map "\t" 'PC-complete) 166 (define-key completion-map "\t" 'PC-complete)
163 (define-key completion-map " " 'PC-complete-word) 167 (define-key completion-map " " 'PC-complete-word)
164 (define-key completion-map "?" 'PC-completion-help) 168 (define-key completion-map "?" 'PC-completion-help)
@@ -181,7 +185,7 @@ If nil, means use the colon-separated path in the variable $INCPATH instead."
181 (define-key must-match-map "\e\n" 'PC-complete-and-exit) 185 (define-key must-match-map "\e\n" 'PC-complete-and-exit)
182 (define-key must-match-map "\e?" 'PC-completion-help) 186 (define-key must-match-map "\e?" 'PC-completion-help)
183 187
184 (define-key global-map "\e\t" 'PC-lisp-complete-symbol))))) 188 (define-key global-map [remap lisp-complete-symbol] 'PC-lisp-complete-symbol)))))
185 189
186;;;###autoload 190;;;###autoload
187(define-minor-mode partial-completion-mode 191(define-minor-mode partial-completion-mode
@@ -383,6 +387,29 @@ of `minibuffer-completion-table' and the minibuffer contents.")
383 (let ((completion-ignore-case nil)) 387 (let ((completion-ignore-case nil))
384 (test-completion str table pred)))) 388 (test-completion str table pred))))
385 389
390;; The following function is an attempt to work around two problems:
391
392;; (1) When complete.el was written, (try-completion "" '(("") (""))) used to
393;; return the value "". With a change from 2002-07-07 it returns t which caused
394;; `PC-lisp-complete-symbol' to fail with a "Wrong type argument: sequencep, t"
395;; error. `PC-try-completion' returns STRING in this case.
396
397;; (2) (try-completion "" '((""))) returned t before the above-mentioned change.
398;; Since `PC-chop-word' operates on the return value of `try-completion' this
399;; case might have provoked a similar error as in (1). `PC-try-completion'
400;; returns "" instead. I don't know whether this is a real problem though.
401
402;; Since `PC-try-completion' is not a guaranteed to fix these bugs reliably, you
403;; should try to look at the following discussions when you encounter problems:
404;; - emacs-pretest-bug ("Partial Completion" starting 2007-02-23),
405;; - emacs-devel ("[address-of-OP: Partial completion]" starting 2007-02-24),
406;; - emacs-devel ("[address-of-OP: EVAL and mouse selection in *Completions*]"
407;; starting 2007-03-05).
408(defun PC-try-completion (string alist &optional predicate)
409 "Like `try-completion' but return STRING instead of t."
410 (let ((result (try-completion string alist predicate)))
411 (if (eq result t) string result)))
412
386(defun PC-do-completion (&optional mode beg end) 413(defun PC-do-completion (&optional mode beg end)
387 (or beg (setq beg (minibuffer-prompt-end))) 414 (or beg (setq beg (minibuffer-prompt-end)))
388 (or end (setq end (point-max))) 415 (or end (setq end (point-max)))
@@ -390,7 +417,10 @@ of `minibuffer-completion-table' and the minibuffer contents.")
390 (pred minibuffer-completion-predicate) 417 (pred minibuffer-completion-predicate)
391 (filename (funcall PC-completion-as-file-name-predicate)) 418 (filename (funcall PC-completion-as-file-name-predicate))
392 (dirname nil) ; non-nil only if a filename is being completed 419 (dirname nil) ; non-nil only if a filename is being completed
393 (dirlength 0) 420 ;; The following used to be "(dirlength 0)" which caused the erasure of
421 ;; the entire buffer text before `point' when inserting a completion
422 ;; into a buffer.
423 dirlength
394 (str (buffer-substring beg end)) 424 (str (buffer-substring beg end))
395 (incname (and filename (string-match "<\\([^\"<>]*\\)>?$" str))) 425 (incname (and filename (string-match "<\\([^\"<>]*\\)>?$" str)))
396 (ambig nil) 426 (ambig nil)
@@ -404,8 +434,15 @@ of `minibuffer-completion-table' and the minibuffer contents.")
404 434
405 ;; Check if buffer contents can already be considered complete 435 ;; Check if buffer contents can already be considered complete
406 (if (and (eq mode 'exit) 436 (if (and (eq mode 'exit)
407 (test-completion-ignore-case str table pred)) 437 (test-completion str table pred))
408 'complete 438 (progn
439 ;; If completion-ignore-case is non-nil, insert the
440 ;; completion string since that may have a different case.
441 (when completion-ignore-case
442 (setq str (PC-try-completion str table pred))
443 (delete-region beg end)
444 (insert str))
445 'complete)
409 446
410 ;; Do substitutions in directory names 447 ;; Do substitutions in directory names
411 (and filename 448 (and filename
@@ -553,6 +590,9 @@ of `minibuffer-completion-table' and the minibuffer contents.")
553 (setq poss (cons (car p) poss)))) 590 (setq poss (cons (car p) poss))))
554 (setq p (cdr p))))) 591 (setq p (cdr p)))))
555 592
593 ;; If table had duplicates, they can be here.
594 (delete-dups poss)
595
556 ;; Handle completion-ignored-extensions 596 ;; Handle completion-ignored-extensions
557 (and filename 597 (and filename
558 (not (eq mode 'help)) 598 (not (eq mode 'help))
@@ -623,8 +663,8 @@ of `minibuffer-completion-table' and the minibuffer contents.")
623 663
624 ;; Check if next few letters are the same in all cases 664 ;; Check if next few letters are the same in all cases
625 (if (and (not (eq mode 'help)) 665 (if (and (not (eq mode 'help))
626 (setq prefix (try-completion (PC-chunk-after basestr skip) 666 (setq prefix (PC-try-completion
627 poss))) 667 (PC-chunk-after basestr skip) poss)))
628 (let ((first t) i) 668 (let ((first t) i)
629 ;; Retain capitalization of user input even if 669 ;; Retain capitalization of user input even if
630 ;; completion-ignore-case is set. 670 ;; completion-ignore-case is set.
@@ -662,7 +702,7 @@ of `minibuffer-completion-table' and the minibuffer contents.")
662 (setq skip (concat skip 702 (setq skip (concat skip
663 (regexp-quote prefix) 703 (regexp-quote prefix)
664 PC-ndelims-regex) 704 PC-ndelims-regex)
665 prefix (try-completion 705 prefix (PC-try-completion
666 (PC-chunk-after 706 (PC-chunk-after
667 ;; not basestr, because that does 707 ;; not basestr, because that does
668 ;; not reflect insertions 708 ;; not reflect insertions
@@ -996,7 +1036,7 @@ absolute rather than relative to some directory on the SEARCH-PATH."
996 (cond 1036 (cond
997 ((not completion-table) nil) 1037 ((not completion-table) nil)
998 ((eq action 'lambda) (test-completion str2 completion-table nil)) 1038 ((eq action 'lambda) (test-completion str2 completion-table nil))
999 ((eq action nil) (try-completion str2 completion-table nil)) 1039 ((eq action nil) (PC-try-completion str2 completion-table nil))
1000 ((eq action t) (all-completions str2 completion-table nil))))) 1040 ((eq action t) (all-completions str2 completion-table nil)))))
1001 ad-do-it)) 1041 ad-do-it))
1002 1042
diff --git a/lisp/cus-edit.el b/lisp/cus-edit.el
index c49328ac40d..d8fdf966374 100644
--- a/lisp/cus-edit.el
+++ b/lisp/cus-edit.el
@@ -938,9 +938,6 @@ VALUE is a Lisp object.
938If VARIABLE has a `custom-set' property, that is used for setting 938If VARIABLE has a `custom-set' property, that is used for setting
939VARIABLE, otherwise `set-default' is used. 939VARIABLE, otherwise `set-default' is used.
940 940
941The `customized-value' property of the VARIABLE will be set to a list
942with a quoted VALUE as its sole list member.
943
944If VARIABLE has a `variable-interactive' property, that is used as if 941If VARIABLE has a `variable-interactive' property, that is used as if
945it were the arg to `interactive' (which see) to interactively read the value. 942it were the arg to `interactive' (which see) to interactively read the value.
946 943
@@ -971,9 +968,6 @@ Return VALUE.
971If VARIABLE has a `custom-set' property, that is used for setting 968If VARIABLE has a `custom-set' property, that is used for setting
972VARIABLE, otherwise `set-default' is used. 969VARIABLE, otherwise `set-default' is used.
973 970
974The `customized-value' property of the VARIABLE will be set to a list
975with a quoted VALUE as its sole list member.
976
977If VARIABLE has a `variable-interactive' property, that is used as if 971If VARIABLE has a `variable-interactive' property, that is used as if
978it were the arg to `interactive' (which see) to interactively read the value. 972it were the arg to `interactive' (which see) to interactively read the value.
979 973
@@ -993,6 +987,8 @@ If given a prefix (or a COMMENT argument), also prompt for a comment."
993 (comment 987 (comment
994 (put variable 'variable-comment comment) 988 (put variable 'variable-comment comment)
995 (put variable 'saved-variable-comment comment))) 989 (put variable 'saved-variable-comment comment)))
990 (put variable 'customized-value nil)
991 (put variable 'customized-variable-comment nil)
996 (custom-save-all) 992 (custom-save-all)
997 value) 993 value)
998 994
diff --git a/lisp/diff-mode.el b/lisp/diff-mode.el
index c4fac402dbf..543e1bd6a39 100644
--- a/lisp/diff-mode.el
+++ b/lisp/diff-mode.el
@@ -985,7 +985,9 @@ See `after-change-functions' for the meaning of BEG, END and LEN."
985(define-derived-mode diff-mode fundamental-mode "Diff" 985(define-derived-mode diff-mode fundamental-mode "Diff"
986 "Major mode for viewing/editing context diffs. 986 "Major mode for viewing/editing context diffs.
987Supports unified and context diffs as well as (to a lesser extent) 987Supports unified and context diffs as well as (to a lesser extent)
988normal diffs. 988normal diffs. If you edit the buffer manually, diff-mode will try
989to update the hunk headers for you on-the-fly.
990
989When the buffer is read-only, the ESC prefix is not necessary. 991When the buffer is read-only, the ESC prefix is not necessary.
990If you edit the buffer manually, diff-mode will try to update the hunk 992If you edit the buffer manually, diff-mode will try to update the hunk
991headers for you on-the-fly. 993headers for you on-the-fly.
@@ -993,7 +995,12 @@ headers for you on-the-fly.
993You can also switch between context diff and unified diff with \\[diff-context->unified], 995You can also switch between context diff and unified diff with \\[diff-context->unified],
994or vice versa with \\[diff-unified->context] and you can also reverse the direction of 996or vice versa with \\[diff-unified->context] and you can also reverse the direction of
995a diff with \\[diff-reverse-direction]. 997a diff with \\[diff-reverse-direction].
996\\{diff-mode-map}" 998
999When the buffer is read-only, the Meta- modifier is not necessary
1000to run the Diff mode commands:
1001
1002 \\{diff-mode-map}"
1003
997 (set (make-local-variable 'font-lock-defaults) diff-font-lock-defaults) 1004 (set (make-local-variable 'font-lock-defaults) diff-font-lock-defaults)
998 (set (make-local-variable 'outline-regexp) diff-outline-regexp) 1005 (set (make-local-variable 'outline-regexp) diff-outline-regexp)
999 (set (make-local-variable 'imenu-generic-expression) 1006 (set (make-local-variable 'imenu-generic-expression)
@@ -1368,7 +1375,8 @@ With a prefix argument, REVERSE the hunk."
1368 (yes-or-no-p (format "Really apply this hunk to %s? " 1375 (yes-or-no-p (format "Really apply this hunk to %s? "
1369 (file-name-nondirectory 1376 (file-name-nondirectory
1370 buffer-file-name))))))) 1377 buffer-file-name)))))))
1371 (error (substitute-command-keys 1378 (error "%s"
1379 (substitute-command-keys
1372 (format "Use %s\\[diff-apply-hunk] to apply it to the other file" 1380 (format "Use %s\\[diff-apply-hunk] to apply it to the other file"
1373 (if (not reverse) "\\[universal-argument] "))))) 1381 (if (not reverse) "\\[universal-argument] ")))))
1374 ((and switched 1382 ((and switched
diff --git a/lisp/emacs-lisp/authors.el b/lisp/emacs-lisp/authors.el
index 5f70773444d..d93d80e0c8e 100644
--- a/lisp/emacs-lisp/authors.el
+++ b/lisp/emacs-lisp/authors.el
@@ -70,6 +70,7 @@ files.")
70 ("Francesco Potort,Al(B" "Francesco Potorti" "Francesco Potorti`") 70 ("Francesco Potort,Al(B" "Francesco Potorti" "Francesco Potorti`")
71 ("Frederic Pierresteguy" "Fred Pierresteguy") 71 ("Frederic Pierresteguy" "Fred Pierresteguy")
72 ("Geoff Voelker" "voelker") 72 ("Geoff Voelker" "voelker")
73 ("Gerd M,Av(Bllmann" "Gerd Moellmann")
73 ("Hallvard B. Furuseth" "Hallvard B Furuseth") 74 ("Hallvard B. Furuseth" "Hallvard B Furuseth")
74 ("Hrvoje Nik,B9(Bi,Bf(B" "Hrvoje Niksic") 75 ("Hrvoje Nik,B9(Bi,Bf(B" "Hrvoje Niksic")
75 (nil "(afs@hplb.hpl.hp.com)") 76 (nil "(afs@hplb.hpl.hp.com)")
@@ -102,6 +103,7 @@ files.")
102 ("Kyle Jones" "Kyle E. Jones") 103 ("Kyle Jones" "Kyle E. Jones")
103 ("Marcus G. Daniels" "Marcus Daniels") 104 ("Marcus G. Daniels" "Marcus Daniels")
104 ("Mark D. Baushke" "Mark D Baushke") 105 ("Mark D. Baushke" "Mark D Baushke")
106 ("Agust,Am(Bn Mart,Am(Bn" "Agustin Martin")
105 ("Martin Lorentzon" "Martin Lorentzson") 107 ("Martin Lorentzon" "Martin Lorentzson")
106 ("Matt Swift" "Matthew Swift") 108 ("Matt Swift" "Matthew Swift")
107 ("Michael R. Mauger" "Michael Mauger") 109 ("Michael R. Mauger" "Michael Mauger")
diff --git a/lisp/emacs-lisp/bytecomp.el b/lisp/emacs-lisp/bytecomp.el
index 1d7cbfc422c..f74e48c4635 100644
--- a/lisp/emacs-lisp/bytecomp.el
+++ b/lisp/emacs-lisp/bytecomp.el
@@ -972,8 +972,10 @@ Each function's symbol gets added to `byte-compile-noruntime-functions'."
972 (pos (if (and byte-compile-current-file 972 (pos (if (and byte-compile-current-file
973 (integerp byte-compile-read-position)) 973 (integerp byte-compile-read-position))
974 (with-current-buffer byte-compile-current-buffer 974 (with-current-buffer byte-compile-current-buffer
975 (format "%d:%d:" (count-lines (point-min) 975 (format "%d:%d:"
976 byte-compile-last-position) 976 (save-excursion
977 (goto-char byte-compile-last-position)
978 (1+ (count-lines (point-min) (point-at-bol))))
977 (save-excursion 979 (save-excursion
978 (goto-char byte-compile-last-position) 980 (goto-char byte-compile-last-position)
979 (1+ (current-column))))) 981 (1+ (current-column)))))
diff --git a/lisp/emacs-lisp/edebug.el b/lisp/emacs-lisp/edebug.el
index 5af676a5e86..2777ea775e9 100644
--- a/lisp/emacs-lisp/edebug.el
+++ b/lisp/emacs-lisp/edebug.el
@@ -2939,6 +2939,7 @@ MSG is printed after `::::} '."
2939 (edebug-overlay-arrow)) 2939 (edebug-overlay-arrow))
2940 (setq buffer-read-only edebug-buffer-read-only) 2940 (setq buffer-read-only edebug-buffer-read-only)
2941 (use-local-map edebug-outside-map) 2941 (use-local-map edebug-outside-map)
2942 (remove-hook 'kill-buffer-hook 'edebug-kill-buffer t)
2942 ) 2943 )
2943 ;; gotta have a buffer to let its buffer local variables be set 2944 ;; gotta have a buffer to let its buffer local variables be set
2944 (get-buffer-create " bogus edebug buffer")) 2945 (get-buffer-create " bogus edebug buffer"))
@@ -3942,8 +3943,18 @@ edebug-on-signal
3942edebug-unwrap-results 3943edebug-unwrap-results
3943edebug-global-break-condition 3944edebug-global-break-condition
3944" 3945"
3946 ;; If the user kills the buffer in which edebug is currently active,
3947 ;; exit to top level, because the edebug command loop can't usefully
3948 ;; continue running in such a case.
3949 (add-hook 'kill-buffer-hook 'edebug-kill-buffer nil t)
3945 (use-local-map edebug-mode-map)) 3950 (use-local-map edebug-mode-map))
3946 3951
3952(defun edebug-kill-buffer ()
3953 "Used on `kill-buffer-hook' when Edebug is operating in a buffer of Lisp code."
3954 (let (kill-buffer-hook)
3955 (kill-buffer (current-buffer)))
3956 (top-level))
3957
3947;;; edebug eval list mode 3958;;; edebug eval list mode
3948 3959
3949;; A list of expressions and their evaluations is displayed in *edebug*. 3960;; A list of expressions and their evaluations is displayed in *edebug*.
diff --git a/lisp/emacs-lisp/lisp-mode.el b/lisp/emacs-lisp/lisp-mode.el
index 5576a4882b0..09cb8436c89 100644
--- a/lisp/emacs-lisp/lisp-mode.el
+++ b/lisp/emacs-lisp/lisp-mode.el
@@ -909,34 +909,47 @@ is the buffer position of the start of the containing expression."
909 (cond ((elt state 3) 909 (cond ((elt state 3)
910 ;; Inside a string, don't change indentation. 910 ;; Inside a string, don't change indentation.
911 nil) 911 nil)
912 ((save-excursion
913 ;; test whether current line begins with a constant
914 (goto-char indent-point)
915 (skip-chars-forward " \t")
916 (looking-at ":"))
917 (let ((desired-indent
918 (save-excursion
919 (goto-char (1+ containing-sexp))
920 (parse-partial-sexp (point) calculate-lisp-indent-last-sexp 0 t)
921 (point)))
922 (parse-sexp-ignore-comments t))
923 ;; Align a constant symbol under the last constant symbol
924 (goto-char calculate-lisp-indent-last-sexp)
925 (while (> (point) desired-indent)
926 (if (looking-at ":")
927 (setq desired-indent (point))
928 (backward-sexp 1))))
929 (current-column))
930 ((and (integerp lisp-indent-offset) containing-sexp) 912 ((and (integerp lisp-indent-offset) containing-sexp)
931 ;; Indent by constant offset 913 ;; Indent by constant offset
932 (goto-char containing-sexp) 914 (goto-char containing-sexp)
933 (+ (current-column) lisp-indent-offset)) 915 (+ (current-column) lisp-indent-offset))
916 ;; in this case calculate-lisp-indent-last-sexp is not nil
917 (calculate-lisp-indent-last-sexp
918 (or
919 ;; try to align the parameters of a known function
920 (and lisp-indent-function
921 (not retry)
922 (funcall lisp-indent-function indent-point state))
923 ;; If the function has no special alignment
924 ;; or it does not apply to this argument,
925 ;; try to align a constant-symbol under the last
926 ;; preceding constant symbol, if there is such one of
927 ;; the last 2 preceding symbols, in the previous
928 ;; uncommented line.
929 (and (save-excursion
930 (goto-char indent-point)
931 (skip-chars-forward " \t")
932 (looking-at ":"))
933 (> calculate-lisp-indent-last-sexp
934 (save-excursion
935 (goto-char (1+ containing-sexp))
936 (parse-partial-sexp (point) calculate-lisp-indent-last-sexp 0 t)
937 (point)))
938 (let ((parse-sexp-ignore-comments t)
939 indent)
940 (goto-char calculate-lisp-indent-last-sexp)
941 (or (and (looking-at ":")
942 (setq indent (current-column)))
943 (and (< (save-excursion (beginning-of-line) (point))
944 (prog2 (backward-sexp) (point)))
945 (looking-at ":")
946 (setq indent (current-column))))
947 indent))
948 ;; another symbols or constants not preceded by a constant
949 ;; as defined above.
950 normal-indent))
951 ;; in this case calculate-lisp-indent-last-sexp is nil
934 (desired-indent) 952 (desired-indent)
935 ((and (boundp 'lisp-indent-function)
936 lisp-indent-function
937 (not retry))
938 (or (funcall lisp-indent-function indent-point state)
939 normal-indent))
940 (t 953 (t
941 normal-indent)))))) 954 normal-indent))))))
942 955
diff --git a/lisp/emacs-lisp/re-builder.el b/lisp/emacs-lisp/re-builder.el
index 08897bec72c..2d3b4832cda 100644
--- a/lisp/emacs-lisp/re-builder.el
+++ b/lisp/emacs-lisp/re-builder.el
@@ -130,14 +130,13 @@
130 130
131(defcustom reb-re-syntax 'read 131(defcustom reb-re-syntax 'read
132 "*Syntax for the REs in the RE Builder. 132 "*Syntax for the REs in the RE Builder.
133Can either be `read', `string', `sregex' or `lisp-re'." 133Can either be `read', `string', `sregex', `lisp-re', `rx'."
134 :group 're-builder 134 :group 're-builder
135 :type '(choice (const :tag "Read syntax" read) 135 :type '(choice (const :tag "Read syntax" read)
136 (const :tag "String syntax" string) 136 (const :tag "String syntax" string)
137 (const :tag "`sregex' syntax" sregex) 137 (const :tag "`sregex' syntax" sregex)
138 (const :tag "`lisp-re' syntax" lisp-re) 138 (const :tag "`lisp-re' syntax" lisp-re)
139 (const :tag "`rx' syntax" rx) 139 (const :tag "`rx' syntax" rx)))
140 (value: string)))
141 140
142(defcustom reb-auto-match-limit 200 141(defcustom reb-auto-match-limit 200
143 "*Positive integer limiting the matches for RE Builder auto updates. 142 "*Positive integer limiting the matches for RE Builder auto updates.
@@ -640,11 +639,13 @@ If SUBEXP is non-nil mark only the corresponding sub-expressions."
640 (set-buffer reb-target-buffer) 639 (set-buffer reb-target-buffer)
641 (reb-delete-overlays) 640 (reb-delete-overlays)
642 (goto-char (point-min)) 641 (goto-char (point-min))
643 (while (and (re-search-forward re (point-max) t) 642 (while (and (not (eobp))
643 (re-search-forward re (point-max) t)
644 (or (not reb-auto-match-limit) 644 (or (not reb-auto-match-limit)
645 (< matches reb-auto-match-limit))) 645 (< matches reb-auto-match-limit)))
646 (if (= 0 (length (match-string 0))) 646 (if (= 0 (length (match-string 0)))
647 (error "Empty regular expression!")) 647 (unless (eobp)
648 (forward-char 1)))
648 (let ((i 0) 649 (let ((i 0)
649 suffix max-suffix) 650 suffix max-suffix)
650 (setq matches (1+ matches)) 651 (setq matches (1+ matches))
diff --git a/lisp/eshell/esh-mode.el b/lisp/eshell/esh-mode.el
index c185e88d8a8..c6abda631dc 100644
--- a/lisp/eshell/esh-mode.el
+++ b/lisp/eshell/esh-mode.el
@@ -1078,6 +1078,15 @@ This function could be in the list `eshell-output-filter-functions'."
1078(custom-add-option 'eshell-output-filter-functions 1078(custom-add-option 'eshell-output-filter-functions
1079 'eshell-handle-control-codes) 1079 'eshell-handle-control-codes)
1080 1080
1081(defun eshell-handle-ansi-color ()
1082 "Handle ANSI color codes."
1083 (require 'ansi-color)
1084 (ansi-color-apply-on-region eshell-last-output-start
1085 eshell-last-output-end))
1086
1087(custom-add-option 'eshell-output-filter-functions
1088 'eshell-handle-ansi-color)
1089
1081;;; Code: 1090;;; Code:
1082 1091
1083;;; arch-tag: ec65bc2b-da14-4547-81d3-a32af3a4dc57 1092;;; arch-tag: ec65bc2b-da14-4547-81d3-a32af3a4dc57
diff --git a/lisp/faces.el b/lisp/faces.el
index 4c058ba1fd3..904db10efa5 100644
--- a/lisp/faces.el
+++ b/lisp/faces.el
@@ -1805,7 +1805,11 @@ Initialize colors of certain faces from frame parameters."
1805 (face-spec-set face (face-user-default-spec face) frame) 1805 (face-spec-set face (face-user-default-spec face) frame)
1806 (internal-merge-in-global-face face frame) 1806 (internal-merge-in-global-face face frame)
1807 (if (memq (window-system frame) '(x w32 mac)) 1807 (if (memq (window-system frame) '(x w32 mac))
1808 (make-face-x-resource-internal face frame))) 1808 (make-face-x-resource-internal face frame))
1809 ;; If the user has customized the face, don't let X
1810 ;; resources override the customizations.
1811 (if (get face 'theme-face)
1812 (custom-theme-recalc-face face)))
1809 (error nil))) 1813 (error nil)))
1810 ;; Apply the attributes specified by frame parameters. This 1814 ;; Apply the attributes specified by frame parameters. This
1811 ;; rewrites parameters changed by make-face-x-resource-internal 1815 ;; rewrites parameters changed by make-face-x-resource-internal
@@ -2195,18 +2199,12 @@ terminal type to a different value."
2195 :version "22.1" 2199 :version "22.1"
2196 :group 'basic-faces) 2200 :group 'basic-faces)
2197 2201
2198(defface momentary
2199 '((t (:inherit mode-line)))
2200 "Face for momentarily displaying text in the current buffer."
2201 :version "22.1"
2202 :group 'basic-faces)
2203
2204(defface minibuffer-prompt 2202(defface minibuffer-prompt
2205 '((((background dark)) :foreground "cyan") 2203 '((((background dark)) :foreground "cyan")
2206 ;; Don't use blue because many users of the MS-DOS port customize 2204 ;; Don't use blue because many users of the MS-DOS port customize
2207 ;; their foreground color to be blue. 2205 ;; their foreground color to be blue.
2208 (((type pc)) :foreground "magenta") 2206 (((type pc)) :foreground "magenta")
2209 (t :foreground "dark blue")) 2207 (t :foreground "medium blue"))
2210 "Face for minibuffer prompts. 2208 "Face for minibuffer prompts.
2211By default, Emacs automatically adds this face to the value of 2209By default, Emacs automatically adds this face to the value of
2212`minibuffer-prompt-properties', which is a list of text properties 2210`minibuffer-prompt-properties', which is a list of text properties
diff --git a/lisp/files.el b/lisp/files.el
index 22c817993f9..f11c6d37834 100644
--- a/lisp/files.el
+++ b/lisp/files.el
@@ -1474,11 +1474,12 @@ the various files."
1474 (error "Aborted")) 1474 (error "Aborted"))
1475 (if buf 1475 (if buf
1476 ;; We are using an existing buffer. 1476 ;; We are using an existing buffer.
1477 (progn 1477 (let (nonexistent)
1478 (or nowarn 1478 (or nowarn
1479 (verify-visited-file-modtime buf) 1479 (verify-visited-file-modtime buf)
1480 (cond ((not (file-exists-p filename)) 1480 (cond ((not (file-exists-p filename))
1481 (error "File %s no longer exists!" filename)) 1481 (setq nonexistent t)
1482 (message "File %s no longer exists!" filename))
1482 ;; Certain files should be reverted automatically 1483 ;; Certain files should be reverted automatically
1483 ;; if they have changed on disk and not in the buffer. 1484 ;; if they have changed on disk and not in the buffer.
1484 ((and (not (buffer-modified-p buf)) 1485 ((and (not (buffer-modified-p buf))
@@ -1515,7 +1516,8 @@ the various files."
1515 ;; writable and vice versa, but if the buffer agrees 1516 ;; writable and vice versa, but if the buffer agrees
1516 ;; with the new state of the file, that is ok too. 1517 ;; with the new state of the file, that is ok too.
1517 (let ((read-only (not (file-writable-p buffer-file-name)))) 1518 (let ((read-only (not (file-writable-p buffer-file-name))))
1518 (unless (or (eq read-only buffer-file-read-only) 1519 (unless (or nonexistent
1520 (eq read-only buffer-file-read-only)
1519 (eq read-only buffer-read-only)) 1521 (eq read-only buffer-read-only))
1520 (when (or nowarn 1522 (when (or nowarn
1521 (let ((question 1523 (let ((question
@@ -1528,6 +1530,7 @@ the various files."
1528 1530
1529 (when (and (not (eq (not (null rawfile)) 1531 (when (and (not (eq (not (null rawfile))
1530 (not (null find-file-literally)))) 1532 (not (null find-file-literally))))
1533 (not nonexistent)
1531 ;; It is confusing to ask whether to visit 1534 ;; It is confusing to ask whether to visit
1532 ;; non-literally if they have the file in 1535 ;; non-literally if they have the file in
1533 ;; hexl-mode. 1536 ;; hexl-mode.
@@ -1697,16 +1700,6 @@ This function ensures that none of these modifications will take place."
1697 (if (file-directory-p filename) 1700 (if (file-directory-p filename)
1698 (signal 'file-error (list "Opening input file" "file is a directory" 1701 (signal 'file-error (list "Opening input file" "file is a directory"
1699 filename))) 1702 filename)))
1700 ;; Check whether the file is uncommonly large (see find-file-noselect):
1701 (let (size)
1702 (when (and large-file-warning-threshold
1703 (setq size (nth 7 (file-attributes filename)))
1704 (> size large-file-warning-threshold)
1705 (not (y-or-n-p
1706 (format "File %s is large (%dMB), really insert? "
1707 (file-name-nondirectory filename)
1708 (/ size 1048576)))))
1709 (error "Aborted")))
1710 (let* ((buffer (find-buffer-visiting (abbreviate-file-name (file-truename filename)) 1703 (let* ((buffer (find-buffer-visiting (abbreviate-file-name (file-truename filename))
1711 #'buffer-modified-p)) 1704 #'buffer-modified-p))
1712 (tem (funcall insert-func filename))) 1705 (tem (funcall insert-func filename)))
@@ -2144,7 +2137,7 @@ associated with that interpreter in `interpreter-mode-alist'.")
2144 (comment-re (concat "\\(?:!--" incomment-re "*-->[ \t\n]*<\\)"))) 2137 (comment-re (concat "\\(?:!--" incomment-re "*-->[ \t\n]*<\\)")))
2145 (concat "[ \t\n]*<" comment-re "*!DOCTYPE ")) 2138 (concat "[ \t\n]*<" comment-re "*!DOCTYPE "))
2146 . sgml-mode) 2139 . sgml-mode)
2147 ("%![^V]" . ps-mode) 2140 ("%!PS" . ps-mode)
2148 ("# xmcd " . conf-unix-mode)) 2141 ("# xmcd " . conf-unix-mode))
2149 "Alist of buffer beginnings vs. corresponding major mode functions. 2142 "Alist of buffer beginnings vs. corresponding major mode functions.
2150Each element looks like (REGEXP . FUNCTION) or (MATCH-FUNCTION . FUNCTION). 2143Each element looks like (REGEXP . FUNCTION) or (MATCH-FUNCTION . FUNCTION).
@@ -2443,6 +2436,7 @@ asking you for confirmation."
2443(mapc (lambda (pair) 2436(mapc (lambda (pair)
2444 (put (car pair) 'safe-local-variable (cdr pair))) 2437 (put (car pair) 'safe-local-variable (cdr pair)))
2445 '((buffer-read-only . booleanp) ;; C source code 2438 '((buffer-read-only . booleanp) ;; C source code
2439 (default-directory . stringp) ;; C source code
2446 (fill-column . integerp) ;; C source code 2440 (fill-column . integerp) ;; C source code
2447 (indent-tabs-mode . booleanp) ;; C source code 2441 (indent-tabs-mode . booleanp) ;; C source code
2448 (left-margin . integerp) ;; C source code 2442 (left-margin . integerp) ;; C source code
@@ -3602,10 +3596,21 @@ Before and after saving the buffer, this function runs
3602 (let ((filename 3596 (let ((filename
3603 (expand-file-name 3597 (expand-file-name
3604 (read-file-name "File to save in: ") nil))) 3598 (read-file-name "File to save in: ") nil)))
3605 (and (file-exists-p filename) 3599 (if (file-exists-p filename)
3606 (or (y-or-n-p (format "File `%s' exists; overwrite? " 3600 (if (file-directory-p filename)
3607 filename)) 3601 ;; Signal an error if the user specified the name of an
3608 (error "Canceled"))) 3602 ;; existing directory.
3603 (error "%s is a directory" filename)
3604 (unless (y-or-n-p (format "File `%s' exists; overwrite? "
3605 filename))
3606 (error "Canceled")))
3607 ;; Signal an error if the specified name refers to a
3608 ;; non-existing directory.
3609 (let ((dir (file-name-directory filename)))
3610 (unless (file-directory-p dir)
3611 (if (file-exists-p dir)
3612 (error "%s is not a directory" dir)
3613 (error "%s: no such directory" dir)))))
3609 (set-visited-file-name filename))) 3614 (set-visited-file-name filename)))
3610 (or (verify-visited-file-modtime (current-buffer)) 3615 (or (verify-visited-file-modtime (current-buffer))
3611 (not (file-exists-p buffer-file-name)) 3616 (not (file-exists-p buffer-file-name))
@@ -3679,7 +3684,7 @@ Before and after saving the buffer, this function runs
3679 (if (not (file-directory-p dir)) 3684 (if (not (file-directory-p dir))
3680 (if (file-exists-p dir) 3685 (if (file-exists-p dir)
3681 (error "%s is not a directory" dir) 3686 (error "%s is not a directory" dir)
3682 (error "%s: no such directory" buffer-file-name)) 3687 (error "%s: no such directory" dir))
3683 (if (not (file-exists-p buffer-file-name)) 3688 (if (not (file-exists-p buffer-file-name))
3684 (error "Directory %s write-protected" dir) 3689 (error "Directory %s write-protected" dir)
3685 (if (yes-or-no-p 3690 (if (yes-or-no-p
diff --git a/lisp/font-lock.el b/lisp/font-lock.el
index c398ca0a012..eb2a7964cec 100644
--- a/lisp/font-lock.el
+++ b/lisp/font-lock.el
@@ -2190,7 +2190,7 @@ other modes in which C preprocessor directives are used. e.g. `asm-mode' and
2190 "\\(advice\\|alias\\|generic\\|macro\\*?\\|method\\|" 2190 "\\(advice\\|alias\\|generic\\|macro\\*?\\|method\\|"
2191 "setf\\|subst\\*?\\|un\\*?\\|" 2191 "setf\\|subst\\*?\\|un\\*?\\|"
2192 "ine-\\(condition\\|" 2192 "ine-\\(condition\\|"
2193 "\\(?:derived\\|\\(?:global-\\)?minor\\|generic\\)-mode\\|" 2193 "\\(?:derived\\|\\(?:global\\(?:ized\\)?-\\)?minor\\|generic\\)-mode\\|"
2194 "method-combination\\|setf-expander\\|skeleton\\|widget\\|" 2194 "method-combination\\|setf-expander\\|skeleton\\|widget\\|"
2195 "function\\|\\(compiler\\|modify\\|symbol\\)-macro\\)\\)\\|" 2195 "function\\|\\(compiler\\|modify\\|symbol\\)-macro\\)\\)\\|"
2196 ;; Variable declarations. 2196 ;; Variable declarations.
diff --git a/lisp/gnus/ChangeLog b/lisp/gnus/ChangeLog
index d3354bd14eb..add0bb47c25 100644
--- a/lisp/gnus/ChangeLog
+++ b/lisp/gnus/ChangeLog
@@ -906,7 +906,7 @@
906 (spam-mark-junk-as-spam-routine): Use it. Allow to disable 906 (spam-mark-junk-as-spam-routine): Use it. Allow to disable
907 assigning the spam-mark to new messages. 907 assigning the spam-mark to new messages.
908 908
9092006-03-20 Adam Sj,Ax(Bgren <asjo@koldfront.dk> (tiny change) 9092006-03-20 Adam Sj,Ax(Bgren <asjo@koldfront.dk>
910 910
911 (spam-ham-copy-or-move-routine): Don't declare `todo' twice. 911 (spam-ham-copy-or-move-routine): Don't declare `todo' twice.
912 912
@@ -1590,7 +1590,7 @@
1590 * nnmail.el (nnmail-fancy-expiry-target): Protect against invalid 1590 * nnmail.el (nnmail-fancy-expiry-target): Protect against invalid
1591 date header. 1591 date header.
1592 1592
15932005-11-16 Boris Samorodov <bsam@ipt.ru> (tiny patch) 15932005-11-16 Boris Samorodov <bsam@ipt.ru> (tiny change)
1594 1594
1595 * imap.el (imap-kerberos4-open): Ignore SSL stuff. 1595 * imap.el (imap-kerberos4-open): Ignore SSL stuff.
1596 1596
@@ -2192,7 +2192,7 @@
2192 (gnus-decode-header-function, gnus-newsgroup-name): 2192 (gnus-decode-header-function, gnus-newsgroup-name):
2193 * spam-stat.el (gnus-original-article-buffer): Add defvars. 2193 * spam-stat.el (gnus-original-article-buffer): Add defvars.
2194 2194
21952005-08-22 Karl Chen <quarl@cs.berkeley.edu> (tiny change) 21952005-08-22 Karl Chen <quarl@cs.berkeley.edu>
2196 2196
2197 * gnus-art.el (gnus-treatment-function-alist): Move date-lapsed to 2197 * gnus-art.el (gnus-treatment-function-alist): Move date-lapsed to
2198 the end of the date treatments. 2198 the end of the date treatments.
diff --git a/lisp/gnus/ChangeLog.2 b/lisp/gnus/ChangeLog.2
index 69794a18fa4..4dac2ac55ea 100644
--- a/lisp/gnus/ChangeLog.2
+++ b/lisp/gnus/ChangeLog.2
@@ -76,10 +76,10 @@
76 76
77 * smime.el (smime-crl-check): Doc fix. 77 * smime.el (smime-crl-check): Doc fix.
78 78
792004-01-02 Edwin Steiner <edwin.steiner@gmx.net> 792004-01-02 Edwin Steiner <edwin.steiner@gmx.net> (tiny change)
80 80
81 * gnus-nocem.el (gnus-nocem-enter-article): Use the real group 81 * gnus-nocem.el (gnus-nocem-enter-article): Use the real group
82 hashtb (tiny patch). 82 hashtb.
83 83
842004-01-02 Michael Albinus <Michael.Albinus@alcatel.de> 842004-01-02 Michael Albinus <Michael.Albinus@alcatel.de>
85 85
@@ -463,12 +463,15 @@
463 * mml-smime.el (mml-smime-sign): Replace CRLF with LF in OpenSSL 463 * mml-smime.el (mml-smime-sign): Replace CRLF with LF in OpenSSL
464 output. Reported by Arne J,Ax(Brgensen <arne@arnested.dk>. 464 output. Reported by Arne J,Ax(Brgensen <arne@arnested.dk>.
465 465
4662003-12-07 Simon Josefsson <jas@extundo.com> 4662003-12-07 Lloyd Zusman <ljz@asfast.com> (tiny change)
467 467
468 * pgg-gpg.el (pgg-gpg-recipient-arg): Add. 468 * pgg-gpg.el (pgg-gpg-recipient-arg): Add.
469 (pgg-gpg-encrypt-region): Use it. Tiny patch from Lloyd Zusman 469 (pgg-gpg-encrypt-region): Use it.
470 <ljz@asfast.com>. 470
471 (pgg-gpg-recipient-argument): Doc fix. Renamed fro p-g-r-a. 4712003-12-07 Simon Josefsson <jas@extundo.com>
472
473 * pgg-gpg.el (pgg-gpg-recipient-argument): Doc fix.
474 Renamed from p-g-r-a.
472 (pgg-gpg-encrypt-region): Update. 475 (pgg-gpg-encrypt-region): Update.
473 476
4742003-12-07 Jesper Harder <harder@ifa.au.dk> 4772003-12-07 Jesper Harder <harder@ifa.au.dk>
@@ -907,10 +910,10 @@
907 * spam.el (spam-spamoracle): doc change, suggested by Jean-Marc 910 * spam.el (spam-spamoracle): doc change, suggested by Jean-Marc
908 Lasgouttes <Jean-Marc.Lasgouttes@inria.fr> 911 Lasgouttes <Jean-Marc.Lasgouttes@inria.fr>
909 912
9102003-11-04 Katsumi Yamaoka <yamaoka@jpl.org> 9132003-11-04 Norbert Koch <viteno@xemacs.org> (tiny change)
911 914
912 * gnus-score.el (gnus-decay-score): Protect against arithmetic 915 * gnus-score.el (gnus-decay-score): Protect against arithmetic
913 errors. Tiny patch from Norbert Koch <viteno@xemacs.org>. 916 errors.
914 917
9152003-10-31 Teodor Zlatanov <tzz@lifelogs.com> 9182003-10-31 Teodor Zlatanov <tzz@lifelogs.com>
916 919
@@ -927,12 +930,14 @@
927 (spam-spamoracle-learn-ham, spam-spamoracle-learn-spam): change 930 (spam-spamoracle-learn-ham, spam-spamoracle-learn-spam): change
928 spam-log-processing-to-registry invocations appropriately 931 spam-log-processing-to-registry invocations appropriately
929 932
9302003-10-31 Simon Josefsson <jas@extundo.com> 9332003-10-31 Derek Atkins <warlord@MIT.EDU> (tiny change)
931 934
932 * imap.el (imap-kerberos4-open): Ignore output from ATHENA imtest. 935 * imap.el (imap-kerberos4-open): Ignore output from ATHENA imtest.
933 Tiny patch from Derek Atkins <warlord@MIT.EDU>. 936
934 (imap-process-connection-type): Improve docstring. Suggested by 9372003-10-31 Simon Josefsson <jas@extundo.com>
935 Derek Atkins <warlord@MIT.EDU>. 938
939 * imap.el (imap-process-connection-type): Improve docstring.
940 Suggested by Derek Atkins <warlord@MIT.EDU>.
936 941
9372003-10-31 Teodor Zlatanov <tzz@lifelogs.com> 9422003-10-31 Teodor Zlatanov <tzz@lifelogs.com>
938 943
@@ -964,11 +969,14 @@
964 * message.el (message-forward-make-body-plain): Fix ARG=1 mode 969 * message.el (message-forward-make-body-plain): Fix ARG=1 mode
965 after separating m-f-m-b. 970 after separating m-f-m-b.
966 971
9672003-10-29 Simon Josefsson <jas@extundo.com> 9722003-10-29 Andre Srinivasan <andre@e2open.com> (tiny change)
968 973
969 * message.el (message-forward-make-body-plain): Remove ignored 974 * message.el (message-forward-make-body-plain): Remove ignored
970 headers. Tiny patch from Andre Srinivasan <andre@e2open.com>. 975 headers.
971 (message-forward-make-body-plain): Fix ARG=1. 976
9772003-10-29 Simon Josefsson <jas@extundo.com>
978
979 * message.el (message-forward-make-body-plain): Fix ARG=1.
972 980
9732003-10-28 Jesper Harder <harder@ifa.au.dk> 9812003-10-28 Jesper Harder <harder@ifa.au.dk>
974 982
@@ -1582,7 +1590,7 @@
1582 (mml-insert-mime-headers): Use it. Based on (tiny) patch from 1590 (mml-insert-mime-headers): Use it. Based on (tiny) patch from
1583 Lars Balker Rasmussen <lars@balker.org>. 1591 Lars Balker Rasmussen <lars@balker.org>.
1584 1592
15852003-08-30 Gaute Strokkenes <gs234@srcf.ucam.org> (tiny change) 15932003-08-30 Gaute B Strokkenes <gs234@srcf.ucam.org> (tiny change)
1586 1594
1587 * mail-source.el (mail-source-fetch-imap): Pass correct buffer to 1595 * mail-source.el (mail-source-fetch-imap): Pass correct buffer to
1588 imap-open, reverts 2003-03-17 change. Reverse remove before 1596 imap-open, reverts 2003-03-17 change. Reverse remove before
@@ -1656,13 +1664,12 @@
1656 * gnus-art.el (gnus-article-edit-done, gnus-article-edit-exit): 1664 * gnus-art.el (gnus-article-edit-done, gnus-article-edit-exit):
1657 Redisplay article after editing. 1665 Redisplay article after editing.
1658 1666
16592003-08-20 Simon Josefsson <jas@extundo.com> 16672003-08-20 Jari Aalto <jari.aalto@poboxes.com>
1660 1668
1661 * gnus.el (gnus-read-group): Added check to ask confirmation if 1669 * gnus.el (gnus-read-group): Added check to ask confirmation if
1662 Group name contains invalid character. You can use '/' in IMAP, 1670 Group name contains invalid character. You can use '/' in IMAP,
1663 but not in filenames. G m cannot know what the user is creating, 1671 but not in filenames. G m cannot know what the user is creating,
1664 so let user decide. See thread m2oeysiev3.fsf@naima.lensflare.org. 1672 so let user decide. See thread m2oeysiev3.fsf@naima.lensflare.org.
1665 Tiny patch from letters@hotpop.com (Jari Aalto+mail.linux).
1666 1673
16672003-08-13 Reiner Steib <Reiner.Steib@gmx.de> 16742003-08-13 Reiner Steib <Reiner.Steib@gmx.de>
1668 1675
@@ -1715,7 +1722,7 @@
1715 * gnus.el (gnus-refer-article-method): Ditto. 1722 * gnus.el (gnus-refer-article-method): Ditto.
1716 * message.el (message-courtesy-message): Ditto. 1723 * message.el (message-courtesy-message): Ditto.
1717 1724
17182003-08-06 Chunyu Wang <spr@db.cs.hit.edu.cn> (tiny patch) 17252003-08-06 Chunyu Wang <spr@db.cs.hit.edu.cn> (tiny change)
1719 1726
1720 * gnus-art.el (gnus-header-face-alist): Fix "Newsgroups" entry. 1727 * gnus-art.el (gnus-header-face-alist): Fix "Newsgroups" entry.
1721 1728
@@ -1754,11 +1761,10 @@
1754 * gnus-registry.el (gnus-registry-install): add an initial 1761 * gnus-registry.el (gnus-registry-install): add an initial
1755 registry read to the loading when gnus-registry-install is set 1762 registry read to the loading when gnus-registry-install is set
1756 1763
17572003-07-26 Kai Gro,A_(Bjohann <kai.grossjohann@gmx.net> 17642003-07-26 Mark Thomas <swoon@bellatlantic.net> (tiny change)
1758 1765
1759 * flow-fill.el (fill-flowed): Empty lines separate paragraphs 1766 * flow-fill.el (fill-flowed): Empty lines separate paragraphs
1760 even if the preceding line ends with a soft break. Tiny patch 1767 even if the preceding line ends with a soft break.
1761 from Mark Thomas <swoon@bellatlantic.net>.
1762 1768
17632003-07-25 Teodor Zlatanov <tzz@lifelogs.com> 17692003-07-25 Teodor Zlatanov <tzz@lifelogs.com>
1764 1770
@@ -1843,7 +1849,7 @@
1843 * imap.el (imap-arrival-filter): Fix test for missing process 1849 * imap.el (imap-arrival-filter): Fix test for missing process
1844 buffer. 1850 buffer.
1845 1851
18462003-07-09 Gaute B Strokkenes <gs234@cam.ac.uk> (tiny patch). 18522003-07-09 Gaute B Strokkenes <gs234@cam.ac.uk> (tiny change)
1847 1853
1848 * imap.el (imap-wait-for-tag): Clarify comment. Use timeout zero 1854 * imap.el (imap-wait-for-tag): Clarify comment. Use timeout zero
1849 for second, after-process-has-died, accept-process-output. 1855 for second, after-process-has-died, accept-process-output.
@@ -1899,7 +1905,7 @@
1899 (message-canlock-generate) 1905 (message-canlock-generate)
1900 (message-generate-new-buffer-clone-locals): Docstring fixes. 1906 (message-generate-new-buffer-clone-locals): Docstring fixes.
1901 1907
19022003-07-07 Gaute B Strokkenes <gs234@cam.ac.uk> (tiny patch) 19082003-07-07 Gaute B Strokkenes <gs234@cam.ac.uk> (tiny change)
1903 1909
1904 * imap.el (imap-wait-for-tag): After the process has died, look 1910 * imap.el (imap-wait-for-tag): After the process has died, look
1905 for more output still pending. 1911 for more output still pending.
@@ -2421,11 +2427,10 @@
2421 (rfc2047-syntax-table): Fix building table to work in Emacs 22. 2427 (rfc2047-syntax-table): Fix building table to work in Emacs 22.
2422 (rfc2047-unfold-region): Delete unused var `leading'. 2428 (rfc2047-unfold-region): Delete unused var `leading'.
2423 2429
24242003-05-12 Simon Josefsson <jas@extundo.com> 24302003-05-12 Ville Skytt,Ad(B <scop@xemacs.org> (tiny change)
2425 2431
2426 * pgg.el (pgg-temp-buffer-show-function): Reuse existing visible 2432 * pgg.el (pgg-temp-buffer-show-function): Reuse existing visible
2427 output window if one is available. Tiny patch from Ville Skytt,Ad(B 2433 output window if one is available.
2428 <scop@xemacs.org>.
2429 2434
24302003-05-11 Lars Magne Ingebrigtsen <larsi@gnus.org> 24352003-05-11 Lars Magne Ingebrigtsen <larsi@gnus.org>
2431 2436
@@ -4750,7 +4755,7 @@
4750 * gnus-start.el (gnus-get-unread-articles-in-group): Make sure 4755 * gnus-start.el (gnus-get-unread-articles-in-group): Make sure
4751 the entry for the group exists before we alter it. 4756 the entry for the group exists before we alter it.
4752 4757
47532003-02-22 David S Goldberg <david.goldberg6@verizon.net> (tiny change) 47582003-02-22 David S. Goldberg <david.goldberg6@verizon.net> (tiny change)
4754 4759
4755 * message.el (message-mode): MML tags separate paragraphs. 4760 * message.el (message-mode): MML tags separate paragraphs.
4756 4761
@@ -5037,7 +5042,7 @@
5037 code that only worked under Emacs. 5042 code that only worked under Emacs.
5038 5043
50392003-02-08 Satyaki Das <satyaki@chicory.stanford.edu> 50442003-02-08 Satyaki Das <satyaki@chicory.stanford.edu>
5040 5045
5041 * pgg-gpg.el (pgg-gpg-process-region): Don't blink. 5046 * pgg-gpg.el (pgg-gpg-process-region): Don't blink.
5042 5047
50432003-02-08 Jesper Harder <harder@ifa.au.dk> 50482003-02-08 Jesper Harder <harder@ifa.au.dk>
@@ -5372,11 +5377,10 @@
5372 5377
5373 * gnus.el: Oort Gnus v0.14 is released. 5378 * gnus.el: Oort Gnus v0.14 is released.
5374 5379
53752003-01-24 Kai Gro,A_(Bjohann <kai.grossjohann@uni-duisburg.de> 53802003-01-24 Mark Thomas <swoon@bellatlantic.net> (tiny change)
5376 5381
5377 * gnus-sum.el (gnus-summary-prepare-threads): Reset state for %B 5382 * gnus-sum.el (gnus-summary-prepare-threads): Reset state for %B
5378 before beginning. Tiny patch from Mark Thomas 5383 before beginning.
5379 <swoon@bellatlantic.net>.
5380 5384
53812003-01-24 Teodor Zlatanov <tzz@lifelogs.com> 53852003-01-24 Teodor Zlatanov <tzz@lifelogs.com>
5382 5386
@@ -13122,7 +13126,7 @@
13122 13126
13123 * nnfolder.el (nnfolder-marks-changed-p): Ditto. 13127 * nnfolder.el (nnfolder-marks-changed-p): Ditto.
13124 13128
131252001-10-20 David Z Maze <dmaze@MIT.EDU> 131292001-10-20 David Z. Maze <dmaze@MIT.EDU>
13126 13130
13127 * nnml.el (nnml-marks-changed-p): Use `equal' when comparing 13131 * nnml.el (nnml-marks-changed-p): Use `equal' when comparing
13128 conses. 13132 conses.
diff --git a/lisp/icomplete.el b/lisp/icomplete.el
index 3ee53a821bf..6599c1442bc 100644
--- a/lisp/icomplete.el
+++ b/lisp/icomplete.el
@@ -219,7 +219,8 @@ and `minibuffer-setup-hook'."
219 (when (and icomplete-mode icomplete-eoinput) 219 (when (and icomplete-mode icomplete-eoinput)
220 220
221 (unless (>= icomplete-eoinput (point-max)) 221 (unless (>= icomplete-eoinput (point-max))
222 (let ((buffer-undo-list t)) ; prevent entry 222 (let ((buffer-undo-list t) ; prevent entry
223 deactivate-mark)
223 (delete-region icomplete-eoinput (point-max)))) 224 (delete-region icomplete-eoinput (point-max))))
224 225
225 ;; Reestablish the safe value. 226 ;; Reestablish the safe value.
@@ -256,7 +257,8 @@ and `minibuffer-setup-hook'."
256 minibuffer-completion-table 257 minibuffer-completion-table
257 minibuffer-completion-predicate 258 minibuffer-completion-predicate
258 (not minibuffer-completion-confirm))))) 259 (not minibuffer-completion-confirm)))))
259 (buffer-undo-list t)) 260 (buffer-undo-list t)
261 deactivate-mark)
260 ;; Do nothing if while-no-input was aborted. 262 ;; Do nothing if while-no-input was aborted.
261 (if (consp text) (insert (car text)))))))) 263 (if (consp text) (insert (car text))))))))
262 264
diff --git a/lisp/ido.el b/lisp/ido.el
index 27abe9c9a8f..3eef048390e 100644
--- a/lisp/ido.el
+++ b/lisp/ido.el
@@ -1575,6 +1575,7 @@ With ARG, turn ido speed-up on if arg is positive, off otherwise."
1575 (define-key map [(meta down)] 'ido-next-work-directory) 1575 (define-key map [(meta down)] 'ido-next-work-directory)
1576 (define-key map [backspace] 'ido-delete-backward-updir) 1576 (define-key map [backspace] 'ido-delete-backward-updir)
1577 (define-key map "\d" 'ido-delete-backward-updir) 1577 (define-key map "\d" 'ido-delete-backward-updir)
1578 (define-key map [remap delete-backward-char] 'ido-delete-backward-updir) ; BS
1578 (define-key map [remap backward-kill-word] 'ido-delete-backward-word-updir) ; M-DEL 1579 (define-key map [remap backward-kill-word] 'ido-delete-backward-word-updir) ; M-DEL
1579 1580
1580 (define-key map [(control backspace)] 'ido-up-directory) 1581 (define-key map [(control backspace)] 'ido-up-directory)
diff --git a/lisp/international/characters.el b/lisp/international/characters.el
index 4ac067c2b3c..024333c4a88 100644
--- a/lisp/international/characters.el
+++ b/lisp/international/characters.el
@@ -913,10 +913,14 @@
913 913
914(let ((tbl (standard-case-table)) c) 914(let ((tbl (standard-case-table)) c)
915 915
916 ;; Latin Extended-A, Latin Extended-B 916 ;; Latin Extended-A, Latin Extended-B, IPA
917 (setq c #x0100) 917 (setq c #x0100)
918 (while (<= c #x0233) 918 (while (<= c #x02AF)
919 (modify-category-entry (decode-char 'ucs c) ?l) 919 (modify-category-entry (decode-char 'ucs c) ?l)
920 (setq c (1+ c)))
921
922 (setq c #x0100)
923 (while (<= c #x0177)
920 (and (or (<= c #x012e) 924 (and (or (<= c #x012e)
921 (and (>= c #x014a) (<= c #x0177))) 925 (and (>= c #x014a) (<= c #x0177)))
922 (zerop (% c 2)) 926 (zerop (% c 2))
diff --git a/lisp/international/isearch-x.el b/lisp/international/isearch-x.el
index 76a33d2569e..b75a7cdaab3 100644
--- a/lisp/international/isearch-x.el
+++ b/lisp/international/isearch-x.el
@@ -103,6 +103,15 @@
103 (prompt (isearch-message-prefix)) 103 (prompt (isearch-message-prefix))
104 (minibuffer-local-map isearch-minibuffer-local-map) 104 (minibuffer-local-map isearch-minibuffer-local-map)
105 str junk-hist) 105 str junk-hist)
106
107 ;; PROMPT contains text-properties from
108 ;; `minibuffer-prompt-properties', and some of these can screw up
109 ;; its use in `read-string' below (specifically, a read-only
110 ;; property will cause it to signal an error), so strip them here;
111 ;; read-string will add the same properties itself anyway.
112 ;;
113 (set-text-properties 0 (length prompt) nil prompt)
114
106 (if isearch-input-method-function 115 (if isearch-input-method-function
107 (let (;; Let input method work rather tersely. 116 (let (;; Let input method work rather tersely.
108 (input-method-verbose-flag nil)) 117 (input-method-verbose-flag nil))
diff --git a/lisp/international/mule.el b/lisp/international/mule.el
index d2c83d75e06..fc7b0276a0f 100644
--- a/lisp/international/mule.el
+++ b/lisp/international/mule.el
@@ -1742,7 +1742,7 @@ If nothing is specified, the return value is nil."
1742 ;; is just "\r" and we can't use "^" nor "$" in regexp. 1742 ;; is just "\r" and we can't use "^" nor "$" in regexp.
1743 (when (and tail-found (or (not coding-system) (not char-trans))) 1743 (when (and tail-found (or (not coding-system) (not char-trans)))
1744 (goto-char tail-start) 1744 (goto-char tail-start)
1745 (re-search-forward "[\r\n]\^L" nil t) 1745 (re-search-forward "[\r\n]\^L" tail-end t)
1746 (if (re-search-forward 1746 (if (re-search-forward
1747 "[\r\n]\\([^[\r\n]*\\)[ \t]*Local Variables:[ \t]*\\([^\r\n]*\\)[\r\n]" 1747 "[\r\n]\\([^[\r\n]*\\)[ \t]*Local Variables:[ \t]*\\([^\r\n]*\\)[\r\n]"
1748 tail-end t) 1748 tail-end t)
diff --git a/lisp/international/quail.el b/lisp/international/quail.el
index 340c035ca42..43251b3721e 100644
--- a/lisp/international/quail.el
+++ b/lisp/international/quail.el
@@ -1937,6 +1937,7 @@ Remaining args are for FUNC."
1937 (let ((default-enable-multibyte-characters enable-multibyte-characters)) 1937 (let ((default-enable-multibyte-characters enable-multibyte-characters))
1938 (setq quail-completion-buf (get-buffer-create "*Quail Completions*"))) 1938 (setq quail-completion-buf (get-buffer-create "*Quail Completions*")))
1939 (with-current-buffer quail-completion-buf 1939 (with-current-buffer quail-completion-buf
1940 (setq buffer-read-only t)
1940 (setq quail-overlay (make-overlay 1 1)) 1941 (setq quail-overlay (make-overlay 1 1))
1941 (overlay-put quail-overlay 'face 'highlight)))) 1942 (overlay-put quail-overlay 'face 'highlight))))
1942 1943
@@ -2162,9 +2163,11 @@ are shown (at most to the depth specified `quail-completion-max-depth')."
2162 (minibuffer-scroll-window nil)) 2163 (minibuffer-scroll-window nil))
2163 (scroll-other-window))) 2164 (scroll-other-window)))
2164 (setq quail-current-key key) 2165 (setq quail-current-key key)
2165 (erase-buffer) 2166 (let ((inhibit-read-only t))
2166 (insert "Possible completion and corresponding characters are:\n") 2167 (erase-buffer)
2167 (quail-completion-1 key map 1) 2168 (insert "Possible completion and corresponding characters are:\n")
2169 (quail-completion-1 key map 1)
2170 (set-buffer-modified-p nil))
2168 (goto-char (point-min)) 2171 (goto-char (point-min))
2169 (display-buffer (current-buffer)) 2172 (display-buffer (current-buffer))
2170 (setq require-update t))) 2173 (setq require-update t)))
diff --git a/lisp/isearch.el b/lisp/isearch.el
index 8222d46338f..8c248dbc255 100644
--- a/lisp/isearch.el
+++ b/lisp/isearch.el
@@ -1957,9 +1957,8 @@ If there is no completion possible, say so and continue searching."
1957 (concat " [" current-input-method-title "]: ") 1957 (concat " [" current-input-method-title "]: ")
1958 ": ") 1958 ": ")
1959 ))) 1959 )))
1960 (apply 'propertize 1960 (propertize (concat (upcase (substring m 0 1)) (substring m 1))
1961 (concat (upcase (substring m 0 1)) (substring m 1)) 1961 'face 'minibuffer-prompt)))
1962 minibuffer-prompt-properties)))
1963 1962
1964(defun isearch-message-suffix (&optional c-q-hack ellipsis) 1963(defun isearch-message-suffix (&optional c-q-hack ellipsis)
1965 (concat (if c-q-hack "^Q" "") 1964 (concat (if c-q-hack "^Q" "")
diff --git a/lisp/isearchb.el b/lisp/isearchb.el
index 72a06fa687b..3d8af066395 100644
--- a/lisp/isearchb.el
+++ b/lisp/isearchb.el
@@ -165,7 +165,7 @@ Its purpose is to pass different call arguments to
165 (define-key global-map (vector (list modifier i)) 'isearchb)))) 165 (define-key global-map (vector (list modifier i)) 'isearchb))))
166 166
167(defun isearchb-follow-char () 167(defun isearchb-follow-char ()
168 "Function added to post-command-hook to handle the isearchb \"mode\"." 168 "Function added to `post-command-hook' to handle the isearchb \"mode\"."
169 (let (keys) 169 (let (keys)
170 (if (not (and (memq last-command '(isearchb isearchb-activate)) 170 (if (not (and (memq last-command '(isearchb isearchb-activate))
171 (setq keys (this-command-keys)) 171 (setq keys (this-command-keys))
diff --git a/lisp/jit-lock.el b/lisp/jit-lock.el
index 958bb679832..0471edb7891 100644
--- a/lisp/jit-lock.el
+++ b/lisp/jit-lock.el
@@ -74,14 +74,14 @@ This variable controls both display-time and stealth fontification."
74 :group 'jit-lock) 74 :group 'jit-lock)
75 75
76 76
77(defcustom jit-lock-stealth-time 16 77(defcustom jit-lock-stealth-time nil
78 "*Time in seconds to wait before beginning stealth fontification. 78 "*Time in seconds to wait before beginning stealth fontification.
79Stealth fontification occurs if there is no input within this time. 79Stealth fontification occurs if there is no input within this time.
80If nil, stealth fontification is never performed. 80If nil, stealth fontification is never performed.
81 81
82The value of this variable is used when JIT Lock mode is turned on." 82The value of this variable is used when JIT Lock mode is turned on."
83 :type '(choice (const :tag "never" nil) 83 :type '(choice (const :tag "never" nil)
84 (number :tag "seconds")) 84 (number :tag "seconds" :value 16))
85 :group 'jit-lock) 85 :group 'jit-lock)
86 86
87 87
diff --git a/lisp/ldefs-boot.el b/lisp/ldefs-boot.el
index 923b309a1dd..f9dac3493f1 100644
--- a/lisp/ldefs-boot.el
+++ b/lisp/ldefs-boot.el
@@ -63,7 +63,7 @@ should return a grid vector array that is the new solution.
63 63
64;;;*** 64;;;***
65 65
66;;;### (autoloads nil "abbrev" "abbrev.el" (17888 32278)) 66;;;### (autoloads nil "abbrev" "abbrev.el" (17963 19063))
67;;; Generated autoloads from abbrev.el 67;;; Generated autoloads from abbrev.el
68(put 'abbrev-mode 'safe-local-variable 'booleanp) 68(put 'abbrev-mode 'safe-local-variable 'booleanp)
69 69
@@ -830,7 +830,7 @@ setup for auto-startup.
830;;;*** 830;;;***
831 831
832;;;### (autoloads (ange-ftp-hook-function ange-ftp-reread-dir) "ange-ftp" 832;;;### (autoloads (ange-ftp-hook-function ange-ftp-reread-dir) "ange-ftp"
833;;;;;; "net/ange-ftp.el" (17888 36583)) 833;;;;;; "net/ange-ftp.el" (17963 19063))
834;;; Generated autoloads from net/ange-ftp.el 834;;; Generated autoloads from net/ange-ftp.el
835 835
836(defalias (quote ange-ftp-re-read-dir) (quote ange-ftp-reread-dir)) 836(defalias (quote ange-ftp-re-read-dir) (quote ange-ftp-reread-dir))
@@ -1611,7 +1611,7 @@ Calls `update-directory-autoloads' on the command line arguments.
1611 1611
1612;;;### (autoloads (global-auto-revert-mode turn-on-auto-revert-tail-mode 1612;;;### (autoloads (global-auto-revert-mode turn-on-auto-revert-tail-mode
1613;;;;;; auto-revert-tail-mode turn-on-auto-revert-mode auto-revert-mode) 1613;;;;;; auto-revert-tail-mode turn-on-auto-revert-mode auto-revert-mode)
1614;;;;;; "autorevert" "autorevert.el" (17888 32278)) 1614;;;;;; "autorevert" "autorevert.el" (17963 19298))
1615;;; Generated autoloads from autorevert.el 1615;;; Generated autoloads from autorevert.el
1616 1616
1617(autoload (quote auto-revert-mode) "autorevert" "\ 1617(autoload (quote auto-revert-mode) "autorevert" "\
@@ -2687,7 +2687,7 @@ Also see `make-text-button'.
2687;;;;;; batch-byte-compile-if-not-done display-call-tree byte-compile 2687;;;;;; batch-byte-compile-if-not-done display-call-tree byte-compile
2688;;;;;; compile-defun byte-compile-file byte-recompile-directory 2688;;;;;; compile-defun byte-compile-file byte-recompile-directory
2689;;;;;; byte-force-recompile byte-compile-warnings-safe-p) "bytecomp" 2689;;;;;; byte-force-recompile byte-compile-warnings-safe-p) "bytecomp"
2690;;;;;; "emacs-lisp/bytecomp.el" (17888 36933)) 2690;;;;;; "emacs-lisp/bytecomp.el" (17963 19282))
2691;;; Generated autoloads from emacs-lisp/bytecomp.el 2691;;; Generated autoloads from emacs-lisp/bytecomp.el
2692(put 'byte-compile-dynamic 'safe-local-variable 'booleanp) 2692(put 'byte-compile-dynamic 'safe-local-variable 'booleanp)
2693(put 'byte-compile-disable-print-circle 'safe-local-variable 'booleanp) 2693(put 'byte-compile-disable-print-circle 'safe-local-variable 'booleanp)
@@ -2793,7 +2793,7 @@ and corresponding effects.
2793 2793
2794;;;*** 2794;;;***
2795 2795
2796;;;### (autoloads nil "cal-dst" "calendar/cal-dst.el" (17888 32279)) 2796;;;### (autoloads nil "cal-dst" "calendar/cal-dst.el" (17963 19298))
2797;;; Generated autoloads from calendar/cal-dst.el 2797;;; Generated autoloads from calendar/cal-dst.el
2798 2798
2799(put (quote calendar-daylight-savings-starts) (quote risky-local-variable) t) 2799(put (quote calendar-daylight-savings-starts) (quote risky-local-variable) t)
@@ -2818,7 +2818,7 @@ from the cursor position.
2818;;;### (autoloads (defmath calc-embedded-activate calc-embedded calc-grab-rectangle 2818;;;### (autoloads (defmath calc-embedded-activate calc-embedded calc-grab-rectangle
2819;;;;;; calc-grab-region full-calc-keypad calc-keypad calc-eval quick-calc 2819;;;;;; calc-grab-region full-calc-keypad calc-keypad calc-eval quick-calc
2820;;;;;; full-calc calc calc-dispatch calc-settings-file) "calc" "calc/calc.el" 2820;;;;;; full-calc calc calc-dispatch calc-settings-file) "calc" "calc/calc.el"
2821;;;;;; (17888 32278)) 2821;;;;;; (17963 19309))
2822;;; Generated autoloads from calc/calc.el 2822;;; Generated autoloads from calc/calc.el
2823 2823
2824(defvar calc-settings-file (convert-standard-filename "~/.calc.el") "\ 2824(defvar calc-settings-file (convert-standard-filename "~/.calc.el") "\
@@ -2925,7 +2925,7 @@ See the documentation for `calculator-mode' for more information.
2925;;;;;; mark-holidays-in-calendar view-calendar-holidays-initially 2925;;;;;; mark-holidays-in-calendar view-calendar-holidays-initially
2926;;;;;; calendar-remove-frame-by-deleting mark-diary-entries-in-calendar 2926;;;;;; calendar-remove-frame-by-deleting mark-diary-entries-in-calendar
2927;;;;;; view-diary-entries-initially calendar-offset) "calendar" 2927;;;;;; view-diary-entries-initially calendar-offset) "calendar"
2928;;;;;; "calendar/calendar.el" (17888 32279)) 2928;;;;;; "calendar/calendar.el" (17963 20580))
2929;;; Generated autoloads from calendar/calendar.el 2929;;; Generated autoloads from calendar/calendar.el
2930 2930
2931(defvar calendar-offset 0 "\ 2931(defvar calendar-offset 0 "\
@@ -3322,7 +3322,7 @@ diary buffer will not show days for which there are no diary entries, even
3322if that day is a holiday; if you want such days to be shown in the fancy 3322if that day is a holiday; if you want such days to be shown in the fancy
3323diary buffer, set the variable `diary-list-include-blanks' to t.") 3323diary buffer, set the variable `diary-list-include-blanks' to t.")
3324 3324
3325(custom-autoload (quote diary-display-hook) "calendar" t) 3325(custom-autoload (quote diary-display-hook) "calendar" nil)
3326 3326
3327(defvar nongregorian-diary-listing-hook nil "\ 3327(defvar nongregorian-diary-listing-hook nil "\
3328List of functions called for listing diary file and included files. 3328List of functions called for listing diary file and included files.
@@ -3457,7 +3457,7 @@ See the documentation for `calendar-holidays' for details.")
3457 3457
3458(put (quote solar-holidays) (quote risky-local-variable) t) 3458(put (quote solar-holidays) (quote risky-local-variable) t)
3459 3459
3460(defvar solar-holidays (quote ((if (fboundp (quote atan)) (solar-equinoxes-solstices)) (if (progn (require (quote cal-dst)) t) (funcall (quote holiday-sexp) calendar-daylight-savings-starts (quote (format "Daylight Savings Time Begins %s" (if (fboundp (quote atan)) (solar-time-string (/ calendar-daylight-savings-starts-time (float 60)) calendar-standard-time-zone-name) ""))))) (funcall (quote holiday-sexp) calendar-daylight-savings-ends (quote (format "Daylight Savings Time Ends %s" (if (fboundp (quote atan)) (solar-time-string (/ calendar-daylight-savings-ends-time (float 60)) calendar-daylight-time-zone-name) "")))))) "\ 3460(defvar solar-holidays (quote ((if (fboundp (quote atan)) (solar-equinoxes-solstices)) (if (progn (require (quote cal-dst)) t) (funcall (quote holiday-sexp) calendar-daylight-savings-starts (quote (format "Daylight Saving Time Begins %s" (if (fboundp (quote atan)) (solar-time-string (/ calendar-daylight-savings-starts-time (float 60)) calendar-standard-time-zone-name) ""))))) (funcall (quote holiday-sexp) calendar-daylight-savings-ends (quote (format "Daylight Saving Time Ends %s" (if (fboundp (quote atan)) (solar-time-string (/ calendar-daylight-savings-ends-time (float 60)) calendar-daylight-time-zone-name) "")))))) "\
3461Sun-related holidays. 3461Sun-related holidays.
3462See the documentation for `calendar-holidays' for details.") 3462See the documentation for `calendar-holidays' for details.")
3463 3463
@@ -3523,7 +3523,7 @@ it fails.
3523;;;*** 3523;;;***
3524 3524
3525;;;### (autoloads (c-guess-basic-syntax) "cc-engine" "progmodes/cc-engine.el" 3525;;;### (autoloads (c-guess-basic-syntax) "cc-engine" "progmodes/cc-engine.el"
3526;;;;;; (17888 36644)) 3526;;;;;; (17963 19063))
3527;;; Generated autoloads from progmodes/cc-engine.el 3527;;; Generated autoloads from progmodes/cc-engine.el
3528 3528
3529(autoload (quote c-guess-basic-syntax) "cc-engine" "\ 3529(autoload (quote c-guess-basic-syntax) "cc-engine" "\
@@ -3535,7 +3535,7 @@ Return the syntactic context of the current line.
3535 3535
3536;;;### (autoloads (pike-mode idl-mode java-mode objc-mode c++-mode 3536;;;### (autoloads (pike-mode idl-mode java-mode objc-mode c++-mode
3537;;;;;; c-mode c-initialize-cc-mode) "cc-mode" "progmodes/cc-mode.el" 3537;;;;;; c-mode c-initialize-cc-mode) "cc-mode" "progmodes/cc-mode.el"
3538;;;;;; (17888 32281)) 3538;;;;;; (17963 19063))
3539;;; Generated autoloads from progmodes/cc-mode.el 3539;;; Generated autoloads from progmodes/cc-mode.el
3540 3540
3541(autoload (quote c-initialize-cc-mode) "cc-mode" "\ 3541(autoload (quote c-initialize-cc-mode) "cc-mode" "\
@@ -4483,7 +4483,7 @@ read/written by MS-DOS software, or for display on the MS-DOS terminal.
4483;;;### (autoloads (comint-redirect-results-list-from-process comint-redirect-results-list 4483;;;### (autoloads (comint-redirect-results-list-from-process comint-redirect-results-list
4484;;;;;; comint-redirect-send-command-to-process comint-redirect-send-command 4484;;;;;; comint-redirect-send-command-to-process comint-redirect-send-command
4485;;;;;; comint-run make-comint make-comint-in-buffer) "comint" "comint.el" 4485;;;;;; comint-run make-comint make-comint-in-buffer) "comint" "comint.el"
4486;;;;;; (17888 37037)) 4486;;;;;; (17963 19298))
4487;;; Generated autoloads from comint.el 4487;;; Generated autoloads from comint.el
4488 4488
4489(defvar comint-output-filter-functions (quote (comint-postoutput-scroll-to-bottom comint-watch-for-password-prompt)) "\ 4489(defvar comint-output-filter-functions (quote (comint-postoutput-scroll-to-bottom comint-watch-for-password-prompt)) "\
@@ -4611,7 +4611,7 @@ on third call it again advances points to the next difference and so on.
4611;;;;;; compilation-shell-minor-mode compilation-mode compilation-start 4611;;;;;; compilation-shell-minor-mode compilation-mode compilation-start
4612;;;;;; compile compilation-disable-input compile-command compilation-search-path 4612;;;;;; compile compilation-disable-input compile-command compilation-search-path
4613;;;;;; compilation-ask-about-save compilation-window-height compilation-mode-hook) 4613;;;;;; compilation-ask-about-save compilation-window-height compilation-mode-hook)
4614;;;;;; "compile" "progmodes/compile.el" (17888 32281)) 4614;;;;;; "compile" "progmodes/compile.el" (17963 19298))
4615;;; Generated autoloads from progmodes/compile.el 4615;;; Generated autoloads from progmodes/compile.el
4616 4616
4617(defvar compilation-mode-hook nil "\ 4617(defvar compilation-mode-hook nil "\
@@ -4773,7 +4773,7 @@ This is the value of `next-error-function' in Compilation buffers.
4773;;;*** 4773;;;***
4774 4774
4775;;;### (autoloads (partial-completion-mode) "complete" "complete.el" 4775;;;### (autoloads (partial-completion-mode) "complete" "complete.el"
4776;;;;;; (17888 32279)) 4776;;;;;; (17963 19063))
4777;;; Generated autoloads from complete.el 4777;;; Generated autoloads from complete.el
4778 4778
4779(defvar partial-completion-mode nil "\ 4779(defvar partial-completion-mode nil "\
@@ -5275,7 +5275,7 @@ Insert a copyright by $ORGANIZATION notice at cursor.
5275;;;*** 5275;;;***
5276 5276
5277;;;### (autoloads (cperl-perldoc-at-point cperl-perldoc cperl-mode) 5277;;;### (autoloads (cperl-perldoc-at-point cperl-perldoc cperl-mode)
5278;;;;;; "cperl-mode" "progmodes/cperl-mode.el" (17888 32281)) 5278;;;;;; "cperl-mode" "progmodes/cperl-mode.el" (17963 19041))
5279;;; Generated autoloads from progmodes/cperl-mode.el 5279;;; Generated autoloads from progmodes/cperl-mode.el
5280 5280
5281(autoload (quote cperl-mode) "cperl-mode" "\ 5281(autoload (quote cperl-mode) "cperl-mode" "\
@@ -5613,7 +5613,7 @@ Enable CUA selection mode without the C-z/C-x/C-c/C-v bindings.
5613;;;;;; customize-mode customize customize-save-variable customize-set-variable 5613;;;;;; customize-mode customize customize-save-variable customize-set-variable
5614;;;;;; customize-set-value custom-menu-sort-alphabetically custom-buffer-sort-alphabetically 5614;;;;;; customize-set-value custom-menu-sort-alphabetically custom-buffer-sort-alphabetically
5615;;;;;; custom-browse-sort-alphabetically) "cus-edit" "cus-edit.el" 5615;;;;;; custom-browse-sort-alphabetically) "cus-edit" "cus-edit.el"
5616;;;;;; (17888 37037)) 5616;;;;;; (17963 19047))
5617;;; Generated autoloads from cus-edit.el 5617;;; Generated autoloads from cus-edit.el
5618 5618
5619(defvar custom-browse-sort-alphabetically nil "\ 5619(defvar custom-browse-sort-alphabetically nil "\
@@ -5652,9 +5652,6 @@ VALUE is a Lisp object.
5652If VARIABLE has a `custom-set' property, that is used for setting 5652If VARIABLE has a `custom-set' property, that is used for setting
5653VARIABLE, otherwise `set-default' is used. 5653VARIABLE, otherwise `set-default' is used.
5654 5654
5655The `customized-value' property of the VARIABLE will be set to a list
5656with a quoted VALUE as its sole list member.
5657
5658If VARIABLE has a `variable-interactive' property, that is used as if 5655If VARIABLE has a `variable-interactive' property, that is used as if
5659it were the arg to `interactive' (which see) to interactively read the value. 5656it were the arg to `interactive' (which see) to interactively read the value.
5660 5657
@@ -5672,9 +5669,6 @@ Return VALUE.
5672If VARIABLE has a `custom-set' property, that is used for setting 5669If VARIABLE has a `custom-set' property, that is used for setting
5673VARIABLE, otherwise `set-default' is used. 5670VARIABLE, otherwise `set-default' is used.
5674 5671
5675The `customized-value' property of the VARIABLE will be set to a list
5676with a quoted VALUE as its sole list member.
5677
5678If VARIABLE has a `variable-interactive' property, that is used as if 5672If VARIABLE has a `variable-interactive' property, that is used as if
5679it were the arg to `interactive' (which see) to interactively read the value. 5673it were the arg to `interactive' (which see) to interactively read the value.
5680 5674
@@ -6757,7 +6751,7 @@ Not documented
6757;;;*** 6751;;;***
6758 6752
6759;;;### (autoloads (diary-mode diary-mail-entries diary) "diary-lib" 6753;;;### (autoloads (diary-mode diary-mail-entries diary) "diary-lib"
6760;;;;;; "calendar/diary-lib.el" (17888 32279)) 6754;;;;;; "calendar/diary-lib.el" (17963 20580))
6761;;; Generated autoloads from calendar/diary-lib.el 6755;;; Generated autoloads from calendar/diary-lib.el
6762 6756
6763(autoload (quote diary) "diary-lib" "\ 6757(autoload (quote diary) "diary-lib" "\
@@ -6837,13 +6831,15 @@ With prefix arg, prompt for diff switches.
6837;;;*** 6831;;;***
6838 6832
6839;;;### (autoloads (diff-minor-mode diff-mode) "diff-mode" "diff-mode.el" 6833;;;### (autoloads (diff-minor-mode diff-mode) "diff-mode" "diff-mode.el"
6840;;;;;; (17888 36650)) 6834;;;;;; (17963 19282))
6841;;; Generated autoloads from diff-mode.el 6835;;; Generated autoloads from diff-mode.el
6842 6836
6843(autoload (quote diff-mode) "diff-mode" "\ 6837(autoload (quote diff-mode) "diff-mode" "\
6844Major mode for viewing/editing context diffs. 6838Major mode for viewing/editing context diffs.
6845Supports unified and context diffs as well as (to a lesser extent) 6839Supports unified and context diffs as well as (to a lesser extent)
6846normal diffs. 6840normal diffs. If you edit the buffer manually, diff-mode will try
6841to update the hunk headers for you on-the-fly.
6842
6847When the buffer is read-only, the ESC prefix is not necessary. 6843When the buffer is read-only, the ESC prefix is not necessary.
6848If you edit the buffer manually, diff-mode will try to update the hunk 6844If you edit the buffer manually, diff-mode will try to update the hunk
6849headers for you on-the-fly. 6845headers for you on-the-fly.
@@ -6851,7 +6847,11 @@ headers for you on-the-fly.
6851You can also switch between context diff and unified diff with \\[diff-context->unified], 6847You can also switch between context diff and unified diff with \\[diff-context->unified],
6852or vice versa with \\[diff-unified->context] and you can also reverse the direction of 6848or vice versa with \\[diff-unified->context] and you can also reverse the direction of
6853a diff with \\[diff-reverse-direction]. 6849a diff with \\[diff-reverse-direction].
6854\\{diff-mode-map} 6850
6851When the buffer is read-only, the Meta- modifier is not necessary
6852to run the Diff mode commands:
6853
6854 \\{diff-mode-map}
6855 6855
6856\(fn)" t nil) 6856\(fn)" t nil)
6857 6857
@@ -8488,7 +8488,7 @@ With prefix arg NOCONFIRM, execute current line as-is without editing.
8488 8488
8489;;;### (autoloads (edebug-all-forms edebug-all-defs edebug-eval-top-level-form 8489;;;### (autoloads (edebug-all-forms edebug-all-defs edebug-eval-top-level-form
8490;;;;;; edebug-basic-spec edebug-all-forms edebug-all-defs) "edebug" 8490;;;;;; edebug-basic-spec edebug-all-forms edebug-all-defs) "edebug"
8491;;;;;; "emacs-lisp/edebug.el" (17888 32279)) 8491;;;;;; "emacs-lisp/edebug.el" (17963 19041))
8492;;; Generated autoloads from emacs-lisp/edebug.el 8492;;; Generated autoloads from emacs-lisp/edebug.el
8493 8493
8494(defvar edebug-all-defs nil "\ 8494(defvar edebug-all-defs nil "\
@@ -9059,7 +9059,7 @@ displayed.
9059;;;*** 9059;;;***
9060 9060
9061;;;### (autoloads (report-emacs-bug) "emacsbug" "mail/emacsbug.el" 9061;;;### (autoloads (report-emacs-bug) "emacsbug" "mail/emacsbug.el"
9062;;;;;; (17888 32280)) 9062;;;;;; (17963 19063))
9063;;; Generated autoloads from mail/emacsbug.el 9063;;; Generated autoloads from mail/emacsbug.el
9064 9064
9065(autoload (quote report-emacs-bug) "emacsbug" "\ 9065(autoload (quote report-emacs-bug) "emacsbug" "\
@@ -9657,8 +9657,8 @@ Add a file to `erc-xdcc-files'.
9657 9657
9658;;;*** 9658;;;***
9659 9659
9660;;;### (autoloads (eshell-mode) "esh-mode" "eshell/esh-mode.el" (17888 9660;;;### (autoloads (eshell-mode) "esh-mode" "eshell/esh-mode.el" (17963
9661;;;;;; 32279)) 9661;;;;;; 19298))
9662;;; Generated autoloads from eshell/esh-mode.el 9662;;; Generated autoloads from eshell/esh-mode.el
9663 9663
9664(autoload (quote eshell-mode) "esh-mode" "\ 9664(autoload (quote eshell-mode) "esh-mode" "\
@@ -12670,7 +12670,7 @@ Also fontifies the buffer appropriately (see `goto-address-fontify-p' and
12670 12670
12671;;;### (autoloads (rgrep lgrep grep-find grep grep-mode grep-compute-defaults 12671;;;### (autoloads (rgrep lgrep grep-find grep grep-mode grep-compute-defaults
12672;;;;;; grep-process-setup grep-setup-hook grep-find-command grep-command 12672;;;;;; grep-process-setup grep-setup-hook grep-find-command grep-command
12673;;;;;; grep-window-height) "grep" "progmodes/grep.el" (17888 36935)) 12673;;;;;; grep-window-height) "grep" "progmodes/grep.el" (17963 19282))
12674;;; Generated autoloads from progmodes/grep.el 12674;;; Generated autoloads from progmodes/grep.el
12675 12675
12676(defvar grep-window-height nil "\ 12676(defvar grep-window-height nil "\
@@ -12824,7 +12824,7 @@ the form \"WINDOW-ID PIXMAP-ID\". Value is non-nil if successful.
12824;;;*** 12824;;;***
12825 12825
12826;;;### (autoloads (gdb-script-mode jdb pdb perldb xdb dbx sdb gdb) 12826;;;### (autoloads (gdb-script-mode jdb pdb perldb xdb dbx sdb gdb)
12827;;;;;; "gud" "progmodes/gud.el" (17963 18441)) 12827;;;;;; "gud" "progmodes/gud.el" (17963 19063))
12828;;; Generated autoloads from progmodes/gud.el 12828;;; Generated autoloads from progmodes/gud.el
12829 12829
12830(autoload (quote gdb) "gud" "\ 12830(autoload (quote gdb) "gud" "\
@@ -13536,7 +13536,7 @@ how the hiding is done:
13536;;;*** 13536;;;***
13537 13537
13538;;;### (autoloads (hs-minor-mode) "hideshow" "progmodes/hideshow.el" 13538;;;### (autoloads (hs-minor-mode) "hideshow" "progmodes/hideshow.el"
13539;;;;;; (17888 32281)) 13539;;;;;; (17963 19041))
13540;;; Generated autoloads from progmodes/hideshow.el 13540;;; Generated autoloads from progmodes/hideshow.el
13541 13541
13542(defvar hs-special-modes-alist (quote ((c-mode "{" "}" "/[*/]" nil hs-c-like-adjust-block-beginning) (c++-mode "{" "}" "/[*/]" nil hs-c-like-adjust-block-beginning) (bibtex-mode ("^@\\S(*\\(\\s(\\)" 1)) (java-mode "{" "}" "/[*/]" nil hs-c-like-adjust-block-beginning))) "\ 13542(defvar hs-special-modes-alist (quote ((c-mode "{" "}" "/[*/]" nil hs-c-like-adjust-block-beginning) (c++-mode "{" "}" "/[*/]" nil hs-c-like-adjust-block-beginning) (bibtex-mode ("^@\\S(*\\(\\s(\\)" 1)) (java-mode "{" "}" "/[*/]" nil hs-c-like-adjust-block-beginning))) "\
@@ -14431,7 +14431,7 @@ FORMATS is the value to use for `ibuffer-formats'.
14431 14431
14432;;;### (autoloads (icalendar-import-buffer icalendar-import-file 14432;;;### (autoloads (icalendar-import-buffer icalendar-import-file
14433;;;;;; icalendar-export-region icalendar-export-file) "icalendar" 14433;;;;;; icalendar-export-region icalendar-export-file) "icalendar"
14434;;;;;; "calendar/icalendar.el" (17888 32279)) 14434;;;;;; "calendar/icalendar.el" (17963 20580))
14435;;; Generated autoloads from calendar/icalendar.el 14435;;; Generated autoloads from calendar/icalendar.el
14436 14436
14437(autoload (quote icalendar-export-file) "icalendar" "\ 14437(autoload (quote icalendar-export-file) "icalendar" "\
@@ -14469,8 +14469,8 @@ object, reads it and adds all VEVENT elements to the diary
14469DIARY-FILE. 14469DIARY-FILE.
14470 14470
14471It will ask for each appointment whether to add it to the diary 14471It will ask for each appointment whether to add it to the diary
14472when DO-NOT-ASK is non-nil. When called interactively, 14472unless DO-NOT-ASK is non-nil. When called interactively,
14473DO-NOT-ASK is set to t, so that you are asked fore each event. 14473DO-NOT-ASK is nil, so that you are asked for each event.
14474 14474
14475NON-MARKING determines whether diary events are created as 14475NON-MARKING determines whether diary events are created as
14476non-marking. 14476non-marking.
@@ -14483,8 +14483,8 @@ buffer `*icalendar-errors*'.
14483 14483
14484;;;*** 14484;;;***
14485 14485
14486;;;### (autoloads (icomplete-mode) "icomplete" "icomplete.el" (17888 14486;;;### (autoloads (icomplete-mode) "icomplete" "icomplete.el" (17963
14487;;;;;; 32280)) 14487;;;;;; 19063))
14488;;; Generated autoloads from icomplete.el 14488;;; Generated autoloads from icomplete.el
14489 14489
14490(defvar icomplete-mode nil "\ 14490(defvar icomplete-mode nil "\
@@ -14707,7 +14707,7 @@ The main features of this mode are
14707;;;;;; ido-find-file-in-dir ido-switch-buffer-other-frame ido-insert-buffer 14707;;;;;; ido-find-file-in-dir ido-switch-buffer-other-frame ido-insert-buffer
14708;;;;;; ido-kill-buffer ido-display-buffer ido-switch-buffer-other-window 14708;;;;;; ido-kill-buffer ido-display-buffer ido-switch-buffer-other-window
14709;;;;;; ido-switch-buffer ido-mode ido-mode) "ido" "ido.el" (17963 14709;;;;;; ido-switch-buffer ido-mode ido-mode) "ido" "ido.el" (17963
14710;;;;;; 18439)) 14710;;;;;; 19298))
14711;;; Generated autoloads from ido.el 14711;;; Generated autoloads from ido.el
14712 14712
14713(defvar ido-mode nil "\ 14713(defvar ido-mode nil "\
@@ -15783,7 +15783,7 @@ For example, invoke \"emacs -batch -f batch-info-validate $info/ ~/*.info\"
15783 15783
15784;;;### (autoloads (isearch-process-search-multibyte-characters isearch-toggle-input-method 15784;;;### (autoloads (isearch-process-search-multibyte-characters isearch-toggle-input-method
15785;;;;;; isearch-toggle-specified-input-method) "isearch-x" "international/isearch-x.el" 15785;;;;;; isearch-toggle-specified-input-method) "isearch-x" "international/isearch-x.el"
15786;;;;;; (17888 32280)) 15786;;;;;; (17963 19057))
15787;;; Generated autoloads from international/isearch-x.el 15787;;; Generated autoloads from international/isearch-x.el
15788 15788
15789(autoload (quote isearch-toggle-specified-input-method) "isearch-x" "\ 15789(autoload (quote isearch-toggle-specified-input-method) "isearch-x" "\
@@ -15803,8 +15803,8 @@ Not documented
15803 15803
15804;;;*** 15804;;;***
15805 15805
15806;;;### (autoloads (isearchb-activate) "isearchb" "isearchb.el" (17888 15806;;;### (autoloads (isearchb-activate) "isearchb" "isearchb.el" (17963
15807;;;;;; 36581)) 15807;;;;;; 19309))
15808;;; Generated autoloads from isearchb.el 15808;;; Generated autoloads from isearchb.el
15809 15809
15810(autoload (quote isearchb-activate) "isearchb" "\ 15810(autoload (quote isearchb-activate) "isearchb" "\
@@ -15948,7 +15948,7 @@ Add submenus to the File menu, to convert to and from various formats.
15948;;;;;; ispell-region ispell-change-dictionary ispell-kill-ispell 15948;;;;;; ispell-region ispell-change-dictionary ispell-kill-ispell
15949;;;;;; ispell-help ispell-pdict-save ispell-word ispell-local-dictionary-alist 15949;;;;;; ispell-help ispell-pdict-save ispell-word ispell-local-dictionary-alist
15950;;;;;; ispell-personal-dictionary) "ispell" "textmodes/ispell.el" 15950;;;;;; ispell-personal-dictionary) "ispell" "textmodes/ispell.el"
15951;;;;;; (17888 36935)) 15951;;;;;; (17963 19313))
15952;;; Generated autoloads from textmodes/ispell.el 15952;;; Generated autoloads from textmodes/ispell.el
15953(put 'ispell-check-comments 'safe-local-variable (lambda (a) (memq a '(nil t exclusive)))) 15953(put 'ispell-check-comments 'safe-local-variable (lambda (a) (memq a '(nil t exclusive))))
15954 15954
@@ -17134,8 +17134,8 @@ Otherwise they are treated as Emacs regexps (for backward compatibility).")
17134 17134
17135;;;*** 17135;;;***
17136 17136
17137;;;### (autoloads (phases-of-moon) "lunar" "calendar/lunar.el" (17888 17137;;;### (autoloads (phases-of-moon) "lunar" "calendar/lunar.el" (17963
17138;;;;;; 32279)) 17138;;;;;; 19298))
17139;;; Generated autoloads from calendar/lunar.el 17139;;; Generated autoloads from calendar/lunar.el
17140 17140
17141(autoload (quote phases-of-moon) "lunar" "\ 17141(autoload (quote phases-of-moon) "lunar" "\
@@ -19507,7 +19507,7 @@ The Custom feature is intended to make this obsolete.
19507;;;;;; org-remember-handler org-remember org-remember-apply-template 19507;;;;;; org-remember-handler org-remember org-remember-apply-template
19508;;;;;; org-remember-annotation org-store-link orgtbl-mode turn-on-orgtbl 19508;;;;;; org-remember-annotation org-store-link orgtbl-mode turn-on-orgtbl
19509;;;;;; org-global-cycle org-cycle org-mode) "org" "textmodes/org.el" 19509;;;;;; org-global-cycle org-cycle org-mode) "org" "textmodes/org.el"
19510;;;;;; (17963 18455)) 19510;;;;;; (17963 19299))
19511;;; Generated autoloads from textmodes/org.el 19511;;; Generated autoloads from textmodes/org.el
19512 19512
19513(autoload (quote org-mode) "org" "\ 19513(autoload (quote org-mode) "org" "\
@@ -20161,8 +20161,8 @@ Completion for the `chgrp' command.
20161 20161
20162;;;### (autoloads (pcomplete-shell-setup pcomplete-comint-setup pcomplete-list 20162;;;### (autoloads (pcomplete-shell-setup pcomplete-comint-setup pcomplete-list
20163;;;;;; pcomplete-help pcomplete-expand pcomplete-continue pcomplete-expand-and-complete 20163;;;;;; pcomplete-help pcomplete-expand pcomplete-continue pcomplete-expand-and-complete
20164;;;;;; pcomplete-reverse pcomplete) "pcomplete" "pcomplete.el" (17888 20164;;;;;; pcomplete-reverse pcomplete) "pcomplete" "pcomplete.el" (17963
20165;;;;;; 32280)) 20165;;;;;; 19047))
20166;;; Generated autoloads from pcomplete.el 20166;;; Generated autoloads from pcomplete.el
20167 20167
20168(autoload (quote pcomplete) "pcomplete" "\ 20168(autoload (quote pcomplete) "pcomplete" "\
@@ -21466,7 +21466,7 @@ Not documented
21466;;;;;; ps-print-region-with-faces ps-print-region ps-print-buffer-with-faces 21466;;;;;; ps-print-region-with-faces ps-print-region ps-print-buffer-with-faces
21467;;;;;; ps-print-buffer ps-print-customize ps-print-color-p ps-paper-type 21467;;;;;; ps-print-buffer ps-print-customize ps-print-color-p ps-paper-type
21468;;;;;; ps-page-dimensions-database) "ps-print" "ps-print.el" (17963 21468;;;;;; ps-page-dimensions-database) "ps-print" "ps-print.el" (17963
21469;;;;;; 18455)) 21469;;;;;; 19047))
21470;;; Generated autoloads from ps-print.el 21470;;; Generated autoloads from ps-print.el
21471 21471
21472(defvar ps-page-dimensions-database (list (list (quote a4) (/ (* 72 21.0) 2.54) (/ (* 72 29.7) 2.54) "A4") (list (quote a3) (/ (* 72 29.7) 2.54) (/ (* 72 42.0) 2.54) "A3") (list (quote letter) (* 72 8.5) (* 72 11.0) "Letter") (list (quote legal) (* 72 8.5) (* 72 14.0) "Legal") (list (quote letter-small) (* 72 7.68) (* 72 10.16) "LetterSmall") (list (quote tabloid) (* 72 11.0) (* 72 17.0) "Tabloid") (list (quote ledger) (* 72 17.0) (* 72 11.0) "Ledger") (list (quote statement) (* 72 5.5) (* 72 8.5) "Statement") (list (quote executive) (* 72 7.5) (* 72 10.0) "Executive") (list (quote a4small) (* 72 7.47) (* 72 10.85) "A4Small") (list (quote b4) (* 72 10.125) (* 72 14.33) "B4") (list (quote b5) (* 72 7.16) (* 72 10.125) "B5")) "\ 21472(defvar ps-page-dimensions-database (list (list (quote a4) (/ (* 72 21.0) 2.54) (/ (* 72 29.7) 2.54) "A4") (list (quote a3) (/ (* 72 29.7) 2.54) (/ (* 72 42.0) 2.54) "A3") (list (quote letter) (* 72 8.5) (* 72 11.0) "Letter") (list (quote legal) (* 72 8.5) (* 72 14.0) "Legal") (list (quote letter-small) (* 72 7.68) (* 72 10.16) "LetterSmall") (list (quote tabloid) (* 72 11.0) (* 72 17.0) "Tabloid") (list (quote ledger) (* 72 17.0) (* 72 11.0) "Ledger") (list (quote statement) (* 72 5.5) (* 72 8.5) "Statement") (list (quote executive) (* 72 7.5) (* 72 10.0) "Executive") (list (quote a4small) (* 72 7.47) (* 72 10.85) "A4Small") (list (quote b4) (* 72 10.125) (* 72 14.33) "B4") (list (quote b5) (* 72 7.16) (* 72 10.125) "B5")) "\
@@ -21663,7 +21663,7 @@ If EXTENSION is any other symbol, it is ignored.
21663;;;*** 21663;;;***
21664 21664
21665;;;### (autoloads (jython-mode python-mode run-python) "python" "progmodes/python.el" 21665;;;### (autoloads (jython-mode python-mode run-python) "python" "progmodes/python.el"
21666;;;;;; (17963 18448)) 21666;;;;;; (17963 19313))
21667;;; Generated autoloads from progmodes/python.el 21667;;; Generated autoloads from progmodes/python.el
21668 21668
21669(add-to-list (quote interpreter-mode-alist) (quote ("jython" . jython-mode))) 21669(add-to-list (quote interpreter-mode-alist) (quote ("jython" . jython-mode)))
@@ -21761,7 +21761,7 @@ them into characters should be done separately.
21761;;;;;; quail-defrule quail-install-decode-map quail-install-map 21761;;;;;; quail-defrule quail-install-decode-map quail-install-map
21762;;;;;; quail-define-rules quail-show-keyboard-layout quail-set-keyboard-layout 21762;;;;;; quail-define-rules quail-show-keyboard-layout quail-set-keyboard-layout
21763;;;;;; quail-define-package quail-use-package quail-title) "quail" 21763;;;;;; quail-define-package quail-use-package quail-title) "quail"
21764;;;;;; "international/quail.el" (17888 36644)) 21764;;;;;; "international/quail.el" (17963 19309))
21765;;; Generated autoloads from international/quail.el 21765;;; Generated autoloads from international/quail.el
21766 21766
21767(autoload (quote quail-title) "quail" "\ 21767(autoload (quote quail-title) "quail" "\
@@ -22065,7 +22065,7 @@ Display `quickurl-list' as a formatted list using `quickurl-list-mode'.
22065;;;*** 22065;;;***
22066 22066
22067;;;### (autoloads (rcirc-track-minor-mode rcirc-connect rcirc) "rcirc" 22067;;;### (autoloads (rcirc-track-minor-mode rcirc-connect rcirc) "rcirc"
22068;;;;;; "net/rcirc.el" (17888 32280)) 22068;;;;;; "net/rcirc.el" (17963 19063))
22069;;; Generated autoloads from net/rcirc.el 22069;;; Generated autoloads from net/rcirc.el
22070 22070
22071(autoload (quote rcirc) "rcirc" "\ 22071(autoload (quote rcirc) "rcirc" "\
@@ -22110,7 +22110,7 @@ See \\[compile].
22110;;;*** 22110;;;***
22111 22111
22112;;;### (autoloads (re-builder) "re-builder" "emacs-lisp/re-builder.el" 22112;;;### (autoloads (re-builder) "re-builder" "emacs-lisp/re-builder.el"
22113;;;;;; (17888 32279)) 22113;;;;;; (17963 19309))
22114;;; Generated autoloads from emacs-lisp/re-builder.el 22114;;; Generated autoloads from emacs-lisp/re-builder.el
22115 22115
22116(defalias (quote regexp-builder) (quote re-builder)) 22116(defalias (quote regexp-builder) (quote re-builder))
@@ -24065,7 +24065,7 @@ Like `mail' command, but display mail buffer in another frame.
24065;;;*** 24065;;;***
24066 24066
24067;;;### (autoloads (server-save-buffers-kill-terminal server-mode 24067;;;### (autoloads (server-save-buffers-kill-terminal server-mode
24068;;;;;; server-start) "server" "server.el" (17888 32281)) 24068;;;;;; server-start) "server" "server.el" (17963 20687))
24069;;; Generated autoloads from server.el 24069;;; Generated autoloads from server.el
24070 24070
24071(autoload (quote server-start) "server" "\ 24071(autoload (quote server-start) "server" "\
@@ -24109,12 +24109,12 @@ only these files will be asked to be saved.
24109 24109
24110;;;*** 24110;;;***
24111 24111
24112;;;### (autoloads (ses-mode) "ses" "ses.el" (17888 32281)) 24112;;;### (autoloads (ses-mode) "ses" "ses.el" (17963 19052))
24113;;; Generated autoloads from ses.el 24113;;; Generated autoloads from ses.el
24114 24114
24115(autoload (quote ses-mode) "ses" "\ 24115(autoload (quote ses-mode) "ses" "\
24116Major mode for Simple Emacs Spreadsheet. 24116Major mode for Simple Emacs Spreadsheet.
24117See \"ses-example.ses\" (in the etc data directory) for more info. 24117See \"ses-example.ses\" (in `data-directory') for more info.
24118 24118
24119Key definitions: 24119Key definitions:
24120\\{ses-mode-map} 24120\\{ses-mode-map}
@@ -24362,7 +24362,7 @@ Set up file shadowing.
24362;;;*** 24362;;;***
24363 24363
24364;;;### (autoloads (shell shell-dumb-shell-regexp) "shell" "shell.el" 24364;;;### (autoloads (shell shell-dumb-shell-regexp) "shell" "shell.el"
24365;;;;;; (17888 32281)) 24365;;;;;; (17963 19041))
24366;;; Generated autoloads from shell.el 24366;;; Generated autoloads from shell.el
24367 24367
24368(defvar shell-dumb-shell-regexp "cmd\\(proxy\\)?\\.exe" "\ 24368(defvar shell-dumb-shell-regexp "cmd\\(proxy\\)?\\.exe" "\
@@ -24445,7 +24445,7 @@ Turning on Sieve mode runs `sieve-mode-hook'.
24445 24445
24446;;;*** 24446;;;***
24447 24447
24448;;;### (autoloads nil "simple" "simple.el" (17888 36936)) 24448;;;### (autoloads nil "simple" "simple.el" (17963 19313))
24449;;; Generated autoloads from simple.el 24449;;; Generated autoloads from simple.el
24450(put 'fill-prefix 'safe-local-variable 'string-or-null-p) 24450(put 'fill-prefix 'safe-local-variable 'string-or-null-p)
24451 24451
@@ -24611,7 +24611,7 @@ symmetrical ones, and the same character twice for the others.
24611;;;*** 24611;;;***
24612 24612
24613;;;### (autoloads (smerge-mode smerge-ediff) "smerge-mode" "smerge-mode.el" 24613;;;### (autoloads (smerge-mode smerge-ediff) "smerge-mode" "smerge-mode.el"
24614;;;;;; (17888 32281)) 24614;;;;;; (17963 19063))
24615;;; Generated autoloads from smerge-mode.el 24615;;; Generated autoloads from smerge-mode.el
24616 24616
24617(autoload (quote smerge-ediff) "smerge-mode" "\ 24617(autoload (quote smerge-ediff) "smerge-mode" "\
@@ -24718,7 +24718,7 @@ then `snmpv2-mode-hook'.
24718 24718
24719;;;### (autoloads (solar-equinoxes-solstices sunrise-sunset calendar-location-name 24719;;;### (autoloads (solar-equinoxes-solstices sunrise-sunset calendar-location-name
24720;;;;;; calendar-longitude calendar-latitude calendar-time-display-form) 24720;;;;;; calendar-longitude calendar-latitude calendar-time-display-form)
24721;;;;;; "solar" "calendar/solar.el" (17888 32279)) 24721;;;;;; "solar" "calendar/solar.el" (17963 19298))
24722;;; Generated autoloads from calendar/solar.el 24722;;; Generated autoloads from calendar/solar.el
24723 24723
24724(defvar calendar-time-display-form (quote (12-hours ":" minutes am-pm (if time-zone " (") time-zone (if time-zone ")"))) "\ 24724(defvar calendar-time-display-form (quote (12-hours ":" minutes am-pm (if time-zone " (") time-zone (if time-zone ")"))) "\
@@ -25708,7 +25708,7 @@ Studlify-case the current buffer.
25708 25708
25709;;;*** 25709;;;***
25710 25710
25711;;;### (autoloads (locate-library) "subr" "subr.el" (17888 36928)) 25711;;;### (autoloads (locate-library) "subr" "subr.el" (17963 19313))
25712;;; Generated autoloads from subr.el 25712;;; Generated autoloads from subr.el
25713 25713
25714(autoload (quote locate-library) "subr" "\ 25714(autoload (quote locate-library) "subr" "\
@@ -25762,7 +25762,7 @@ before, and `sc-post-hook' is run after the guts of this function.
25762 25762
25763;;;*** 25763;;;***
25764 25764
25765;;;### (autoloads (t-mouse-mode) "t-mouse" "t-mouse.el" (17888 32281)) 25765;;;### (autoloads (t-mouse-mode) "t-mouse" "t-mouse.el" (17963 19313))
25766;;; Generated autoloads from t-mouse.el 25766;;; Generated autoloads from t-mouse.el
25767 25767
25768(defvar t-mouse-mode nil "\ 25768(defvar t-mouse-mode nil "\
@@ -27972,7 +27972,7 @@ BUFFER defaults to `trace-buffer'.
27972;;;### (autoloads (tramp-unload-tramp tramp-completion-handle-file-name-completion 27972;;;### (autoloads (tramp-unload-tramp tramp-completion-handle-file-name-completion
27973;;;;;; tramp-completion-handle-file-name-all-completions tramp-unload-file-name-handlers 27973;;;;;; tramp-completion-handle-file-name-all-completions tramp-unload-file-name-handlers
27974;;;;;; tramp-file-name-handler tramp-completion-file-name-regexp 27974;;;;;; tramp-file-name-handler tramp-completion-file-name-regexp
27975;;;;;; tramp-file-name-regexp) "tramp" "net/tramp.el" (17963 18447)) 27975;;;;;; tramp-file-name-regexp) "tramp" "net/tramp.el" (17963 19047))
27976;;; Generated autoloads from net/tramp.el 27976;;; Generated autoloads from net/tramp.el
27977 27977
27978(defvar tramp-unified-filenames (not (featurep (quote xemacs))) "\ 27978(defvar tramp-unified-filenames (not (featurep (quote xemacs))) "\
@@ -28308,7 +28308,7 @@ First column's text sSs Second column's text
28308;;;;;; type-break type-break-mode type-break-keystroke-threshold 28308;;;;;; type-break type-break-mode type-break-keystroke-threshold
28309;;;;;; type-break-good-break-interval type-break-good-rest-interval 28309;;;;;; type-break-good-break-interval type-break-good-rest-interval
28310;;;;;; type-break-interval type-break-mode) "type-break" "type-break.el" 28310;;;;;; type-break-interval type-break-mode) "type-break" "type-break.el"
28311;;;;;; (17888 36583)) 28311;;;;;; (17963 19282))
28312;;; Generated autoloads from type-break.el 28312;;; Generated autoloads from type-break.el
28313 28313
28314(defvar type-break-mode nil "\ 28314(defvar type-break-mode nil "\
@@ -30843,7 +30843,7 @@ With arg, turn Winner mode on if and only if arg is positive.
30843;;;*** 30843;;;***
30844 30844
30845;;;### (autoloads (woman-find-file woman-dired-find-file woman) "woman" 30845;;;### (autoloads (woman-find-file woman-dired-find-file woman) "woman"
30846;;;;;; "woman.el" (17888 32281)) 30846;;;;;; "woman.el" (17963 19299))
30847;;; Generated autoloads from woman.el 30847;;; Generated autoloads from woman.el
30848 30848
30849(autoload (quote woman) "woman" "\ 30849(autoload (quote woman) "woman" "\
@@ -30992,7 +30992,7 @@ The key bindings are:
30992;;;*** 30992;;;***
30993 30993
30994;;;### (autoloads (xml-parse-region xml-parse-file) "xml" "xml.el" 30994;;;### (autoloads (xml-parse-region xml-parse-file) "xml" "xml.el"
30995;;;;;; (17888 32281)) 30995;;;;;; (17963 19299))
30996;;; Generated autoloads from xml.el 30996;;; Generated autoloads from xml.el
30997 30997
30998(autoload (quote xml-parse-file) "xml" "\ 30998(autoload (quote xml-parse-file) "xml" "\
@@ -31228,7 +31228,7 @@ Zone out, completely.
31228;;;;;; "url/url-vars.el" "url/vc-dav.el" "vc-hooks.el" "vcursor.el" 31228;;;;;; "url/url-vars.el" "url/vc-dav.el" "vc-hooks.el" "vcursor.el"
31229;;;;;; "version.el" "vms-patch.el" "vmsproc.el" "vt-control.el" 31229;;;;;; "version.el" "vms-patch.el" "vmsproc.el" "vt-control.el"
31230;;;;;; "vt100-led.el" "w32-fns.el" "w32-vars.el" "widget.el" "window.el" 31230;;;;;; "vt100-led.el" "w32-fns.el" "w32-vars.el" "widget.el" "window.el"
31231;;;;;; "x-dnd.el") (17963 18741 697794)) 31231;;;;;; "x-dnd.el") (17963 20717 345010))
31232 31232
31233;;;*** 31233;;;***
31234 31234
diff --git a/lisp/mail/emacsbug.el b/lisp/mail/emacsbug.el
index 725934b63d8..1d5e735bd5d 100644
--- a/lisp/mail/emacsbug.el
+++ b/lisp/mail/emacsbug.el
@@ -139,7 +139,9 @@ usually do not have translators to read other languages for them.\n\n")
139 (insert "\n\nIn " (emacs-version) "\n") 139 (insert "\n\nIn " (emacs-version) "\n")
140 (if (fboundp 'x-server-vendor) 140 (if (fboundp 'x-server-vendor)
141 (condition-case nil 141 (condition-case nil
142 (insert "X server distributor `" (x-server-vendor) "', version " 142 ;; This is used not only for X11 but also W32 and others.
143 (insert "Windowing system distributor `" (x-server-vendor)
144 "', version "
143 (mapconcat 'number-to-string (x-server-version) ".") "\n") 145 (mapconcat 'number-to-string (x-server-version) ".") "\n")
144 (error t))) 146 (error t)))
145 (if (and system-configuration-options 147 (if (and system-configuration-options
@@ -281,5 +283,5 @@ and send the mail again using \\[mail-send-and-exit].")))
281 283
282(provide 'emacsbug) 284(provide 'emacsbug)
283 285
284;;; arch-tag: 248b6523-c3b5-4fec-9a3f-0411fafa7d49 286;; arch-tag: 248b6523-c3b5-4fec-9a3f-0411fafa7d49
285;;; emacsbug.el ends here 287;;; emacsbug.el ends here
diff --git a/lisp/mouse.el b/lisp/mouse.el
index ef0784d8973..8e9d931c15c 100644
--- a/lisp/mouse.el
+++ b/lisp/mouse.el
@@ -409,11 +409,6 @@ MODE-LINE-P non-nil means dragging a mode line; nil means a header line."
409 should-enlarge-minibuffer event mouse y top bot edges wconfig growth) 409 should-enlarge-minibuffer event mouse y top bot edges wconfig growth)
410 (track-mouse 410 (track-mouse
411 (progn 411 (progn
412 ;; enlarge-window only works on the selected window, so
413 ;; we must select the window where the start event originated.
414 ;; unwind-protect will restore the old selected window later.
415 (select-window start-event-window)
416
417 ;; if this is the bottommost ordinary window, then to 412 ;; if this is the bottommost ordinary window, then to
418 ;; move its modeline the minibuffer must be enlarged. 413 ;; move its modeline the minibuffer must be enlarged.
419 (setq should-enlarge-minibuffer 414 (setq should-enlarge-minibuffer
@@ -421,7 +416,7 @@ MODE-LINE-P non-nil means dragging a mode line; nil means a header line."
421 mode-line-p 416 mode-line-p
422 (not (one-window-p t)) 417 (not (one-window-p t))
423 (= (nth 1 (window-edges minibuffer)) 418 (= (nth 1 (window-edges minibuffer))
424 (nth 3 (window-edges))))) 419 (nth 3 (window-edges start-event-window)))))
425 420
426 ;; loop reading events and sampling the position of 421 ;; loop reading events and sampling the position of
427 ;; the mouse. 422 ;; the mouse.
@@ -459,7 +454,7 @@ MODE-LINE-P non-nil means dragging a mode line; nil means a header line."
459 454
460 (t 455 (t
461 (setq y (cdr (cdr mouse)) 456 (setq y (cdr (cdr mouse))
462 edges (window-edges) 457 edges (window-edges start-event-window)
463 top (nth 1 edges) 458 top (nth 1 edges)
464 bot (nth 3 edges)) 459 bot (nth 3 edges))
465 460
@@ -572,10 +567,6 @@ resized by dragging their header-line."
572 (error "Attempt to drag leftmost scrollbar"))) 567 (error "Attempt to drag leftmost scrollbar")))
573 (track-mouse 568 (track-mouse
574 (progn 569 (progn
575 ;; enlarge-window only works on the selected window, so
576 ;; we must select the window where the start event originated.
577 ;; unwind-protect will restore the old selected window later.
578 (select-window start-event-window)
579 ;; loop reading events and sampling the position of 570 ;; loop reading events and sampling the position of
580 ;; the mouse. 571 ;; the mouse.
581 (while (not done) 572 (while (not done)
@@ -611,9 +602,9 @@ resized by dragging their header-line."
611 ;; If the scroll bar is on the window's left, 602 ;; If the scroll bar is on the window's left,
612 ;; adjust the window on the left. 603 ;; adjust the window on the left.
613 (if (eq which-side 'right) 604 (if (eq which-side 'right)
614 (selected-window) 605 start-event-window
615 (mouse-drag-vertical-line-rightward-window 606 (mouse-drag-vertical-line-rightward-window
616 (selected-window))))) 607 start-event-window))))
617 (setq x (- (car (cdr mouse)) 608 (setq x (- (car (cdr mouse))
618 (if (eq which-side 'right) 0 2)) 609 (if (eq which-side 'right) 0 2))
619 edges (window-edges window) 610 edges (window-edges window)
@@ -1061,7 +1052,6 @@ should only be used by mouse-drag-region."
1061 (not (eq mouse-1-click-follows-link 'double)) 1052 (not (eq mouse-1-click-follows-link 'double))
1062 (= click-count 0) 1053 (= click-count 0)
1063 (= (event-click-count event) 1) 1054 (= (event-click-count event) 1)
1064 (not (input-pending-p))
1065 (or (not (integerp mouse-1-click-follows-link)) 1055 (or (not (integerp mouse-1-click-follows-link))
1066 (let ((t0 (posn-timestamp (event-start start-event))) 1056 (let ((t0 (posn-timestamp (event-start start-event)))
1067 (t1 (posn-timestamp (event-end event)))) 1057 (t1 (posn-timestamp (event-end event))))
diff --git a/lisp/net/ange-ftp.el b/lisp/net/ange-ftp.el
index 08efbb1e107..ec76279c642 100644
--- a/lisp/net/ange-ftp.el
+++ b/lisp/net/ange-ftp.el
@@ -1005,7 +1005,7 @@ Don't use any other value."
1005 (const :tag "Allow" 1))) 1005 (const :tag "Allow" 1)))
1006 1006
1007(defcustom ange-ftp-try-passive-mode nil 1007(defcustom ange-ftp-try-passive-mode nil
1008 "It t, try to use passive mode in ftp, if the client program supports it." 1008 "If t, try to use passive mode in ftp, if the client program supports it."
1009 :group 'ange-ftp 1009 :group 'ange-ftp
1010 :type 'boolean 1010 :type 'boolean
1011 :version "21.1") 1011 :version "21.1")
diff --git a/lisp/net/rcirc.el b/lisp/net/rcirc.el
index ac2c886a976..dc346695ce2 100644
--- a/lisp/net/rcirc.el
+++ b/lisp/net/rcirc.el
@@ -312,9 +312,8 @@ and the cdr part is used for encoding."
312 "List of urls seen in the current buffer.") 312 "List of urls seen in the current buffer.")
313(put 'rcirc-urls 'permanent-local t) 313(put 'rcirc-urls 'permanent-local t)
314 314
315(defvar rcirc-keepalive-seconds 60 315(defvar rcirc-timeout-seconds 60
316 "Number of seconds between keepalive pings. 316 "Kill connection after this many seconds if there is no activity.")
317If nil, do not send keepalive pings.")
318 317
319(defconst rcirc-id-string (concat "rcirc on GNU Emacs " emacs-version)) 318(defconst rcirc-id-string (concat "rcirc on GNU Emacs " emacs-version))
320 319
@@ -357,7 +356,12 @@ If ARG is non-nil, prompt for a server to connect to."
357(defvar rcirc-topic nil) 356(defvar rcirc-topic nil)
358(defvar rcirc-keepalive-timer nil) 357(defvar rcirc-keepalive-timer nil)
359(defvar rcirc-last-server-message-time nil) 358(defvar rcirc-last-server-message-time nil)
360(defvar rcirc-server nil) 359(defvar rcirc-server nil) ; server provided by server
360(defvar rcirc-server-name nil) ; server name given by 001 response
361(defvar rcirc-timeout-timer nil)
362(defvar rcirc-user-disconnect nil)
363(defvar rcirc-connecting nil)
364(defvar rcirc-process nil)
361 365
362;;;###autoload 366;;;###autoload
363(defun rcirc-connect (&optional server port nick user-name full-name startup-channels) 367(defun rcirc-connect (&optional server port nick user-name full-name startup-channels)
@@ -374,7 +378,7 @@ If ARG is non-nil, prompt for a server to connect to."
374 (user-name (or user-name rcirc-default-user-name)) 378 (user-name (or user-name rcirc-default-user-name))
375 (full-name (or full-name rcirc-default-user-full-name)) 379 (full-name (or full-name rcirc-default-user-full-name))
376 (startup-channels startup-channels) 380 (startup-channels startup-channels)
377 (process (open-network-stream server nil server port-number))) 381 (process (make-network-process :name server :host server :service port-number)))
378 ;; set up process 382 ;; set up process
379 (set-process-coding-system process 'raw-text 'raw-text) 383 (set-process-coding-system process 'raw-text 'raw-text)
380 (switch-to-buffer (rcirc-generate-new-buffer-name process nil)) 384 (switch-to-buffer (rcirc-generate-new-buffer-name process nil))
@@ -382,8 +386,12 @@ If ARG is non-nil, prompt for a server to connect to."
382 (rcirc-mode process nil) 386 (rcirc-mode process nil)
383 (set-process-sentinel process 'rcirc-sentinel) 387 (set-process-sentinel process 'rcirc-sentinel)
384 (set-process-filter process 'rcirc-filter) 388 (set-process-filter process 'rcirc-filter)
389 (make-local-variable 'rcirc-process)
390 (setq rcirc-process process)
385 (make-local-variable 'rcirc-server) 391 (make-local-variable 'rcirc-server)
386 (setq rcirc-server server) 392 (setq rcirc-server server)
393 (make-local-variable 'rcirc-server-name)
394 (setq rcirc-server-name server) ; update when we get 001 response
387 (make-local-variable 'rcirc-buffer-alist) 395 (make-local-variable 'rcirc-buffer-alist)
388 (setq rcirc-buffer-alist nil) 396 (setq rcirc-buffer-alist nil)
389 (make-local-variable 'rcirc-nick-table) 397 (make-local-variable 'rcirc-nick-table)
@@ -396,6 +404,12 @@ If ARG is non-nil, prompt for a server to connect to."
396 (setq rcirc-startup-channels startup-channels) 404 (setq rcirc-startup-channels startup-channels)
397 (make-local-variable 'rcirc-last-server-message-time) 405 (make-local-variable 'rcirc-last-server-message-time)
398 (setq rcirc-last-server-message-time (current-time)) 406 (setq rcirc-last-server-message-time (current-time))
407 (make-local-variable 'rcirc-timeout-timer)
408 (setq rcirc-timeout-timer nil)
409 (make-local-variable 'rcirc-user-disconnect)
410 (setq rcirc-user-disconnect nil)
411 (make-local-variable 'rcirc-connecting)
412 (setq rcirc-connecting t)
399 413
400 ;; identify 414 ;; identify
401 (rcirc-send-string process (concat "NICK " nick)) 415 (rcirc-send-string process (concat "NICK " nick))
@@ -404,10 +418,9 @@ If ARG is non-nil, prompt for a server to connect to."
404 full-name)) 418 full-name))
405 419
406 ;; setup ping timer if necessary 420 ;; setup ping timer if necessary
407 (when rcirc-keepalive-seconds 421 (unless rcirc-keepalive-timer
408 (unless rcirc-keepalive-timer 422 (setq rcirc-keepalive-timer
409 (setq rcirc-keepalive-timer 423 (run-at-time 0 (/ rcirc-timeout-seconds 2) 'rcirc-keepalive)))
410 (run-at-time 0 rcirc-keepalive-seconds 'rcirc-keepalive))))
411 424
412 (message "Connecting to %s...done" server) 425 (message "Connecting to %s...done" server)
413 426
@@ -430,12 +443,11 @@ Kill processes that have not received a server message since the
430last ping." 443last ping."
431 (if (rcirc-process-list) 444 (if (rcirc-process-list)
432 (mapc (lambda (process) 445 (mapc (lambda (process)
433 (with-rcirc-process-buffer process 446 (with-rcirc-process-buffer process
434 (if (> (cadr (time-since rcirc-last-server-message-time)) 447 (when (not rcirc-connecting)
435 rcirc-keepalive-seconds) 448 (rcirc-send-string process (concat "PING " (rcirc-server-name process))))))
436 (kill-process process)
437 (rcirc-send-string process (concat "PING " rcirc-server)))))
438 (rcirc-process-list)) 449 (rcirc-process-list))
450 ;; no processes, clean up timer
439 (cancel-timer rcirc-keepalive-timer) 451 (cancel-timer rcirc-keepalive-timer)
440 (setq rcirc-keepalive-timer nil))) 452 (setq rcirc-keepalive-timer nil)))
441 453
@@ -472,12 +484,12 @@ Functions are called with PROCESS and SENTINEL arguments.")
472 (format "%s: %s (%S)" 484 (format "%s: %s (%S)"
473 (process-name process) 485 (process-name process)
474 sentinel 486 sentinel
475 (process-status process)) t) 487 (process-status process)) (not rcirc-target))
476 ;; remove the prompt from buffers 488 ;; remove the prompt from buffers
477 (let ((inhibit-read-only t)) 489 (let ((inhibit-read-only t))
478 (delete-region rcirc-prompt-start-marker 490 (delete-region rcirc-prompt-start-marker
479 rcirc-prompt-end-marker))))) 491 rcirc-prompt-end-marker))))
480 (run-hook-with-args 'rcirc-sentinel-hooks process sentinel))) 492 (run-hook-with-args 'rcirc-sentinel-hooks process sentinel))))
481 493
482(defun rcirc-process-list () 494(defun rcirc-process-list ()
483 "Return a list of rcirc processes." 495 "Return a list of rcirc processes."
@@ -496,6 +508,7 @@ Function is called with PROCESS, COMMAND, SENDER, ARGS and LINE.")
496(defun rcirc-filter (process output) 508(defun rcirc-filter (process output)
497 "Called when PROCESS receives OUTPUT." 509 "Called when PROCESS receives OUTPUT."
498 (rcirc-debug process output) 510 (rcirc-debug process output)
511 (rcirc-reschedule-timeout process)
499 (with-rcirc-process-buffer process 512 (with-rcirc-process-buffer process
500 (setq rcirc-last-server-message-time (current-time)) 513 (setq rcirc-last-server-message-time (current-time))
501 (setq rcirc-process-output (concat rcirc-process-output output)) 514 (setq rcirc-process-output (concat rcirc-process-output output))
@@ -506,6 +519,19 @@ Function is called with PROCESS, COMMAND, SENDER, ARGS and LINE.")
506 (split-string rcirc-process-output "[\n\r]" t)) 519 (split-string rcirc-process-output "[\n\r]" t))
507 (setq rcirc-process-output nil)))) 520 (setq rcirc-process-output nil))))
508 521
522(defun rcirc-reschedule-timeout (process)
523 (with-rcirc-process-buffer process
524 (when (not rcirc-connecting)
525 (with-rcirc-process-buffer process
526 (when rcirc-timeout-timer (cancel-timer rcirc-timeout-timer))
527 (setq rcirc-timeout-timer (run-at-time rcirc-timeout-seconds nil
528 'rcirc-delete-process
529 process))))))
530
531(defun rcirc-delete-process (process)
532 (message "delete process %S" process)
533 (delete-process process))
534
509(defvar rcirc-trap-errors-flag t) 535(defvar rcirc-trap-errors-flag t)
510(defun rcirc-process-server-response (process text) 536(defun rcirc-process-server-response (process text)
511 (if rcirc-trap-errors-flag 537 (if rcirc-trap-errors-flag
@@ -557,15 +583,16 @@ Function is called with PROCESS, COMMAND, SENDER, ARGS and LINE.")
557(defun rcirc-buffer-process (&optional buffer) 583(defun rcirc-buffer-process (&optional buffer)
558 "Return the process associated with channel BUFFER. 584 "Return the process associated with channel BUFFER.
559With no argument or nil as argument, use the current buffer." 585With no argument or nil as argument, use the current buffer."
560 (get-buffer-process (if buffer 586 (or (get-buffer-process (if buffer
561 (with-current-buffer buffer 587 (with-current-buffer buffer
562 rcirc-server-buffer) 588 rcirc-server-buffer)
563 rcirc-server-buffer))) 589 rcirc-server-buffer))
590 rcirc-process))
564 591
565(defun rcirc-server-name (process) 592(defun rcirc-server-name (process)
566 "Return PROCESS server name, given by the 001 response." 593 "Return PROCESS server name, given by the 001 response."
567 (with-rcirc-process-buffer process 594 (with-rcirc-process-buffer process
568 (or rcirc-server rcirc-default-server))) 595 (or rcirc-server-name rcirc-default-server)))
569 596
570(defun rcirc-nick (process) 597(defun rcirc-nick (process)
571 "Return PROCESS nick." 598 "Return PROCESS nick."
@@ -790,7 +817,7 @@ If ALL is non-nil, update prompts in all IRC buffers."
790 (setq prompt 817 (setq prompt
791 (replace-regexp-in-string (car rep) (cdr rep) prompt))) 818 (replace-regexp-in-string (car rep) (cdr rep) prompt)))
792 (list (cons "%n" (rcirc-buffer-nick)) 819 (list (cons "%n" (rcirc-buffer-nick))
793 (cons "%s" (with-rcirc-server-buffer (or rcirc-server ""))) 820 (cons "%s" (with-rcirc-server-buffer rcirc-server-name))
794 (cons "%t" (or rcirc-target "")))) 821 (cons "%t" (or rcirc-target ""))))
795 (save-excursion 822 (save-excursion
796 (delete-region rcirc-prompt-start-marker rcirc-prompt-end-marker) 823 (delete-region rcirc-prompt-start-marker rcirc-prompt-end-marker)
@@ -1079,9 +1106,7 @@ is found by looking up RESPONSE in `rcirc-response-formats'."
1079 "%") 1106 "%")
1080 ((or (eq key ?n) (eq key ?N)) 1107 ((or (eq key ?n) (eq key ?N))
1081 ;; %n/%N -- nick 1108 ;; %n/%N -- nick
1082 (let ((nick (concat (if (string= (with-rcirc-process-buffer 1109 (let ((nick (concat (if (string= (rcirc-server-name process)
1083 process
1084 rcirc-server)
1085 sender) 1110 sender)
1086 "" 1111 ""
1087 sender) 1112 sender)
@@ -1302,19 +1327,15 @@ record activity."
1302 (rcirc-cmd-join channel process))))) 1327 (rcirc-cmd-join channel process)))))
1303 1328
1304;;; nick management 1329;;; nick management
1330(defvar rcirc-nick-prefix-chars "~&@%+")
1305(defun rcirc-user-nick (user) 1331(defun rcirc-user-nick (user)
1306 "Return the nick from USER. Remove any non-nick junk." 1332 "Return the nick from USER. Remove any non-nick junk."
1307 (save-match-data 1333 (save-match-data
1308 (if (string-match "^[@%+]?\\([^! ]+\\)!?" (or user "")) 1334 (if (string-match (concat "^[" rcirc-nick-prefix-chars
1335 "]?\\([^! ]+\\)!?") (or user ""))
1309 (match-string 1 user) 1336 (match-string 1 user)
1310 user))) 1337 user)))
1311 1338
1312(defun rcirc-user-non-nick (user)
1313 "Return the non-nick portion of USER."
1314 (if (string-match "^[@+]?[^! ]+!?\\(.*\\)" (or user ""))
1315 (match-string 1 user)
1316 user))
1317
1318(defun rcirc-nick-channels (process nick) 1339(defun rcirc-nick-channels (process nick)
1319 "Return list of channels for NICK." 1340 "Return list of channels for NICK."
1320 (with-rcirc-process-buffer process 1341 (with-rcirc-process-buffer process
@@ -2009,7 +2030,9 @@ in this buffer.")
2009 (rcirc-handler-generic process "001" sender args text) 2030 (rcirc-handler-generic process "001" sender args text)
2010 ;; set the real server name 2031 ;; set the real server name
2011 (with-rcirc-process-buffer process 2032 (with-rcirc-process-buffer process
2012 (setq rcirc-server sender) 2033 (setq rcirc-connecting nil)
2034 (rcirc-reschedule-timeout process)
2035 (setq rcirc-server-name sender)
2013 (setq rcirc-nick (car args)) 2036 (setq rcirc-nick (car args))
2014 (rcirc-update-prompt) 2037 (rcirc-update-prompt)
2015 (when rcirc-auto-authenticate-flag (rcirc-authenticate)) 2038 (when rcirc-auto-authenticate-flag (rcirc-authenticate))
@@ -2419,7 +2442,8 @@ Passwords are stored in `rcirc-authinfo' (which see)."
2419 :group 'rcirc-faces) 2442 :group 'rcirc-faces)
2420 2443
2421(defface rcirc-track-nick 2444(defface rcirc-track-nick
2422 '((t (:inverse-video t))) 2445 '((((type tty)) (:inherit default))
2446 (t (:inverse-video t)))
2423 "The face used in the mode-line when your nick is mentioned." 2447 "The face used in the mode-line when your nick is mentioned."
2424 :group 'rcirc-faces) 2448 :group 'rcirc-faces)
2425 2449
diff --git a/lisp/net/tls.el b/lisp/net/tls.el
index 3a9f19c819c..9de74ca19d4 100644
--- a/lisp/net/tls.el
+++ b/lisp/net/tls.el
@@ -60,7 +60,7 @@
60 "openssl s_client -connect %h:%p -no_ssl2") 60 "openssl s_client -connect %h:%p -no_ssl2")
61 "List of strings containing commands to start TLS stream to a host. 61 "List of strings containing commands to start TLS stream to a host.
62Each entry in the list is tried until a connection is successful. 62Each entry in the list is tried until a connection is successful.
63%s is replaced with server hostname, %p with port to connect to. 63%h is replaced with server hostname, %p with port to connect to.
64The program should read input on stdin and write output to 64The program should read input on stdin and write output to
65stdout. Also see `tls-success' for what the program should output 65stdout. Also see `tls-success' for what the program should output
66after successful negotiation." 66after successful negotiation."
@@ -146,8 +146,8 @@ Fourth arg PORT is an integer specifying a port to connect to."
146 (set-buffer buffer) ;; XXX "blue moon" nntp.el bug 146 (set-buffer buffer) ;; XXX "blue moon" nntp.el bug
147 (goto-char (point-min)) 147 (goto-char (point-min))
148 (not (setq done (re-search-forward tls-success nil t))))) 148 (not (setq done (re-search-forward tls-success nil t)))))
149 (accept-process-output process 1) 149 (unless (accept-process-output process 1)
150 (sit-for 1)) 150 (sit-for 1)))
151 (message "Opening TLS connection with `%s'...%s" cmd 151 (message "Opening TLS connection with `%s'...%s" cmd
152 (if done "done" "failed")) 152 (if done "done" "failed"))
153 (if done 153 (if done
diff --git a/lisp/net/tramp-smb.el b/lisp/net/tramp-smb.el
index dfe6216043e..5d5d441193d 100644
--- a/lisp/net/tramp-smb.el
+++ b/lisp/net/tramp-smb.el
@@ -384,7 +384,7 @@ KEEP-DATE is not handled in case NEWNAME resides on an SMB server."
384 (save-excursion 384 (save-excursion
385 (let ((share (tramp-smb-get-share localname)) 385 (let ((share (tramp-smb-get-share localname))
386 (file (tramp-smb-get-localname localname t)) 386 (file (tramp-smb-get-localname localname t))
387 (tmpfil (tramp-make-temp-file))) 387 (tmpfil (tramp-make-temp-file filename)))
388 (unless (file-exists-p filename) 388 (unless (file-exists-p filename)
389 (error "Cannot make local copy of non-existing file `%s'" filename)) 389 (error "Cannot make local copy of non-existing file `%s'" filename))
390 (tramp-message-for-buffer 390 (tramp-message-for-buffer
@@ -595,7 +595,7 @@ Catches errors for shares like \"C$/\", which are common in Microsoft Windows."
595 (curbuf (current-buffer)) 595 (curbuf (current-buffer))
596 tmpfil) 596 tmpfil)
597 ;; Write region into a tmp file. 597 ;; Write region into a tmp file.
598 (setq tmpfil (tramp-make-temp-file)) 598 (setq tmpfil (tramp-make-temp-file filename))
599 ;; We say `no-message' here because we don't want the visited file 599 ;; We say `no-message' here because we don't want the visited file
600 ;; modtime data to be clobbered from the temp file. We call 600 ;; modtime data to be clobbered from the temp file. We call
601 ;; `set-visited-file-modtime' ourselves later on. 601 ;; `set-visited-file-modtime' ourselves later on.
diff --git a/lisp/net/tramp.el b/lisp/net/tramp.el
index 602c6d25eaa..7ff9b2d956b 100644
--- a/lisp/net/tramp.el
+++ b/lisp/net/tramp.el
@@ -3771,10 +3771,12 @@ This will break if COMMAND prints a newline, followed by the value of
3771 3771
3772;; File Editing. 3772;; File Editing.
3773 3773
3774(defsubst tramp-make-temp-file () 3774(defsubst tramp-make-temp-file (filename)
3775 (funcall (if (fboundp 'make-temp-file) 'make-temp-file 'make-temp-name) 3775 (concat
3776 (expand-file-name tramp-temp-name-prefix 3776 (funcall (if (fboundp 'make-temp-file) 'make-temp-file 'make-temp-name)
3777 (tramp-temporary-file-directory)))) 3777 (expand-file-name tramp-temp-name-prefix
3778 (tramp-temporary-file-directory)))
3779 (file-name-extension filename t)))
3778 3780
3779(defun tramp-handle-file-local-copy (filename) 3781(defun tramp-handle-file-local-copy (filename)
3780 "Like `file-local-copy' for tramp files." 3782 "Like `file-local-copy' for tramp files."
@@ -3794,7 +3796,7 @@ This will break if COMMAND prints a newline, followed by the value of
3794 (unless (file-exists-p filename) 3796 (unless (file-exists-p filename)
3795 (error "Cannot make local copy of non-existing file `%s'" 3797 (error "Cannot make local copy of non-existing file `%s'"
3796 filename)) 3798 filename))
3797 (setq tmpfil (tramp-make-temp-file)) 3799 (setq tmpfil (tramp-make-temp-file filename))
3798 3800
3799 (cond ((tramp-method-out-of-band-p multi-method method user host) 3801 (cond ((tramp-method-out-of-band-p multi-method method user host)
3800 ;; `copy-file' handles out-of-band methods 3802 ;; `copy-file' handles out-of-band methods
@@ -3846,7 +3848,7 @@ This will break if COMMAND prints a newline, followed by the value of
3846 (kill-buffer tmpbuf)) 3848 (kill-buffer tmpbuf))
3847 ;; If tramp-decoding-function is not defined for this 3849 ;; If tramp-decoding-function is not defined for this
3848 ;; method, we invoke tramp-decoding-command instead. 3850 ;; method, we invoke tramp-decoding-command instead.
3849 (let ((tmpfil2 (tramp-make-temp-file))) 3851 (let ((tmpfil2 (tramp-make-temp-file filename)))
3850 (write-region (point-min) (point-max) tmpfil2) 3852 (write-region (point-min) (point-max) tmpfil2)
3851 (tramp-message 3853 (tramp-message
3852 6 "Decoding remote file %s with command %s..." 3854 6 "Decoding remote file %s with command %s..."
@@ -4053,7 +4055,7 @@ Returns a file name in `tramp-auto-save-directory' for autosaving this file."
4053 ;; Write region into a tmp file. This isn't really needed if we 4055 ;; Write region into a tmp file. This isn't really needed if we
4054 ;; use an encoding function, but currently we use it always 4056 ;; use an encoding function, but currently we use it always
4055 ;; because this makes the logic simpler. 4057 ;; because this makes the logic simpler.
4056 (setq tmpfil (tramp-make-temp-file)) 4058 (setq tmpfil (tramp-make-temp-file filename))
4057 ;; Set current buffer. If connection wasn't open, `file-modes' has 4059 ;; Set current buffer. If connection wasn't open, `file-modes' has
4058 ;; changed it accidently. 4060 ;; changed it accidently.
4059 (set-buffer curbuf) 4061 (set-buffer curbuf)
diff --git a/lisp/pcomplete.el b/lisp/pcomplete.el
index 1ca617a08a5..c4840059f64 100644
--- a/lisp/pcomplete.el
+++ b/lisp/pcomplete.el
@@ -974,18 +974,20 @@ Typing SPC flushes the help buffer."
974 (while (with-current-buffer (get-buffer "*Completions*") 974 (while (with-current-buffer (get-buffer "*Completions*")
975 (setq event (pcomplete-read-event))) 975 (setq event (pcomplete-read-event)))
976 (cond 976 (cond
977 ((event-matches-key-specifier-p event ? ) 977 ((event-matches-key-specifier-p event ?\s)
978 (set-window-configuration pcomplete-last-window-config) 978 (set-window-configuration pcomplete-last-window-config)
979 (setq pcomplete-last-window-config nil) 979 (setq pcomplete-last-window-config nil)
980 (throw 'done nil)) 980 (throw 'done nil))
981 ((or (event-matches-key-specifier-p event 'tab) 981 ((or (event-matches-key-specifier-p event 'tab)
982 ;; Needed on a terminal 982 ;; Needed on a terminal
983 (event-matches-key-specifier-p event 9)) 983 (event-matches-key-specifier-p event 9))
984 (save-selected-window 984 (let ((win (or (get-buffer-window "*Completions*" 0)
985 (select-window (get-buffer-window "*Completions*")) 985 (display-buffer "*Completions*"
986 (if (pos-visible-in-window-p (point-max)) 986 'not-this-window))))
987 (goto-char (point-min)) 987 (with-selected-window win
988 (scroll-up))) 988 (if (pos-visible-in-window-p (point-max))
989 (goto-char (point-min))
990 (scroll-up))))
989 (message "")) 991 (message ""))
990 (t 992 (t
991 (setq unread-command-events (list event)) 993 (setq unread-command-events (list event))
diff --git a/lisp/progmodes/cc-engine.el b/lisp/progmodes/cc-engine.el
index f69382c9d70..a901ee07454 100644
--- a/lisp/progmodes/cc-engine.el
+++ b/lisp/progmodes/cc-engine.el
@@ -1912,6 +1912,26 @@ comment at the start of cc-engine.el for more info."
1912 ))) 1912 )))
1913 1913
1914 1914
1915;; Other whitespace tools
1916(defun c-partial-ws-p (beg end)
1917 ;; Is the region (beg end) WS, and is there WS (or BOB/EOB) next to the
1918 ;; region? This is a "heuristic" function. .....
1919 ;;
1920 ;; The motivation for the second bit is to check whether the removal of this
1921 ;; space is to check whether removing this region would coalesce two
1922 ;; symbols.
1923 ;;
1924 ;; FIXME!!! This function doesn't check virtual semicolons in any way. Be
1925 ;; careful about using this function for, e.g. AWK. (2007/3/7)
1926 (save-excursion
1927 (let ((end+1 (min (1+ end) (point-max))))
1928 (or (progn (goto-char (max (point-min) (1- beg)))
1929 (c-skip-ws-forward end)
1930 (eq (point) end))
1931 (progn (goto-char beg)
1932 (c-skip-ws-forward end+1)
1933 (eq (point) end+1))))))
1934
1915;; A system for finding noteworthy parens before the point. 1935;; A system for finding noteworthy parens before the point.
1916 1936
1917(defvar c-state-cache nil) 1937(defvar c-state-cache nil)
@@ -2491,24 +2511,25 @@ comment at the start of cc-engine.el for more info."
2491 ;; Move to the beginning of the current token. Do not move if not 2511 ;; Move to the beginning of the current token. Do not move if not
2492 ;; in the middle of one. BACK-LIMIT may be used to bound the 2512 ;; in the middle of one. BACK-LIMIT may be used to bound the
2493 ;; backward search; if given it's assumed to be at the boundary 2513 ;; backward search; if given it's assumed to be at the boundary
2494 ;; between two tokens. 2514 ;; between two tokens. Return non-nil if the point is move, nil
2515 ;; otherwise.
2495 ;; 2516 ;;
2496 ;; This function might do hidden buffer changes. 2517 ;; This function might do hidden buffer changes.
2497 (if (looking-at "\\w\\|\\s_")
2498 (skip-syntax-backward "w_" back-limit)
2499 (let ((start (point))) 2518 (let ((start (point)))
2500 (when (< (skip-syntax-backward ".()" back-limit) 0) 2519 (if (looking-at "\\w\\|\\s_")
2501 (while (let ((pos (or (and (looking-at c-nonsymbol-token-regexp) 2520 (skip-syntax-backward "w_" back-limit)
2502 (match-end 0)) 2521 (when (< (skip-syntax-backward ".()" back-limit) 0)
2503 ;; `c-nonsymbol-token-regexp' should always match 2522 (while (let ((pos (or (and (looking-at c-nonsymbol-token-regexp)
2504 ;; since we've skipped backward over punctuator 2523 (match-end 0))
2505 ;; or paren syntax, but consume one char in case 2524 ;; `c-nonsymbol-token-regexp' should always match
2506 ;; it doesn't so that we don't leave point before 2525 ;; since we've skipped backward over punctuator
2507 ;; some earlier incorrect token. 2526 ;; or paren syntax, but consume one char in case
2508 (1+ (point))))) 2527 ;; it doesn't so that we don't leave point before
2509 (if (<= pos start) 2528 ;; some earlier incorrect token.
2510 (goto-char pos)) 2529 (1+ (point)))))
2511 (< pos start))))))) 2530 (if (<= pos start)
2531 (goto-char pos))))))
2532 (< (point) start)))
2512 2533
2513(defun c-end-of-current-token (&optional back-limit) 2534(defun c-end-of-current-token (&optional back-limit)
2514 ;; Move to the end of the current token. Do not move if not in the 2535 ;; Move to the end of the current token. Do not move if not in the
@@ -3957,6 +3978,9 @@ comment at the start of cc-engine.el for more info."
3957;; file, and we only use this as a last resort in ambiguous cases (see 3978;; file, and we only use this as a last resort in ambiguous cases (see
3958;; `c-forward-decl-or-cast-1'). 3979;; `c-forward-decl-or-cast-1').
3959;; 3980;;
3981;; Not every type need be in this cache. However, things which have
3982;; ceased to be types must be removed from it.
3983;;
3960;; Template types in C++ are added here too but with the template 3984;; Template types in C++ are added here too but with the template
3961;; arglist replaced with "<>" in references or "<" for the one in the 3985;; arglist replaced with "<>" in references or "<" for the one in the
3962;; primary type. E.g. the type "Foo<A,B>::Bar<C>" is stored as 3986;; primary type. E.g. the type "Foo<A,B>::Bar<C>" is stored as
@@ -3990,6 +4014,10 @@ comment at the start of cc-engine.el for more info."
3990 (unintern (substring type 0 -1) c-found-types) 4014 (unintern (substring type 0 -1) c-found-types)
3991 (intern type c-found-types)))) 4015 (intern type c-found-types))))
3992 4016
4017(defun c-unfind-type (name)
4018 ;; Remove the "NAME" from c-found-types, if present.
4019 (unintern name c-found-types))
4020
3993(defsubst c-check-type (from to) 4021(defsubst c-check-type (from to)
3994 ;; Return non-nil if the given region contains a type in 4022 ;; Return non-nil if the given region contains a type in
3995 ;; `c-found-types'. 4023 ;; `c-found-types'.
@@ -4008,6 +4036,48 @@ comment at the start of cc-engine.el for more info."
4008 c-found-types) 4036 c-found-types)
4009 (sort type-list 'string-lessp))) 4037 (sort type-list 'string-lessp)))
4010 4038
4039(defun c-trim-found-types (beg end old-len)
4040 ;; An after change function which, in conjunction with the info in
4041 ;; c-maybe-stale-found-type (set in c-before-change), removes a type
4042 ;; from `c-found-types', should this type have become stale. For
4043 ;; example, this happens to "foo" when "foo \n bar();" becomes
4044 ;; "foo(); \n bar();". Such stale types, if not removed, foul up
4045 ;; the fontification.
4046 ;;
4047 ;; Have we, perhaps, added non-ws characters to the front/back of a found
4048 ;; type?
4049 (when (> end beg)
4050 (save-excursion
4051 (when (< end (point-max))
4052 (goto-char end)
4053 (if (and (c-beginning-of-current-token) ; only moves when we started in the middle
4054 (progn (goto-char end)
4055 (c-end-of-current-token)))
4056 (c-unfind-type (buffer-substring-no-properties
4057 end (point)))))
4058 (when (> beg (point-min))
4059 (goto-char beg)
4060 (if (and (c-end-of-current-token) ; only moves when we started in the middle
4061 (progn (goto-char beg)
4062 (c-beginning-of-current-token)))
4063 (c-unfind-type (buffer-substring-no-properties
4064 (point) beg))))))
4065
4066 (if c-maybe-stale-found-type ; e.g. (c-decl-id-start "foo" 97 107 " (* ooka) " "o")
4067 (cond
4068 ;; Changing the amount of (already existing) whitespace - don't do anything.
4069 ((and (c-partial-ws-p beg end)
4070 (or (= beg end) ; removal of WS
4071 ; (string-match "\\s *\\'" (nth 5 c-maybe-stale-found-type))
4072 (string-match "^[ \t\n\r\f\v]*$" (nth 5 c-maybe-stale-found-type)))))
4073
4074 ;; The syntactic relationship which defined a "found type" has been
4075 ;; destroyed.
4076 ((eq (car c-maybe-stale-found-type) 'c-decl-id-start)
4077 (c-unfind-type (cadr c-maybe-stale-found-type)))
4078;; ((eq (car c-maybe-stale-found-type) 'c-decl-type-start) FIXME!!!
4079 )))
4080
4011 4081
4012;; Handling of small scale constructs like types and names. 4082;; Handling of small scale constructs like types and names.
4013 4083
diff --git a/lisp/progmodes/cc-mode.el b/lisp/progmodes/cc-mode.el
index e2891bde98d..1407b497305 100644
--- a/lisp/progmodes/cc-mode.el
+++ b/lisp/progmodes/cc-mode.el
@@ -412,8 +412,143 @@ preferably use the `c-mode-menu' language constant directly."
412;; temporary changes in some font lock support modes, causing extra 412;; temporary changes in some font lock support modes, causing extra
413;; unnecessary work and font lock glitches due to interactions between 413;; unnecessary work and font lock glitches due to interactions between
414;; various text properties. 414;; various text properties.
415 415;;
416(defun c-after-change (beg end len) 416;; (2007-02-12): The macro `combine-after-change-calls' ISN'T used any
417;; more.
418
419(defun c-unfind-enclosing-token (pos)
420 ;; If POS is wholly inside a token, remove that id from
421 ;; `c-found-types', should it be present. Return t if we were in an
422 ;; id, else nil.
423 (save-excursion
424 (let ((tok-beg (progn (goto-char pos)
425 (and (c-beginning-of-current-token) (point))))
426 (tok-end (progn (goto-char pos)
427 (and (c-end-of-current-token) (point)))))
428 (when (and tok-beg tok-end)
429 (c-unfind-type (buffer-substring-no-properties tok-beg tok-end))
430 t))))
431
432(defun c-unfind-coalesced-tokens (beg end)
433 ;; unless the non-empty region (beg end) is entirely WS and there's at
434 ;; least one character of WS just before or after this region, remove
435 ;; the tokens which touch the region from `c-found-types' should they
436 ;; be present.
437 (or (c-partial-ws-p beg end)
438 (save-excursion
439 (progn
440 (goto-char beg)
441 (or (eq beg (point-min))
442 (c-skip-ws-backward (1- beg))
443 (/= (point) beg)
444 (= (c-backward-token-2) 1)
445 (c-unfind-type (buffer-substring-no-properties
446 (point) beg)))
447 (goto-char end)
448 (or (eq end (point-max))
449 (c-skip-ws-forward (1+ end))
450 (/= (point) end)
451 (progn (forward-char) (c-end-of-current-token) nil)
452 (c-unfind-type (buffer-substring-no-properties
453 end (point))))))))
454
455;; c-maybe-stale-found-type records a place near the region being
456;; changed where an element of `found-types' might become stale. It
457;; is set in c-before-change and is either nil, or has the form:
458;;
459;; (c-decl-id-start "foo" 97 107 " (* ooka) " "o"), where
460;;
461;; o - `c-decl-id-start' is the c-type text property value at buffer
462;; pos 96.
463;;
464;; o - 97 107 is the region potentially containing the stale type -
465;; this is delimited by a non-nil c-type text property at 96 and
466;; either another one or a ";", "{", or "}" at 107.
467;;
468;; o - " (* ooka) " is the (before change) buffer portion containing
469;; the suspect type (here "ooka").
470;;
471;; o - "o" is the buffer contents which is about to be deleted. This
472;; would be the empty string for an insertion.
473(defvar c-maybe-stale-found-type nil)
474(make-variable-buffer-local 'c-maybe-stale-found-type)
475
476(defun c-before-change (beg end)
477 ;; Function to be put on `before-change-function'. Currently
478 ;; (2007-02) it is used only to remove stale entries from the
479 ;; `c-found-types' cache, and to record entries which a
480 ;; `c-after-change' function might confirm as stale.
481 ;;
482 ;; Note that this function must be FAST rather than accurate. Note
483 ;; also that it only has any effect when font locking is enabled.
484 ;; We exploit this by checking for font-lock-*-face instead of doing
485 ;; rigourous syntactic analysis.
486
487 ;; If either change boundary is wholly inside an identifier, delete
488 ;; it/them from the cache. Don't worry about being inside a string
489 ;; or a comment - "wrongly" removing a symbol from `c-found-types'
490 ;; isn't critical.
491 (setq c-maybe-stale-found-type nil)
492 (save-restriction
493 (save-match-data
494 (widen)
495 (save-excursion
496 ;; Are we inserting/deleting stuff in the middle of an identifier?
497 (c-unfind-enclosing-token beg)
498 (c-unfind-enclosing-token end)
499 ;; Are we coalescing two tokens together, e.g. "fo o" -> "foo"?
500 (when (< beg end)
501 (c-unfind-coalesced-tokens beg end))
502 ;; Are we (potentially) disrupting the syntactic context which
503 ;; makes a type a type? E.g. by inserting stuff after "foo" in
504 ;; "foo bar;", or before "foo" in "typedef foo *bar;"?
505 ;;
506 ;; We search for appropriate c-type properties "near" the change.
507 ;; First, find an appropriate boundary for this property search.
508 (let (lim
509 type type-pos
510 marked-id term-pos
511 (end1
512 (if (eq (get-text-property end 'face) 'font-lock-comment-face)
513 (previous-single-property-change end 'face)
514 end)))
515 (when (>= end1 beg) ; Don't hassle about changes entirely in comments.
516 ;; Find a limit for the search for a `c-type' property
517 (while
518 (and (/= (skip-chars-backward "^;{}") 0)
519 (> (point) (point-min))
520 (memq (c-get-char-property (1- (point)) 'face)
521 '(font-lock-comment-face font-lock-string-face))))
522 (setq lim (max (point-min) (1- (point))))
523
524 ;; Look for the latest `c-type' property before end1
525 (when (and (> end1 1)
526 (setq type-pos
527 (if (get-text-property (1- end1) 'c-type)
528 end1
529 (previous-single-property-change end1 'c-type nil lim))))
530 (setq type (get-text-property (max (1- type-pos) lim) 'c-type))
531
532 (when (memq type '(c-decl-id-start c-decl-type-start))
533 ;; Get the identifier, if any, that the property is on.
534 (goto-char (1- type-pos))
535 (setq marked-id
536 (when (looking-at "\\(\\sw\\|\\s_\\)")
537 (c-beginning-of-current-token)
538 (buffer-substring-no-properties (point) type-pos)))
539
540 (goto-char end1)
541 (skip-chars-forward "^;{}") ; FIXME!!! loop for comment, maybe
542 (setq lim (point))
543 (setq term-pos
544 (or (next-single-property-change end 'c-type nil lim) lim))
545 (setq c-maybe-stale-found-type
546 (list type marked-id
547 type-pos term-pos
548 (buffer-substring-no-properties type-pos term-pos)
549 (buffer-substring-no-properties beg end)))))))))))
550
551(defun c-after-change (beg end old-len)
417 ;; Function put on `after-change-functions' to adjust various caches 552 ;; Function put on `after-change-functions' to adjust various caches
418 ;; etc. Prefer speed to finesse here, since there will be an order 553 ;; etc. Prefer speed to finesse here, since there will be an order
419 ;; of magnitude more calls to this function than any of the 554 ;; of magnitude more calls to this function than any of the
@@ -441,6 +576,7 @@ preferably use the `c-mode-menu' language constant directly."
441 (when (> beg end) 576 (when (> beg end)
442 (setq beg end))) 577 (setq beg end)))
443 578
579 (c-trim-found-types beg end old-len) ; maybe we don't need all of these.
444 (c-invalidate-sws-region-after beg end) 580 (c-invalidate-sws-region-after beg end)
445 (c-invalidate-state-cache beg) 581 (c-invalidate-state-cache beg)
446 (c-invalidate-find-decl-cache beg) 582 (c-invalidate-find-decl-cache beg)
@@ -577,6 +713,8 @@ that requires a literal mode spec at compile time."
577 713
578 ;; Install the functions that ensure that various internal caches 714 ;; Install the functions that ensure that various internal caches
579 ;; don't become invalid due to buffer changes. 715 ;; don't become invalid due to buffer changes.
716 (make-local-hook 'before-change-functions)
717 (add-hook 'before-change-functions 'c-before-change nil t)
580 (make-local-hook 'after-change-functions) 718 (make-local-hook 'after-change-functions)
581 (add-hook 'after-change-functions 'c-after-change nil t)) 719 (add-hook 'after-change-functions 'c-after-change nil t))
582 720
diff --git a/lisp/progmodes/compile.el b/lisp/progmodes/compile.el
index 3039f614fb2..aa77caf0670 100644
--- a/lisp/progmodes/compile.el
+++ b/lisp/progmodes/compile.el
@@ -1862,17 +1862,7 @@ Pop up the buffer containing MARKER and scroll to MARKER if we ask the user."
1862 (let* ((name (read-file-name 1862 (let* ((name (read-file-name
1863 (format "Find this %s in (default %s): " 1863 (format "Find this %s in (default %s): "
1864 compilation-error filename) 1864 compilation-error filename)
1865 spec-dir filename t nil 1865 spec-dir filename t nil))
1866 ;; Try to make sure the user can only select
1867 ;; a valid answer. This predicate may be ignored,
1868 ;; tho, so we still have to double-check afterwards.
1869 ;; TODO: We should probably fix read-file-name so
1870 ;; that it never ignores this predicate, even when
1871 ;; using popup dialog boxes.
1872 (lambda (name)
1873 (if (file-directory-p name)
1874 (setq name (expand-file-name filename name)))
1875 (file-exists-p name))))
1876 (origname name)) 1866 (origname name))
1877 (cond 1867 (cond
1878 ((not (file-exists-p name)) 1868 ((not (file-exists-p name))
diff --git a/lisp/progmodes/cperl-mode.el b/lisp/progmodes/cperl-mode.el
index 29f4cc372d3..0b8287503f8 100644
--- a/lisp/progmodes/cperl-mode.el
+++ b/lisp/progmodes/cperl-mode.el
@@ -1795,8 +1795,8 @@ or as help on variables `cperl-tips', `cperl-problems',
1795 ((boundp 'compilation-error-regexp-alist);; xmeacs 19.x 1795 ((boundp 'compilation-error-regexp-alist);; xmeacs 19.x
1796 (make-local-variable 'compilation-error-regexp-alist) 1796 (make-local-variable 'compilation-error-regexp-alist)
1797 (set 'compilation-error-regexp-alist 1797 (set 'compilation-error-regexp-alist
1798 (cons cperl-compilation-error-regexp-alist 1798 (append cperl-compilation-error-regexp-alist
1799 (symbol-value 'compilation-error-regexp-alist))))) 1799 (symbol-value 'compilation-error-regexp-alist)))))
1800 (make-local-variable 'font-lock-defaults) 1800 (make-local-variable 'font-lock-defaults)
1801 (setq font-lock-defaults 1801 (setq font-lock-defaults
1802 (cond 1802 (cond
diff --git a/lisp/progmodes/grep.el b/lisp/progmodes/grep.el
index a0dd83fb974..fe2bbdec14e 100644
--- a/lisp/progmodes/grep.el
+++ b/lisp/progmodes/grep.el
@@ -157,7 +157,8 @@ The following place holders should be present in the string:
157 :type 'alist 157 :type 'alist
158 :group 'grep) 158 :group 'grep)
159 159
160(defcustom grep-find-ignored-directories '("CVS" ".svn" "{arch}" ".hg" "_darcs") 160(defcustom grep-find-ignored-directories '("CVS" ".svn" "{arch}" ".hg" "_darcs"
161 ".git" ".bzr")
161 "*List of names of sub-directories which `rgrep' shall not recurse into." 162 "*List of names of sub-directories which `rgrep' shall not recurse into."
162 :type '(repeat string) 163 :type '(repeat string)
163 :group 'grep) 164 :group 'grep)
diff --git a/lisp/progmodes/gud.el b/lisp/progmodes/gud.el
index 1662af1c924..8db7c28219e 100644
--- a/lisp/progmodes/gud.el
+++ b/lisp/progmodes/gud.el
@@ -690,7 +690,10 @@ session."
690 (buffer-name gud-comint-buffer) 690 (buffer-name gud-comint-buffer)
691 (get-buffer-process gud-comint-buffer) 691 (get-buffer-process gud-comint-buffer)
692 (with-current-buffer gud-comint-buffer (eq gud-minor-mode 'gdba))) 692 (with-current-buffer gud-comint-buffer (eq gud-minor-mode 'gdba)))
693 (error "Multiple debugging requires restarting in text command mode")) 693 (let ((same-window-regexps))
694 (display-buffer gud-comint-buffer)
695 (error
696 "Multiple debugging requires restarting in text command mode")))
694 697
695 (gud-common-init command-line nil 'gud-gdb-marker-filter) 698 (gud-common-init command-line nil 'gud-gdb-marker-filter)
696 (set (make-local-variable 'gud-minor-mode) 'gdb) 699 (set (make-local-variable 'gud-minor-mode) 'gdb)
diff --git a/lisp/progmodes/hideshow.el b/lisp/progmodes/hideshow.el
index 35ab0362613..3bc1c55cc7d 100644
--- a/lisp/progmodes/hideshow.el
+++ b/lisp/progmodes/hideshow.el
@@ -906,11 +906,18 @@ Key bindings:
906 (if hs-minor-mode 906 (if hs-minor-mode
907 (progn 907 (progn
908 (hs-grok-mode-type) 908 (hs-grok-mode-type)
909 ;; Turn off this mode if we change major modes.
910 (add-hook 'change-major-mode-hook
911 (lambda () (hs-minor-mode -1))
912 nil t)
909 (easy-menu-add hs-minor-mode-menu) 913 (easy-menu-add hs-minor-mode-menu)
910 (set (make-local-variable 'line-move-ignore-invisible) t) 914 (set (make-local-variable 'line-move-ignore-invisible) t)
911 (add-to-invisibility-spec '(hs . t))) 915 (add-to-invisibility-spec '(hs . t)))
912 (easy-menu-remove hs-minor-mode-menu) 916 (easy-menu-remove hs-minor-mode-menu)
913 (remove-from-invisibility-spec '(hs . t))) 917 (remove-from-invisibility-spec '(hs . t))
918 ;; hs-show-all does nothing unless h-m-m is non-nil.
919 (let ((hs-minor-mode t))
920 (hs-show-all)))
914 (run-hooks 'hs-minor-mode-hook)) 921 (run-hooks 'hs-minor-mode-hook))
915 922
916;;--------------------------------------------------------------------------- 923;;---------------------------------------------------------------------------
@@ -945,7 +952,7 @@ Key bindings:
945(add-to-list 'minor-mode-map-alist (cons 'hs-minor-mode hs-minor-mode-map)) 952(add-to-list 'minor-mode-map-alist (cons 'hs-minor-mode hs-minor-mode-map))
946(add-to-list 'minor-mode-alist '(hs-minor-mode " hs") t) 953(add-to-list 'minor-mode-alist '(hs-minor-mode " hs") t)
947 954
948;; make some variables permanently buffer-local 955;; make some variables buffer-local
949(dolist (var '(hs-minor-mode 956(dolist (var '(hs-minor-mode
950 hs-c-start-regexp 957 hs-c-start-regexp
951 hs-block-start-regexp 958 hs-block-start-regexp
@@ -953,8 +960,7 @@ Key bindings:
953 hs-block-end-regexp 960 hs-block-end-regexp
954 hs-forward-sexp-func 961 hs-forward-sexp-func
955 hs-adjust-block-beginning)) 962 hs-adjust-block-beginning))
956 (make-variable-buffer-local var) 963 (make-variable-buffer-local var))
957 (put var 'permanent-local t))
958 964
959;;--------------------------------------------------------------------------- 965;;---------------------------------------------------------------------------
960;; that's it 966;; that's it
diff --git a/lisp/progmodes/idlw-help.el b/lisp/progmodes/idlw-help.el
index a9ceccac6a0..030b785acdf 100644
--- a/lisp/progmodes/idlw-help.el
+++ b/lisp/progmodes/idlw-help.el
@@ -386,8 +386,7 @@ It collects and prints the diagnostics messages."
386 (< beg (- end 4)))) 386 (< beg (- end 4))))
387 module keyword cw mod1 mod2 mod3) 387 module keyword cw mod1 mod2 mod3)
388 (if (or arg 388 (if (or arg
389 (and (not st-ass) 389 (and (not classtag)
390 (not classtag)
391 (not structtag) 390 (not structtag)
392 (not (member (string-to-char this-word) '(?! ?.))))) 391 (not (member (string-to-char this-word) '(?! ?.)))))
393 ;; Need the module information 392 ;; Need the module information
@@ -408,7 +407,8 @@ It collects and prints the diagnostics messages."
408 (arg (setq mod1 module)) 407 (arg (setq mod1 module))
409 408
410 ;; A special topic -- only system help 409 ;; A special topic -- only system help
411 (st-ass (setq mod1 (list (cdr st-ass)))) 410 ((and st-ass (not (memq cw '(function-keyword procedure-keyword))))
411 (setq mod1 (list (cdr st-ass))))
412 412
413 ;; A system variable -- only system help 413 ;; A system variable -- only system help
414 ((string-match 414 ((string-match
@@ -1226,7 +1226,7 @@ Useful when source code is displayed as help. See the option
1226;; we must pass the -profile argument as well. 1226;; we must pass the -profile argument as well.
1227(defvar idlwave-help-assistant-command 1227(defvar idlwave-help-assistant-command
1228 (if (memq system-type '(ms-dos windows-nt)) 1228 (if (memq system-type '(ms-dos windows-nt))
1229 "bin/bin.x86/idl_assistant" 1229 "bin/bin.x86/idl_assistant.exe"
1230 "bin/idl_assistant") 1230 "bin/idl_assistant")
1231 "The command, rooted at idlwave-system-directory, which invokes the 1231 "The command, rooted at idlwave-system-directory, which invokes the
1232IDL assistant.") 1232IDL assistant.")
diff --git a/lisp/progmodes/python.el b/lisp/progmodes/python.el
index 38e846aa2cc..226d4bdc62d 100644
--- a/lisp/progmodes/python.el
+++ b/lisp/progmodes/python.el
@@ -1150,7 +1150,7 @@ modified by the user. Additional arguments are added when the command
1150is used by `run-python' et al.") 1150is used by `run-python' et al.")
1151 1151
1152(defvar python-buffer nil 1152(defvar python-buffer nil
1153 "*The current python process buffer. 1153 "*The current Python process buffer.
1154 1154
1155Commands that send text from source buffers to Python processes have 1155Commands that send text from source buffers to Python processes have
1156to choose a process to send to. This is determined by buffer-local 1156to choose a process to send to. This is determined by buffer-local
@@ -1383,11 +1383,11 @@ buffer for a list of commands.)"
1383COMMAND should be a single statement." 1383COMMAND should be a single statement."
1384 ;; (assert (not (string-match "\n" command))) 1384 ;; (assert (not (string-match "\n" command)))
1385 ;; (let ((end (marker-position (process-mark (python-proc))))) 1385 ;; (let ((end (marker-position (process-mark (python-proc)))))
1386 (with-current-buffer python-buffer (goto-char (point-max))) 1386 (with-current-buffer (process-buffer (python-proc))
1387 (goto-char (point-max))
1387 (compilation-forget-errors) 1388 (compilation-forget-errors)
1388 (python-send-string command) 1389 (python-send-string command)
1389 (with-current-buffer python-buffer 1390 (setq compilation-last-buffer (current-buffer)))
1390 (setq compilation-last-buffer (current-buffer)))
1391 ;; No idea what this is for but it breaks the call to 1391 ;; No idea what this is for but it breaks the call to
1392 ;; compilation-fake-loc in python-send-region. -- Stef 1392 ;; compilation-fake-loc in python-send-region. -- Stef
1393 ;; Must wait until this has completed before re-setting variables below. 1393 ;; Must wait until this has completed before re-setting variables below.
@@ -1517,9 +1517,9 @@ See variable `python-buffer'. Starts a new process if necessary."
1517 ;; isn't one for `python-buffer'. 1517 ;; isn't one for `python-buffer'.
1518 (unless (comint-check-proc python-buffer) 1518 (unless (comint-check-proc python-buffer)
1519 (run-python nil t)) 1519 (run-python nil t))
1520 (get-buffer-process (or (if (derived-mode-p 'inferior-python-mode) 1520 (get-buffer-process (if (derived-mode-p 'inferior-python-mode)
1521 (current-buffer) 1521 (current-buffer)
1522 python-buffer)))) 1522 python-buffer)))
1523 1523
1524(defun python-set-proc () 1524(defun python-set-proc ()
1525 "Set the default value of `python-buffer' to correspond to this buffer. 1525 "Set the default value of `python-buffer' to correspond to this buffer.
@@ -2088,7 +2088,7 @@ The default contents correspond to the elements of `python-skeletons'.")
2088 > _ \n) 2088 > _ \n)
2089 2089
2090(defvar python-default-template "if" 2090(defvar python-default-template "if"
2091 "Default template to expand by `python-insert-template'. 2091 "Default template to expand by `python-expand-template'.
2092Updated on each expansion.") 2092Updated on each expansion.")
2093 2093
2094(defun python-expand-template (name) 2094(defun python-expand-template (name)
diff --git a/lisp/ps-print.el b/lisp/ps-print.el
index 3f118474bb0..4762f5173c3 100644
--- a/lisp/ps-print.el
+++ b/lisp/ps-print.el
@@ -3966,7 +3966,7 @@ Note: No major/minor-mode is activated and no local variables are evaluated for
3966 filename)))) 3966 filename))))
3967 3967
3968 3968
3969(defvar ps-mark-code-directory) 3969(defvar ps-mark-code-directory nil)
3970 3970
3971(defvar ps-print-prologue-0 "" 3971(defvar ps-print-prologue-0 ""
3972 "ps-print PostScript error handler.") 3972 "ps-print PostScript error handler.")
@@ -3976,12 +3976,12 @@ Note: No major/minor-mode is activated and no local variables are evaluated for
3976 3976
3977;; Start Editing Here: 3977;; Start Editing Here:
3978 3978
3979(defvar ps-source-buffer) 3979(defvar ps-source-buffer nil)
3980(defvar ps-spool-buffer-name "*PostScript*") 3980(defvar ps-spool-buffer-name "*PostScript*")
3981(defvar ps-spool-buffer) 3981(defvar ps-spool-buffer nil)
3982 3982
3983(defvar ps-output-head) 3983(defvar ps-output-head nil)
3984(defvar ps-output-tail) 3984(defvar ps-output-tail nil)
3985 3985
3986(defvar ps-page-postscript 0) ; page number 3986(defvar ps-page-postscript 0) ; page number
3987(defvar ps-page-order 0) ; PostScript page counter 3987(defvar ps-page-order 0) ; PostScript page counter
@@ -3991,29 +3991,29 @@ Note: No major/minor-mode is activated and no local variables are evaluated for
3991(defvar ps-page-n-up 0) ; n-up counter 3991(defvar ps-page-n-up 0) ; n-up counter
3992(defvar ps-lines-printed 0) ; total lines printed 3992(defvar ps-lines-printed 0) ; total lines printed
3993(defvar ps-showline-count 1) ; line number counter 3993(defvar ps-showline-count 1) ; line number counter
3994(defvar ps-first-page) 3994(defvar ps-first-page nil)
3995(defvar ps-last-page) 3995(defvar ps-last-page nil)
3996(defvar ps-print-page-p t) 3996(defvar ps-print-page-p t)
3997 3997
3998(defvar ps-control-or-escape-regexp) 3998(defvar ps-control-or-escape-regexp nil)
3999(defvar ps-n-up-on) 3999(defvar ps-n-up-on nil)
4000 4000
4001(defvar ps-background-pages) 4001(defvar ps-background-pages nil)
4002(defvar ps-background-all-pages) 4002(defvar ps-background-all-pages nil)
4003(defvar ps-background-text-count 0) 4003(defvar ps-background-text-count 0)
4004(defvar ps-background-image-count 0) 4004(defvar ps-background-image-count 0)
4005 4005
4006(defvar ps-current-font 0) 4006(defvar ps-current-font 0)
4007(defvar ps-default-foreground) 4007(defvar ps-default-foreground nil)
4008(defvar ps-default-background) 4008(defvar ps-default-background nil)
4009(defvar ps-default-color) 4009(defvar ps-default-color nil)
4010(defvar ps-current-color) 4010(defvar ps-current-color nil)
4011(defvar ps-current-bg) 4011(defvar ps-current-bg nil)
4012 4012
4013(defvar ps-zebra-stripe-full-p) 4013(defvar ps-zebra-stripe-full-p nil)
4014(defvar ps-razchunk 0) 4014(defvar ps-razchunk 0)
4015 4015
4016(defvar ps-color-p) 4016(defvar ps-color-p nil)
4017(defvar ps-color-format 4017(defvar ps-color-format
4018 (if (featurep 'xemacs) 4018 (if (featurep 'xemacs)
4019 ;; XEmacs will have to make do with %s (princ) for floats. 4019 ;; XEmacs will have to make do with %s (princ) for floats.
@@ -4042,20 +4042,20 @@ This is in units of points (1/72 inch).")
4042(defmacro ps-page-dimensions-get-height (dims) `(nth 1 ,dims)) 4042(defmacro ps-page-dimensions-get-height (dims) `(nth 1 ,dims))
4043(defmacro ps-page-dimensions-get-media (dims) `(nth 2 ,dims)) 4043(defmacro ps-page-dimensions-get-media (dims) `(nth 2 ,dims))
4044 4044
4045(defvar ps-landscape-page-height) 4045(defvar ps-landscape-page-height nil)
4046 4046
4047(defvar ps-print-width) 4047(defvar ps-print-width nil)
4048(defvar ps-print-height) 4048(defvar ps-print-height nil)
4049 4049
4050(defvar ps-height-remaining) 4050(defvar ps-height-remaining nil)
4051(defvar ps-width-remaining) 4051(defvar ps-width-remaining nil)
4052 4052
4053(defvar ps-font-size-internal) 4053(defvar ps-font-size-internal nil)
4054(defvar ps-header-font-size-internal) 4054(defvar ps-header-font-size-internal nil)
4055(defvar ps-header-title-font-size-internal) 4055(defvar ps-header-title-font-size-internal nil)
4056(defvar ps-footer-font-size-internal) 4056(defvar ps-footer-font-size-internal nil)
4057(defvar ps-line-spacing-internal) 4057(defvar ps-line-spacing-internal nil)
4058(defvar ps-paragraph-spacing-internal) 4058(defvar ps-paragraph-spacing-internal nil)
4059 4059
4060 4060
4061;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 4061;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
@@ -4252,10 +4252,10 @@ If EXTENSION is any other symbol, it is ignored."
4252 message-log-max)) 4252 message-log-max))
4253 4253
4254 4254
4255(defvar ps-print-hook) 4255(defvar ps-print-hook nil)
4256(defvar ps-print-begin-sheet-hook) 4256(defvar ps-print-begin-sheet-hook nil)
4257(defvar ps-print-begin-page-hook) 4257(defvar ps-print-begin-page-hook nil)
4258(defvar ps-print-begin-column-hook) 4258(defvar ps-print-begin-column-hook nil)
4259 4259
4260 4260
4261(defun ps-print-without-faces (from to &optional filename region-p) 4261(defun ps-print-without-faces (from to &optional filename region-p)
@@ -4832,10 +4832,10 @@ page-height == ((floor print-height ((th + ls) * zh)) * ((th + ls) * zh)) - th
4832 content (cdr content))) 4832 content (cdr content)))
4833 (nreverse str))) 4833 (nreverse str)))
4834 4834
4835(defvar ps-lh-cache) 4835(defvar ps-lh-cache nil)
4836(defvar ps-rh-cache) 4836(defvar ps-rh-cache nil)
4837(defvar ps-lf-cache) 4837(defvar ps-lf-cache nil)
4838(defvar ps-rf-cache) 4838(defvar ps-rf-cache nil)
4839 4839
4840(defun ps-header-footer-string () 4840(defun ps-header-footer-string ()
4841 (and ps-print-header 4841 (and ps-print-header
@@ -6128,7 +6128,7 @@ XSTART YSTART are the relative position for the first page in a sheet.")
6128 (/ q-done (/ q-todo 100))) 6128 (/ q-done (/ q-todo 100)))
6129 )))))) 6129 ))))))
6130 6130
6131(defvar ps-last-font) 6131(defvar ps-last-font nil)
6132 6132
6133(defun ps-set-font (font) 6133(defun ps-set-font (font)
6134 (setq ps-last-font (format "f%d" (setq ps-current-font font))) 6134 (setq ps-last-font (format "f%d" (setq ps-current-font font)))
diff --git a/lisp/replace.el b/lisp/replace.el
index 5b970681ea7..a42f4ff4b57 100644
--- a/lisp/replace.el
+++ b/lisp/replace.el
@@ -849,10 +849,12 @@ Compatibility function for \\[next-error] invocations."
849 849
850(defface match 850(defface match
851 '((((class color) (min-colors 88) (background light)) 851 '((((class color) (min-colors 88) (background light))
852 :background "Tan") 852 :background "yellow")
853 (((class color) (min-colors 88) (background dark)) 853 (((class color) (min-colors 88) (background dark))
854 :background "RoyalBlue3") 854 :background "RoyalBlue3")
855 (((class color) (min-colors 8)) 855 (((class color) (min-colors 8) (background light))
856 :background "yellow" :foreground "black")
857 (((class color) (min-colors 8) (background dark))
856 :background "blue" :foreground "white") 858 :background "blue" :foreground "white")
857 (((type tty) (class mono)) 859 (((type tty) (class mono))
858 :inverse-video t) 860 :inverse-video t)
@@ -1049,7 +1051,9 @@ See also `multi-occur'."
1049 1051
1050 (with-current-buffer occur-buf 1052 (with-current-buffer occur-buf
1051 (occur-mode) 1053 (occur-mode)
1052 (let ((inhibit-read-only t)) 1054 (let ((inhibit-read-only t)
1055 ;; Don't generate undo entries for creation of the initial contents.
1056 (buffer-undo-list t))
1053 (erase-buffer) 1057 (erase-buffer)
1054 (let ((count (occur-engine 1058 (let ((count (occur-engine
1055 regexp active-bufs occur-buf 1059 regexp active-bufs occur-buf
@@ -1086,8 +1090,6 @@ See also `multi-occur'."
1086 title-face prefix-face match-face keep-props) 1090 title-face prefix-face match-face keep-props)
1087 (with-current-buffer out-buf 1091 (with-current-buffer out-buf
1088 (let ((globalcount 0) 1092 (let ((globalcount 0)
1089 ;; Don't generate undo entries for creation of the initial contents.
1090 (buffer-undo-list t)
1091 (coding nil)) 1093 (coding nil))
1092 ;; Map over all the buffers 1094 ;; Map over all the buffers
1093 (dolist (buf buffers) 1095 (dolist (buf buffers)
diff --git a/lisp/server.el b/lisp/server.el
index e0465324e05..2e344084d0f 100644
--- a/lisp/server.el
+++ b/lisp/server.el
@@ -666,6 +666,16 @@ The following commands are accepted by the client:
666 (run-with-timer 0 nil (lexical-let ((proc proc)) 666 (run-with-timer 0 nil (lexical-let ((proc proc))
667 (lambda () (server-process-filter proc "")))) 667 (lambda () (server-process-filter proc ""))))
668 (top-level)) 668 (top-level))
669 (condition-case nil
670 ;; If we're running isearch, we must abort it to allow Emacs to
671 ;; display the buffer and switch to it.
672 (mapc #'(lambda (buffer)
673 (with-current-buffer buffer
674 (when (bound-and-true-p isearch-mode)
675 (isearch-cancel))))
676 (buffer-list))
677 ;; Signaled by isearch-cancel
678 (quit (message nil)))
669 (let ((prev (process-get proc 'previous-string))) 679 (let ((prev (process-get proc 'previous-string)))
670 (when prev 680 (when prev
671 (setq string (concat prev string)) 681 (setq string (concat prev string))
diff --git a/lisp/ses.el b/lisp/ses.el
index ab92434bedb..2eec1b68e47 100644
--- a/lisp/ses.el
+++ b/lisp/ses.el
@@ -1485,7 +1485,7 @@ overlay, remove special text properties."
1485;;;###autoload 1485;;;###autoload
1486(defun ses-mode () 1486(defun ses-mode ()
1487 "Major mode for Simple Emacs Spreadsheet. 1487 "Major mode for Simple Emacs Spreadsheet.
1488See \"ses-example.ses\" (in the etc data directory) for more info. 1488See \"ses-example.ses\" (in `data-directory') for more info.
1489 1489
1490Key definitions: 1490Key definitions:
1491\\{ses-mode-map} 1491\\{ses-mode-map}
diff --git a/lisp/shell.el b/lisp/shell.el
index 008cd93c47b..a218981256a 100644
--- a/lisp/shell.el
+++ b/lisp/shell.el
@@ -336,7 +336,7 @@ Thus, this does not include the shell's current directory.")
336 "Keep track of last directory for ksh `cd -' command.") 336 "Keep track of last directory for ksh `cd -' command.")
337 337
338(defvar shell-dirstack-query nil 338(defvar shell-dirstack-query nil
339 "Command used by `shell-resync-dir' to query the shell.") 339 "Command used by `shell-resync-dirs' to query the shell.")
340 340
341(defvar shell-mode-map nil) 341(defvar shell-mode-map nil)
342(cond ((not shell-mode-map) 342(cond ((not shell-mode-map)
diff --git a/lisp/simple.el b/lisp/simple.el
index 1b998c9b27b..5901a1e3067 100644
--- a/lisp/simple.el
+++ b/lisp/simple.el
@@ -746,7 +746,7 @@ Don't use this command in Lisp programs!
746 (/ size 10)) 746 (/ size 10))
747 (/ (+ 10 (* size (prefix-numeric-value arg))) 10))) 747 (/ (+ 10 (* size (prefix-numeric-value arg))) 10)))
748 (point-min)))) 748 (point-min))))
749 (if arg (forward-line 1))) 749 (if (and arg (not (consp arg))) (forward-line 1)))
750 750
751(defun end-of-buffer (&optional arg) 751(defun end-of-buffer (&optional arg)
752 "Move point to the end of the buffer; leave mark at previous position. 752 "Move point to the end of the buffer; leave mark at previous position.
@@ -773,7 +773,7 @@ Don't use this command in Lisp programs!
773 (point-max)))) 773 (point-max))))
774 ;; If we went to a place in the middle of the buffer, 774 ;; If we went to a place in the middle of the buffer,
775 ;; adjust it to the beginning of a line. 775 ;; adjust it to the beginning of a line.
776 (cond (arg (forward-line 1)) 776 (cond ((and arg (not (consp arg))) (forward-line 1))
777 ((> (point) (window-end nil t)) 777 ((> (point) (window-end nil t))
778 ;; If the end of the buffer is not already on the screen, 778 ;; If the end of the buffer is not already on the screen,
779 ;; then scroll specially to put it near, but not at, the bottom. 779 ;; then scroll specially to put it near, but not at, the bottom.
@@ -993,6 +993,9 @@ in *Help* buffer. See also the command `describe-char'."
993 993
994(defvar read-expression-history nil) 994(defvar read-expression-history nil)
995 995
996(defvar minibuffer-completing-symbol nil
997 "Non-nil means completing a Lisp symbol in the minibuffer.")
998
996(defcustom eval-expression-print-level 4 999(defcustom eval-expression-print-level 4
997 "Value for `print-level' while printing value in `eval-expression'. 1000 "Value for `print-level' while printing value in `eval-expression'.
998A value of nil means no limit." 1001A value of nil means no limit."
@@ -1044,9 +1047,10 @@ the echo area.
1044If `eval-expression-debug-on-error' is non-nil, which is the default, 1047If `eval-expression-debug-on-error' is non-nil, which is the default,
1045this command arranges for all errors to enter the debugger." 1048this command arranges for all errors to enter the debugger."
1046 (interactive 1049 (interactive
1047 (list (read-from-minibuffer "Eval: " 1050 (list (let ((minibuffer-completing-symbol t))
1048 nil read-expression-map t 1051 (read-from-minibuffer "Eval: "
1049 'read-expression-history) 1052 nil read-expression-map t
1053 'read-expression-history))
1050 current-prefix-arg)) 1054 current-prefix-arg))
1051 1055
1052 (if (null eval-expression-debug-on-error) 1056 (if (null eval-expression-debug-on-error)
@@ -1894,14 +1898,11 @@ the contents are inserted into the buffer anyway.
1894 1898
1895Optional arguments NOT-THIS-WINDOW and FRAME are as for `display-buffer', 1899Optional arguments NOT-THIS-WINDOW and FRAME are as for `display-buffer',
1896and only used if a buffer is displayed." 1900and only used if a buffer is displayed."
1897 (cond ((and (stringp message) 1901 (cond ((and (stringp message) (not (string-match "\n" message)))
1898 (not (string-match "\n" message))
1899 (<= (length message) (frame-width)))
1900 ;; Trivial case where we can use the echo area 1902 ;; Trivial case where we can use the echo area
1901 (message "%s" message)) 1903 (message "%s" message))
1902 ((and (stringp message) 1904 ((and (stringp message)
1903 (= (string-match "\n" message) (1- (length message))) 1905 (= (string-match "\n" message) (1- (length message))))
1904 (<= (1- (length message)) (frame-width)))
1905 ;; Trivial case where we can just remove single trailing newline 1906 ;; Trivial case where we can just remove single trailing newline
1906 (message "%s" (substring message 0 (1- (length message))))) 1907 (message "%s" (substring message 0 (1- (length message)))))
1907 (t 1908 (t
@@ -3582,7 +3583,7 @@ Outline mode sets this."
3582 'end-of-buffer) 3583 'end-of-buffer)
3583 nil))) 3584 nil)))
3584 ;; Move by arg lines, but ignore invisible ones. 3585 ;; Move by arg lines, but ignore invisible ones.
3585 (let (done line-end) 3586 (let (done)
3586 (while (and (> arg 0) (not done)) 3587 (while (and (> arg 0) (not done))
3587 ;; If the following character is currently invisible, 3588 ;; If the following character is currently invisible,
3588 ;; skip all characters with that same `invisible' property value. 3589 ;; skip all characters with that same `invisible' property value.
@@ -3591,9 +3592,11 @@ Outline mode sets this."
3591 ;; Move a line. 3592 ;; Move a line.
3592 ;; We don't use `end-of-line', since we want to escape 3593 ;; We don't use `end-of-line', since we want to escape
3593 ;; from field boundaries ocurring exactly at point. 3594 ;; from field boundaries ocurring exactly at point.
3594 (let ((inhibit-field-text-motion t)) 3595 (goto-char (constrain-to-field
3595 (setq line-end (line-end-position))) 3596 (let ((inhibit-field-text-motion t))
3596 (goto-char (constrain-to-field line-end (point) t t)) 3597 (line-end-position))
3598 (point) t t
3599 'inhibit-line-move-field-capture))
3597 ;; If there's no invisibility here, move over the newline. 3600 ;; If there's no invisibility here, move over the newline.
3598 (cond 3601 (cond
3599 ((eobp) 3602 ((eobp)
@@ -4715,9 +4718,16 @@ SEND-ACTIONS is a list of actions to call when the message is sent.
4715Each action has the form (FUNCTION . ARGS)." 4718Each action has the form (FUNCTION . ARGS)."
4716 (interactive 4719 (interactive
4717 (list nil nil nil current-prefix-arg)) 4720 (list nil nil nil current-prefix-arg))
4718 (let ((function (get mail-user-agent 'composefunc))) 4721 (let ((function (get mail-user-agent 'composefunc))
4719 (funcall function to subject other-headers continue 4722 result-buffer)
4720 switch-function yank-action send-actions))) 4723 (if switch-function
4724 (save-window-excursion
4725 (prog1
4726 (funcall function to subject other-headers continue
4727 nil yank-action send-actions)
4728 (funcall switch-function (current-buffer))))
4729 (funcall function to subject other-headers continue
4730 nil yank-action send-actions))))
4721 4731
4722(defun compose-mail-other-window (&optional to subject other-headers continue 4732(defun compose-mail-other-window (&optional to subject other-headers continue
4723 yank-action send-actions) 4733 yank-action send-actions)
@@ -5080,7 +5090,8 @@ of the minibuffer before point is always the common substring.)")
5080 ;; so it will get copied into the completion list buffer. 5090 ;; so it will get copied into the completion list buffer.
5081 (if minibuffer-completing-file-name 5091 (if minibuffer-completing-file-name
5082 (with-current-buffer mainbuf 5092 (with-current-buffer mainbuf
5083 (setq default-directory (file-name-directory mbuf-contents)))) 5093 (setq default-directory
5094 (file-name-directory (expand-file-name mbuf-contents)))))
5084 (with-current-buffer standard-output 5095 (with-current-buffer standard-output
5085 (completion-list-mode) 5096 (completion-list-mode)
5086 (set (make-local-variable 'completion-reference-buffer) mainbuf) 5097 (set (make-local-variable 'completion-reference-buffer) mainbuf)
@@ -5100,6 +5111,7 @@ of the minibuffer before point is always the common substring.)")
5100 (save-excursion 5111 (save-excursion
5101 (skip-chars-backward completion-root-regexp) 5112 (skip-chars-backward completion-root-regexp)
5102 (- (point) (minibuffer-prompt-end))))) 5113 (- (point) (minibuffer-prompt-end)))))
5114 (minibuffer-completing-symbol nil)
5103 ;; Otherwise, in minibuffer, the base size is 0. 5115 ;; Otherwise, in minibuffer, the base size is 0.
5104 ((minibufferp mainbuf) 0))) 5116 ((minibufferp mainbuf) 0)))
5105 (setq common-string-length 5117 (setq common-string-length
@@ -5152,7 +5164,7 @@ select the completion near point.\n\n"))))))
5152 (when window 5164 (when window
5153 (select-window window) 5165 (select-window window)
5154 (goto-char (point-min)) 5166 (goto-char (point-min))
5155 (search-forward "\n\n") 5167 (search-forward "\n\n" nil t)
5156 (forward-line 1)))) 5168 (forward-line 1))))
5157 5169
5158;;; Support keyboard commands to turn on various modifiers. 5170;;; Support keyboard commands to turn on various modifiers.
diff --git a/lisp/smerge-mode.el b/lisp/smerge-mode.el
index bda569a1e05..8e239ab5a26 100644
--- a/lisp/smerge-mode.el
+++ b/lisp/smerge-mode.el
@@ -345,7 +345,9 @@ according to `smerge-match-conflict'.")
345 ;; during font-locking so inhibit-modification-hooks is non-nil, so we 345 ;; during font-locking so inhibit-modification-hooks is non-nil, so we
346 ;; can't just modify the buffer and expect font-lock to be triggered as in: 346 ;; can't just modify the buffer and expect font-lock to be triggered as in:
347 ;; (put-text-property beg end 'smerge-force-highlighting nil) 347 ;; (put-text-property beg end 'smerge-force-highlighting nil)
348 (remove-text-properties beg end '(fontified nil))) 348 (let ((modified (buffer-modified-p)))
349 (remove-text-properties beg end '(fontified nil))
350 (restore-buffer-modified-p modified)))
349 351
350(defun smerge-popup-context-menu (event) 352(defun smerge-popup-context-menu (event)
351 "Pop up the Smerge mode context menu under mouse." 353 "Pop up the Smerge mode context menu under mouse."
@@ -558,6 +560,8 @@ An error is raised if not inside a conflict."
558 t) 560 t)
559 (search-failed (error "Point not in conflict region"))))) 561 (search-failed (error "Point not in conflict region")))))
560 562
563(add-to-list 'debug-ignored-errors "Point not in conflict region")
564
561(defun smerge-conflict-overlay (pos) 565(defun smerge-conflict-overlay (pos)
562 "Return the conflict overlay at POS if any." 566 "Return the conflict overlay at POS if any."
563 (let ((ols (overlays-at pos)) 567 (let ((ols (overlays-at pos))
diff --git a/lisp/startup.el b/lisp/startup.el
index faa8a0f4a7f..f1cc3e253ae 100644
--- a/lisp/startup.el
+++ b/lisp/startup.el
@@ -49,7 +49,7 @@ The value is nil if the selected frame is on a text-only-terminal.")
49 49
50(defcustom inhibit-splash-screen nil 50(defcustom inhibit-splash-screen nil
51 "Non-nil inhibits the startup screen. 51 "Non-nil inhibits the startup screen.
52It also inhibits display of the initial message in the *scratch* buffer. 52It also inhibits display of the initial message in the `*scratch*' buffer.
53 53
54This is for use in your personal init file, once you are familiar 54This is for use in your personal init file, once you are familiar
55with the contents of the startup screen." 55with the contents of the startup screen."
@@ -202,7 +202,7 @@ Emacs runs this hook after processing the command line arguments and loading
202the user's init file.") 202the user's init file.")
203 203
204(defcustom initial-major-mode 'lisp-interaction-mode 204(defcustom initial-major-mode 'lisp-interaction-mode
205 "Major mode command symbol to use for the initial *scratch* buffer." 205 "Major mode command symbol to use for the initial `*scratch*' buffer."
206 :type 'function 206 :type 'function
207 :group 'initialization) 207 :group 'initialization)
208 208
@@ -1126,13 +1126,13 @@ regardless of the value of this variable."
1126 ;; If there is a specific tutorial for the current language 1126 ;; If there is a specific tutorial for the current language
1127 ;; environment and it is not English, append its title. 1127 ;; environment and it is not English, append its title.
1128 (concat 1128 (concat
1129 "Emacs Tutorial\tLearn how to use Emacs efficiently" 1129 "Emacs Tutorial\t\tLearn how to use Emacs efficiently"
1130 (if (string= en tut) 1130 (if (string= en tut)
1131 "" 1131 ""
1132 (concat " (" title ")")) 1132 (concat " (" title ")"))
1133 "\n"))) 1133 "\n")))
1134 :face variable-pitch "\ 1134 :face variable-pitch "\
1135Emacs FAQ\tFrequently asked questions and answers 1135Emacs FAQ\t\tFrequently asked questions and answers
1136View Emacs Manual\tView the Emacs manual using Info 1136View Emacs Manual\tView the Emacs manual using Info
1137Absence of Warranty\tGNU Emacs comes with " 1137Absence of Warranty\tGNU Emacs comes with "
1138 :face (variable-pitch :slant oblique) 1138 :face (variable-pitch :slant oblique)
@@ -1142,12 +1142,13 @@ Absence of Warranty\tGNU Emacs comes with "
1142Copying Conditions\tConditions for redistributing and changing Emacs 1142Copying Conditions\tConditions for redistributing and changing Emacs
1143Getting New Versions\tHow to obtain the latest version of Emacs 1143Getting New Versions\tHow to obtain the latest version of Emacs
1144More Manuals / Ordering Manuals Buying printed manuals from the FSF\n") 1144More Manuals / Ordering Manuals Buying printed manuals from the FSF\n")
1145 (:face (variable-pitch :weight bold) 1145 (:face variable-pitch
1146 "To quit a partially entered command, type " 1146 "To quit a partially entered command, type "
1147 :face default 1147 :face default
1148 "Control-g" 1148 "Control-g"
1149 :face variable-pitch 1149 :face variable-pitch
1150 "." 1150 ".\n"
1151 :face (variable-pitch :weight bold)
1151 "Useful File menu items:\n" 1152 "Useful File menu items:\n"
1152 :face variable-pitch 1153 :face variable-pitch
1153 "Exit Emacs\t\t(Or type " 1154 "Exit Emacs\t\t(Or type "
@@ -1279,8 +1280,7 @@ using the mouse.\n\n")
1279 :face 'variable-pitch 1280 :face 'variable-pitch
1280 "Type " 1281 "Type "
1281 :face 'default 1282 :face 'default
1282 (substitute-command-keys 1283 "Control-l"
1283 "\\[recenter]")
1284 :face 'variable-pitch 1284 :face 'variable-pitch
1285 " to begin editing" 1285 " to begin editing"
1286 (if (equal (buffer-name fancy-splash-outer-buffer) 1286 (if (equal (buffer-name fancy-splash-outer-buffer)
@@ -1997,13 +1997,13 @@ With a prefix argument, any user input hides the splash screen."
1997 (with-no-warnings 1997 (with-no-warnings
1998 (setq menubar-bindings-done t)) 1998 (setq menubar-bindings-done t))
1999 1999
2000 ;; If *scratch* is selected and it is empty, insert an 2000 ;; If *scratch* exists and is empty, insert initial-scratch-message.
2001 ;; initial message saying not to create a file there. 2001 (and initial-scratch-message
2002 (when (and initial-scratch-message 2002 (get-buffer "*scratch*")
2003 (equal (buffer-name) "*scratch*") 2003 (with-current-buffer "*scratch*"
2004 (= 0 (buffer-size))) 2004 (when (zerop (buffer-size))
2005 (insert initial-scratch-message) 2005 (insert initial-scratch-message)
2006 (set-buffer-modified-p nil)) 2006 (set-buffer-modified-p nil))))
2007 2007
2008 ;; If user typed input during all that work, 2008 ;; If user typed input during all that work,
2009 ;; abort the startup screen. Otherwise, display it now. 2009 ;; abort the startup screen. Otherwise, display it now.
diff --git a/lisp/subr.el b/lisp/subr.el
index ce4a2507602..4b5c5e3f076 100644
--- a/lisp/subr.el
+++ b/lisp/subr.el
@@ -55,7 +55,7 @@ that complains if FORM ever does return differing values."
55 55
56(defmacro def-edebug-spec (symbol spec) 56(defmacro def-edebug-spec (symbol spec)
57 "Set the `edebug-form-spec' property of SYMBOL according to SPEC. 57 "Set the `edebug-form-spec' property of SYMBOL according to SPEC.
58Both SYMBOL and SPEC are unevaluated. The SPEC can be 0, t, a symbol 58Both SYMBOL and SPEC are unevaluated. The SPEC can be 0, t, a symbol
59\(naming a function), or a list." 59\(naming a function), or a list."
60 `(put (quote ,symbol) 'edebug-form-spec (quote ,spec))) 60 `(put (quote ,symbol) 'edebug-form-spec (quote ,spec)))
61 61
@@ -99,12 +99,20 @@ change the list."
99 (list 'setq listname (list 'cdr listname))))) 99 (list 'setq listname (list 'cdr listname)))))
100 100
101(defmacro when (cond &rest body) 101(defmacro when (cond &rest body)
102 "If COND yields non-nil, do BODY, else return nil." 102 "If COND yields non-nil, do BODY, else return nil.
103When COND yields non-nil, eval BODY forms sequentially and return
104value of last one, or nil if there are none.
105
106\(fn COND BODY ...)"
103 (declare (indent 1) (debug t)) 107 (declare (indent 1) (debug t))
104 (list 'if cond (cons 'progn body))) 108 (list 'if cond (cons 'progn body)))
105 109
106(defmacro unless (cond &rest body) 110(defmacro unless (cond &rest body)
107 "If COND yields nil, do BODY, else return nil." 111 "If COND yields nil, do BODY, else return nil.
112When COND yields nil, eval BODY forms sequentially and return
113value of last one, or nil if there are none.
114
115\(fn COND BODY ...)"
108 (declare (indent 1) (debug t)) 116 (declare (indent 1) (debug t))
109 (cons 'if (cons cond (cons nil body)))) 117 (cons 'if (cons cond (cons nil body))))
110 118
@@ -1895,21 +1903,32 @@ input (as a command if nothing else).
1895Display MESSAGE (optional fourth arg) in the echo area. 1903Display MESSAGE (optional fourth arg) in the echo area.
1896If MESSAGE is nil, instructions to type EXIT-CHAR are displayed there." 1904If MESSAGE is nil, instructions to type EXIT-CHAR are displayed there."
1897 (or exit-char (setq exit-char ?\s)) 1905 (or exit-char (setq exit-char ?\s))
1898 (let ((momentary-overlay (make-overlay pos pos nil t))) 1906 (let ((inhibit-read-only t)
1899 (overlay-put momentary-overlay 'before-string 1907 ;; Don't modify the undo list at all.
1900 (propertize string 'face 'momentary)) 1908 (buffer-undo-list t)
1909 (modified (buffer-modified-p))
1910 (name buffer-file-name)
1911 insert-end)
1901 (unwind-protect 1912 (unwind-protect
1902 (progn 1913 (progn
1903 ;; If the message end is off screen, recenter now.
1904 (if (< (window-end nil t) (+ pos (length string)))
1905 (recenter (/ (window-height) 2)))
1906 ;; If that pushed message start off the screen,
1907 ;; scroll to start it at the top of the screen.
1908 (save-excursion 1914 (save-excursion
1915 (goto-char pos)
1916 ;; To avoid trouble with out-of-bounds position
1917 (setq pos (point))
1918 ;; defeat file locking... don't try this at home, kids!
1919 (setq buffer-file-name nil)
1920 (insert-before-markers string)
1921 (setq insert-end (point))
1922 ;; If the message end is off screen, recenter now.
1923 (if (< (window-end nil t) insert-end)
1924 (recenter (/ (window-height) 2)))
1925 ;; If that pushed message start off the screen,
1926 ;; scroll to start it at the top of the screen.
1909 (move-to-window-line 0) 1927 (move-to-window-line 0)
1910 (if (> (point) pos) 1928 (if (> (point) pos)
1911 (goto-char pos) 1929 (progn
1912 (recenter 0))) 1930 (goto-char pos)
1931 (recenter 0))))
1913 (message (or message "Type %s to continue editing.") 1932 (message (or message "Type %s to continue editing.")
1914 (single-key-description exit-char)) 1933 (single-key-description exit-char))
1915 (let (char) 1934 (let (char)
@@ -1929,7 +1948,11 @@ If MESSAGE is nil, instructions to type EXIT-CHAR are displayed there."
1929 (or (eq char exit-char) 1948 (or (eq char exit-char)
1930 (eq char (event-convert-list exit-char)) 1949 (eq char (event-convert-list exit-char))
1931 (setq unread-command-events (list char)))))) 1950 (setq unread-command-events (list char))))))
1932 (delete-overlay momentary-overlay)))) 1951 (if insert-end
1952 (save-excursion
1953 (delete-region pos insert-end)))
1954 (setq buffer-file-name name)
1955 (set-buffer-modified-p modified))))
1933 1956
1934 1957
1935;;;; Overlay operations 1958;;;; Overlay operations
diff --git a/lisp/t-mouse.el b/lisp/t-mouse.el
index 96e545aa11c..c8a7e9b6536 100644
--- a/lisp/t-mouse.el
+++ b/lisp/t-mouse.el
@@ -134,14 +134,19 @@ For example, \"2\" for /dev/tty2."
134 134
135(defun t-mouse-make-event-element (x-dot-y-avec-time) 135(defun t-mouse-make-event-element (x-dot-y-avec-time)
136 (let* ((x-dot-y (nth 0 x-dot-y-avec-time)) 136 (let* ((x-dot-y (nth 0 x-dot-y-avec-time))
137 (time (nth 1 x-dot-y-avec-time))
137 (x (car x-dot-y)) 138 (x (car x-dot-y))
138 (y (cdr x-dot-y)) 139 (y (cdr x-dot-y))
139 (w (window-at x y)) 140 (w (window-at x y))
140 (ltrb (window-edges w)) 141 (ltrb (window-edges w))
141 (left (nth 0 ltrb)) 142 (left (nth 0 ltrb))
142 (top (nth 1 ltrb))) 143 (top (nth 1 ltrb))
143 (if w (posn-at-x-y (- x left) (- y top) w t) 144 (event (if w
144 (append (list nil 'menu-bar) (nthcdr 2 (posn-at-x-y x y w t)))))) 145 (posn-at-x-y (- x left) (- y top) w t)
146 (append (list nil 'menu-bar)
147 (nthcdr 2 (posn-at-x-y x y w t))))))
148 (setcar (nthcdr 3 event) time)
149 event))
145 150
146;;; This fun is partly Copyright (C) 1994 Per Abrahamsen <abraham@iesd.auc.dk> 151;;; This fun is partly Copyright (C) 1994 Per Abrahamsen <abraham@iesd.auc.dk>
147(defun t-mouse-make-event () 152(defun t-mouse-make-event ()
diff --git a/lisp/tempo.el b/lisp/tempo.el
index 64427d8ccf4..f12c126c349 100644
--- a/lisp/tempo.el
+++ b/lisp/tempo.el
@@ -266,6 +266,8 @@ The elements in ELEMENTS can be of several types:
266 that you often should place this item after the text you want on 266 that you often should place this item after the text you want on
267 the line. 267 the line.
268 - `r>': Like `r', but it also indents the region. 268 - `r>': Like `r', but it also indents the region.
269 - (r> PROMPT <NAME> <NOINSERT>): Like (r ...), but is also indents
270 the region.
269 - `n>': Inserts a newline and indents line. 271 - `n>': Inserts a newline and indents line.
270 - `o': Like `%' but leaves the point before the newline. 272 - `o': Like `%' but leaves the point before the newline.
271 - nil: It is ignored. 273 - nil: It is ignored.
@@ -352,6 +354,13 @@ possible."
352 (goto-char tempo-region-stop) 354 (goto-char tempo-region-stop)
353 (tempo-insert-prompt-compat 355 (tempo-insert-prompt-compat
354 (cdr element)))) 356 (cdr element))))
357 ((and (consp element)
358 (eq (car element) 'r>)) (if on-region
359 (progn
360 (goto-char tempo-region-stop)
361 (indent-region (mark) (point) nil))
362 (tempo-insert-prompt-compat
363 (cdr element))))
355 ((and (consp element) 364 ((and (consp element)
356 (eq (car element) 's)) (tempo-insert-named (car (cdr element)))) 365 (eq (car element) 's)) (tempo-insert-named (car (cdr element))))
357 ((and (consp element) 366 ((and (consp element)
diff --git a/lisp/term/x-win.el b/lisp/term/x-win.el
index d2978147ad1..834aa5f60d8 100644
--- a/lisp/term/x-win.el
+++ b/lisp/term/x-win.el
@@ -2207,11 +2207,12 @@ order until succeed.")
2207;; (1) If their lengthes are different, select the longer one. This 2207;; (1) If their lengthes are different, select the longer one. This
2208;; is because an X client may just cut off unsupported characters. 2208;; is because an X client may just cut off unsupported characters.
2209;; 2209;;
2210;; (2) Otherwise, if the Nth character of CTEXT is an ASCII 2210;; (2) Otherwise, if they are different at Nth character, and that
2211;; character that is different from the Nth character of UTF8, 2211;; of UTF8 is a Latin character and that of CTEXT belongs to a CJK
2212;; select UTF8. This is because an X client may replace unsupported 2212;; character set, select UTF8. Also select UTF8 if the Nth
2213;; characters with some ASCII character (typically ` ' or `?') in 2213;; character of UTF8 is non-ASCII where as that of CTEXT is ASCII.
2214;; CTEXT. 2214;; This is because an X client may replace unsupported characters
2215;; with some ASCII character (typically ` ' or `?') in CTEXT.
2215;; 2216;;
2216;; (3) Otherwise, select CTEXT. This is because legacy charsets are 2217;; (3) Otherwise, select CTEXT. This is because legacy charsets are
2217;; better for the current Emacs, especially when the selection owner 2218;; better for the current Emacs, especially when the selection owner
@@ -2226,10 +2227,16 @@ order until succeed.")
2226 (if (/= len-utf8 len-ctext) 2227 (if (/= len-utf8 len-ctext)
2227 (if (> len-utf8 len-ctext) utf8 ctext) 2228 (if (> len-utf8 len-ctext) utf8 ctext)
2228 (let ((result (compare-strings utf8 0 len-utf8 ctext 0 len-ctext))) 2229 (let ((result (compare-strings utf8 0 len-utf8 ctext 0 len-ctext)))
2229 (if (or (eq result t) 2230 (if (eq result t)
2230 (>= (aref ctext (1- (abs result))) 128))
2231 ctext 2231 ctext
2232 utf8))))) 2232 (let ((utf8-char (aref utf8 (1- (abs result))))
2233 (ctext-char (aref ctext (1- (abs result)))))
2234 (if (or (and (aref (char-category-set utf8-char) ?l)
2235 (aref (char-category-set ctext-char) ?C))
2236 (and (>= utf8-char 128)
2237 (< ctext-char 128)))
2238 utf8
2239 ctext)))))))
2233 2240
2234;; Get a selection value of type TYPE by calling x-get-selection with 2241;; Get a selection value of type TYPE by calling x-get-selection with
2235;; an appropiate DATA-TYPE argument decidd by `x-select-request-type'. 2242;; an appropiate DATA-TYPE argument decidd by `x-select-request-type'.
diff --git a/lisp/textmodes/ispell.el b/lisp/textmodes/ispell.el
index 73faea4e9c2..a3c9575d90c 100644
--- a/lisp/textmodes/ispell.el
+++ b/lisp/textmodes/ispell.el
@@ -766,9 +766,7 @@ Otherwise returns the library directory name, if that is defined."
766 (if buf (kill-buffer buf))) 766 (if buf (kill-buffer buf)))
767 (set-buffer (get-buffer-create " *ispell-tmp*")) 767 (set-buffer (get-buffer-create " *ispell-tmp*"))
768 (erase-buffer) 768 (erase-buffer)
769 (unless (file-exists-p default-directory) 769 (setq status (ispell-call-process
770 (setq default-directory (expand-file-name "~/")))
771 (setq status (call-process
772 ispell-program-name nil t nil 770 ispell-program-name nil t nil
773 ;; aspell doesn't accept the -vv switch. 771 ;; aspell doesn't accept the -vv switch.
774 (let ((case-fold-search 772 (let ((case-fold-search
@@ -827,6 +825,22 @@ Otherwise returns the library directory name, if that is defined."
827 (kill-buffer (current-buffer))) 825 (kill-buffer (current-buffer)))
828 result)) 826 result))
829 827
828(defun ispell-call-process (&rest args)
829 "Like `call-process' but defend against bad `default-directory'."
830 (let ((default-directory default-directory))
831 (unless (and (file-directory-p default-directory)
832 (file-readable-p default-directory))
833 (setq default-directory (expand-file-name "~/")))
834 (apply 'call-process args)))
835
836(defun ispell-call-process-region (&rest args)
837 "Like `call-process-region' but defend against bad `default-directory'."
838 (let ((default-directory default-directory))
839 (unless (and (file-directory-p default-directory)
840 (file-readable-p default-directory))
841 (setq default-directory (expand-file-name "~/")))
842 (apply 'call-process-region args)))
843
830 844
831 845
832;;; The preparation of the menu bar menu must be autoloaded 846;;; The preparation of the menu bar menu must be autoloaded
@@ -895,7 +909,7 @@ and added as a submenu of the \"Edit\" menu.")
895 (let* ((dictionaries 909 (let* ((dictionaries
896 (split-string 910 (split-string
897 (with-temp-buffer 911 (with-temp-buffer
898 (call-process ispell-program-name nil t nil "dicts") 912 (ispell-call-process ispell-program-name nil t nil "dicts")
899 (buffer-string)))) 913 (buffer-string))))
900 ;; Search for the named dictionaries. 914 ;; Search for the named dictionaries.
901 (found 915 (found
@@ -928,7 +942,7 @@ and added as a submenu of the \"Edit\" menu.")
928 "Return value of Aspell configuration option KEY. 942 "Return value of Aspell configuration option KEY.
929Assumes that value contains no whitespace." 943Assumes that value contains no whitespace."
930 (with-temp-buffer 944 (with-temp-buffer
931 (call-process ispell-program-name nil t nil "config" key) 945 (ispell-call-process ispell-program-name nil t nil "config" key)
932 (car (split-string (buffer-string))))) 946 (car (split-string (buffer-string)))))
933 947
934(defun ispell-aspell-find-dictionary (dict-name) 948(defun ispell-aspell-find-dictionary (dict-name)
@@ -1500,7 +1514,8 @@ This allows it to improve the suggestion list based on actual mispellings."
1500 (erase-buffer) 1514 (erase-buffer)
1501 (set-buffer session-buf) 1515 (set-buffer session-buf)
1502 (setq status 1516 (setq status
1503 (apply 'call-process-region (point-min) (point-max) 1517 (apply 'ispell-call-process-region
1518 (point-min) (point-max)
1504 ispell-program-name nil 1519 ispell-program-name nil
1505 output-buf nil 1520 output-buf nil
1506 "-a" "-m" ispell-args)) 1521 "-a" "-m" ispell-args))
@@ -2197,7 +2212,7 @@ Optional second argument contains the dictionary to use; the default is
2197 (while (search-backward "*" nil t) (insert ".")) 2212 (while (search-backward "*" nil t) (insert "."))
2198 (setq word (buffer-string)) 2213 (setq word (buffer-string))
2199 (erase-buffer)) 2214 (erase-buffer))
2200 (setq status (apply 'call-process prog nil t nil 2215 (setq status (apply 'ispell-call-process prog nil t nil
2201 (nconc (if (and args (> (length args) 0)) 2216 (nconc (if (and args (> (length args) 0))
2202 (list args) 2217 (list args)
2203 (if look-p nil 2218 (if look-p nil
diff --git a/lisp/textmodes/org.el b/lisp/textmodes/org.el
index bba5832b0e6..a727fa2df5a 100644
--- a/lisp/textmodes/org.el
+++ b/lisp/textmodes/org.el
@@ -3912,6 +3912,7 @@ between words."
3912 (if (memq 'radio lk) '(org-activate-target-links (0 'org-link t))) 3912 (if (memq 'radio lk) '(org-activate-target-links (0 'org-link t)))
3913 (if (memq 'date lk) '(org-activate-dates (0 'org-date t))) 3913 (if (memq 'date lk) '(org-activate-dates (0 'org-date t)))
3914 (if (memq 'tag lk) '(org-activate-tags (1 'org-tag prepend))) 3914 (if (memq 'tag lk) '(org-activate-tags (1 'org-tag prepend)))
3915 '(org-hide-wide-columns (0 nil append))
3915 ;; TODO lines 3916 ;; TODO lines
3916 (list (concat "^\\*+[ \t]*" org-not-done-regexp) 3917 (list (concat "^\\*+[ \t]*" org-not-done-regexp)
3917 '(1 'org-todo t)) 3918 '(1 'org-todo t))
@@ -18767,6 +18768,13 @@ because, in this case the deletion might narrow the column."
18767(put 'org-delete-char 'delete-selection 'supersede) 18768(put 'org-delete-char 'delete-selection 'supersede)
18768(put 'org-delete-backward-char 'delete-selection 'supersede) 18769(put 'org-delete-backward-char 'delete-selection 'supersede)
18769 18770
18771;; Make `flyspell-mode' delay after some commands
18772(put 'org-self-insert-command 'flyspell-delayed t)
18773(put 'orgtbl-self-insert-command 'flyspell-delayed t)
18774(put 'org-delete-char 'flyspell-delayed t)
18775(put 'org-delete-backward-char 'flyspell-delayed t)
18776
18777
18770;; How to do this: Measure non-white length of current string 18778;; How to do this: Measure non-white length of current string
18771;; If equal to column width, we should realign. 18779;; If equal to column width, we should realign.
18772 18780
diff --git a/lisp/type-break.el b/lisp/type-break.el
index 361670dbe6c..e065e32df54 100644
--- a/lisp/type-break.el
+++ b/lisp/type-break.el
@@ -562,9 +562,12 @@ Returns nil if the file is missing or if the time breaks with the
562 (if file 562 (if file
563 (timep ;; returns expected format, else nil 563 (timep ;; returns expected format, else nil
564 (with-current-buffer (find-file-noselect file 'nowarn) 564 (with-current-buffer (find-file-noselect file 'nowarn)
565 (save-excursion 565 (condition-case nil
566 (goto-char (point-min)) 566 (save-excursion
567 (read (current-buffer)))))))) 567 (goto-char (point-min))
568 (read (current-buffer)))
569 (end-of-file
570 (error "End of file in `%s'" file))))))))
568 571
569(defun type-break-get-previous-count () 572(defun type-break-get-previous-count ()
570 "Get previous keystroke count from `type-break-file-name'. 573 "Get previous keystroke count from `type-break-file-name'.
@@ -576,10 +579,13 @@ integer."
576 (setq file 579 (setq file
577 (with-current-buffer 580 (with-current-buffer
578 (find-file-noselect file 'nowarn) 581 (find-file-noselect file 'nowarn)
579 (save-excursion 582 (condition-case nil
580 (goto-char (point-min)) 583 (save-excursion
581 (forward-line 1) 584 (goto-char (point-min))
582 (read (current-buffer))))))) 585 (forward-line 1)
586 (read (current-buffer)))
587 (end-of-file
588 (error "End of file in `%s'" file)))))))
583 file 589 file
584 0))) 590 0)))
585 591
diff --git a/lisp/woman.el b/lisp/woman.el
index 728bf347d9f..ffa0ea692ad 100644
--- a/lisp/woman.el
+++ b/lisp/woman.el
@@ -3284,7 +3284,7 @@ If optional arg CONCAT is non-nil then join arguments."
3284 ;; Find font requests, paragraph macros and font escapes: 3284 ;; Find font requests, paragraph macros and font escapes:
3285 (re-search-forward 3285 (re-search-forward
3286 "^[.'][ \t]*\\(\\(\\ft\\)\\|\\(.P\\)\\)\\|\\(\\\\f\\)" nil 1) 3286 "^[.'][ \t]*\\(\\(\\ft\\)\\|\\(.P\\)\\)\\|\\(\\\\f\\)" nil 1)
3287 (let (font beg notfont) 3287 (let (font beg notfont fescape)
3288 ;; Match font indicator and leave point at end of sequence: 3288 ;; Match font indicator and leave point at end of sequence:
3289 (cond ((match-string 2) 3289 (cond ((match-string 2)
3290 ;; .ft request found 3290 ;; .ft request found
@@ -3299,7 +3299,8 @@ If optional arg CONCAT is non-nil then join arguments."
3299 (setq font 'default)) 3299 (setq font 'default))
3300 ((match-string 4) 3300 ((match-string 4)
3301 ;; \f escape found 3301 ;; \f escape found
3302 (setq beg (match-beginning 0)) 3302 (setq beg (match-beginning 0)
3303 fescape t)
3303 (woman-match-name)) 3304 (woman-match-name))
3304 (t (setq notfont t))) 3305 (t (setq notfont t)))
3305 (if notfont 3306 (if notfont
@@ -3321,6 +3322,13 @@ If optional arg CONCAT is non-nil then join arguments."
3321 ;; Delete font control line or escape sequence: 3322 ;; Delete font control line or escape sequence:
3322 (cond (beg (delete-region beg (point)) 3323 (cond (beg (delete-region beg (point))
3323 (if (eq font 'previous) (setq font previous-font)))) 3324 (if (eq font 'previous) (setq font previous-font))))
3325 ;; Deal with things like \fB.cvsrc\fR at the start of a line.
3326 ;; After removing the font control codes, this would
3327 ;; otherwise match woman-request-regexp. The "\\&" which is
3328 ;; inserted to prevent this is removed by woman2-process-escapes.
3329 (and fescape
3330 (looking-at woman-request-regexp)
3331 (insert "\\&"))
3324 (woman-set-face previous-pos (point) current-font) 3332 (woman-set-face previous-pos (point) current-font)
3325 (if beg 3333 (if beg
3326 ;; Explicit font control 3334 ;; Explicit font control
@@ -3665,39 +3673,39 @@ expression in parentheses. Leaves point after the value."
3665 (unwind-protect 3673 (unwind-protect
3666 (while 3674 (while
3667 ;; Find next control line: 3675 ;; Find next control line:
3668 (re-search-forward woman-request-regexp nil t) 3676 (re-search-forward woman-request-regexp nil t)
3669 (cond 3677 (cond
3670 ;; Construct woman function to call: 3678 ;; Construct woman function to call:
3671 ((setq fn (intern-soft 3679 ((setq fn (intern-soft
3672 (concat "woman2-" 3680 (concat "woman2-"
3673 (setq request (match-string 1))))) 3681 (setq request (match-string 1)))))
3674 ;; Delete request or macro name: 3682 ;; Delete request or macro name:
3675 (woman-delete-match 0)) 3683 (woman-delete-match 0))
3676 ;; Unrecognised request: 3684 ;; Unrecognised request:
3677 ((prog1 nil 3685 ((prog1 nil
3678 ;; (WoMan-warn ".%s request ignored!" request) 3686 ;; (WoMan-warn ".%s request ignored!" request)
3679 (WoMan-warn-ignored request "ignored!") 3687 (WoMan-warn-ignored request "ignored!")
3680 ;; (setq fn 'woman2-LP) 3688 ;; (setq fn 'woman2-LP)
3681 ;; AVOID LEAVING A BLANK LINE! 3689 ;; AVOID LEAVING A BLANK LINE!
3682 ;; (setq fn 'woman2-format-paragraphs) 3690 ;; (setq fn 'woman2-format-paragraphs)
3683 )) 3691 ))
3684 ;; .LP assumes it is at eol and leaves a (blank) line, 3692 ;; .LP assumes it is at eol and leaves a (blank) line,
3685 ;; so leave point at end of line before paragraph: 3693 ;; so leave point at end of line before paragraph:
3686 ((or (looking-at "[ \t]*$") ; no argument 3694 ((or (looking-at "[ \t]*$") ; no argument
3687 woman-ignore) ; ignore all 3695 woman-ignore) ; ignore all
3688 ;; (beginning-of-line) (kill-line) 3696 ;; (beginning-of-line) (kill-line)
3689 ;; AVOID LEAVING A BLANK LINE! 3697 ;; AVOID LEAVING A BLANK LINE!
3690 (beginning-of-line) (woman-delete-line 1)) 3698 (beginning-of-line) (woman-delete-line 1))
3691 (t (end-of-line) (insert ?\n)) 3699 (t (end-of-line) (insert ?\n))
3692 ) 3700 )
3693 (if (not (or fn 3701 (if (not (or fn
3694 (and (not (memq (following-char) '(?. ?'))) 3702 (and (not (memq (following-char) '(?. ?')))
3695 (setq fn 'woman2-format-paragraphs)))) 3703 (setq fn 'woman2-format-paragraphs))))
3696 () 3704 ()
3697 ;; Find next control line: 3705 ;; Find next control line:
3698 (set-marker to (woman-find-next-control-line)) 3706 (set-marker to (woman-find-next-control-line))
3699 ;; Call the appropriate function: 3707 ;; Call the appropriate function:
3700 (funcall fn to))) 3708 (funcall fn to)))
3701 (if (not (eobp)) ; This should not happen, but ... 3709 (if (not (eobp)) ; This should not happen, but ...
3702 (woman2-format-paragraphs (copy-marker (point-max) t) 3710 (woman2-format-paragraphs (copy-marker (point-max) t)
3703 woman-left-margin)) 3711 woman-left-margin))
@@ -4193,7 +4201,27 @@ If tag doesn't fit, place it on a separate line."
4193 (let ((i (woman2-get-prevailing-indent 'leave-eol))) 4201 (let ((i (woman2-get-prevailing-indent 'leave-eol)))
4194 (beginning-of-line) 4202 (beginning-of-line)
4195 (woman-leave-blank-lines) ; must be here, 4203 (woman-leave-blank-lines) ; must be here,
4196 (woman2-tagged-paragraph to i)))) 4204 ;;
4205 ;; The cvs.1 manpage contains some (possibly buggy) syntax that
4206 ;; confuses woman, although the man program displays it ok.
4207 ;; Most problems are caused by IP followed by another request on
4208 ;; the next line. Without the following hack, the second request
4209 ;; gets displayed raw in the output. Note that
4210 ;; woman2-tagged-paragraph also contains a hack for similar
4211 ;; issues (eg IP followed by SP).
4212 ;;
4213 ;; i) For IP followed by one or more IPs, we ignore all but the
4214 ;; last (mimic man). The hack in w-t-p would only work for two
4215 ;; consecutive IPs, and would use the first.
4216 ;; ii) For IP followed by SP followed by one or more requests,
4217 ;; do nothing. At least in cvs.1, there is usually another IP in
4218 ;; there somewhere.
4219 (unless (or (looking-at "^\\.IP")
4220 (and (looking-at "^\\.sp")
4221 (save-excursion
4222 (and (zerop (forward-line 1))
4223 (looking-at woman-request-regexp)))))
4224 (woman2-tagged-paragraph to i)))))
4197 4225
4198(defun woman-find-next-control-line-carefully () 4226(defun woman-find-next-control-line-carefully ()
4199 "Find and return start of next control line, even if already there!" 4227 "Find and return start of next control line, even if already there!"
@@ -4208,17 +4236,21 @@ Format paragraphs upto TO. Set prevailing indent to I."
4208 (if (not (looking-at "\\s *$")) ; non-empty tag 4236 (if (not (looking-at "\\s *$")) ; non-empty tag
4209 (setq woman-leave-blank-lines nil)) 4237 (setq woman-leave-blank-lines nil))
4210 4238
4211 ;; Temporary hack for bash.1 and groff_mmse.7 until code is revised 4239 ;; Temporary hack for bash.1, cvs.1 and groff_mmse.7 until code is revised
4212 ;; to process all requests uniformly: 4240 ;; to process all requests uniformly.
4213 (cond ((and (= (point) to) (looking-at "^[.'][ \t]*\\(PD\\|br\\|ta\\) *")) 4241 ;; This hack deals with IP requests followed by other requests (eg
4214 (if (string= (match-string 1) "br") 4242 ;; SP) on the very next line. We skip over the SP, otherwise it gets
4215 (woman-delete-line 1) 4243 ;; inserted raw in the rendered output.
4216 (woman-delete-match 0) 4244 (cond ((and (= (point) to)
4217 (if (string= (match-string 1) "ta") ; for GetInt.3 4245 (looking-at "^[.'][ \t]*\\(PD\\|br\\|ta\\|sp\\) *"))
4218 (woman2-ta to) 4246 (if (member (match-string 1) '("br" "sp"))
4219 (woman-set-interparagraph-distance))) 4247 (woman-delete-line 1)
4220 (set-marker to (woman-find-next-control-line-carefully)) 4248 (woman-delete-match 0)
4221 )) 4249 (if (string= (match-string 1) "ta") ; for GetInt.3
4250 (woman2-ta to)
4251 (woman-set-interparagraph-distance)))
4252 (set-marker to (woman-find-next-control-line-carefully))
4253 ))
4222 4254
4223 (let ((tag (point))) 4255 (let ((tag (point)))
4224 (woman-reset-nospace) 4256 (woman-reset-nospace)
@@ -4274,6 +4306,7 @@ Delete line from point and eol unless LEAVE-EOL is non-nil."
4274 (let ((i (woman-get-numeric-arg))) 4306 (let ((i (woman-get-numeric-arg)))
4275 (woman-delete-line) (or leave-eol (delete-char 1)) 4307 (woman-delete-line) (or leave-eol (delete-char 1))
4276 ;; i = 0 if the argument was not a number 4308 ;; i = 0 if the argument was not a number
4309 ;; FIXME should this be >= 0? How else to reset to 0 indent?
4277 (if (> i 0) (setq woman-prevailing-indent i)))) 4310 (if (> i 0) (setq woman-prevailing-indent i))))
4278 woman-prevailing-indent) 4311 woman-prevailing-indent)
4279 4312
diff --git a/lisp/xml.el b/lisp/xml.el
index 5b694d50f12..f7045779ca4 100644
--- a/lisp/xml.el
+++ b/lisp/xml.el
@@ -76,8 +76,12 @@
76 76
77;;; Code: 77;;; Code:
78 78
79;; Note that {buffer-substring,match-string}-no-properties were 79;; Note that buffer-substring and match-string were formerly used in
80;; formerly used in several places, but that removes composition info. 80;; several places, because the -no-properties variants remove
81;; composition info. However, after some discussion on emacs-devel,
82;; the consensus was that the speed of the -no-properties variants was
83;; a worthwhile tradeoff especially since we're usually parsing files
84;; instead of hand-crafted XML.
81 85
82;;******************************************************************* 86;;*******************************************************************
83;;** 87;;**
@@ -406,7 +410,7 @@ Returns one of:
406 (unless (search-forward "]]>" nil t) 410 (unless (search-forward "]]>" nil t)
407 (error "XML: (Not Well Formed) CDATA section does not end anywhere in the document")) 411 (error "XML: (Not Well Formed) CDATA section does not end anywhere in the document"))
408 (concat 412 (concat
409 (buffer-substring pos (match-beginning 0)) 413 (buffer-substring-no-properties pos (match-beginning 0))
410 (xml-parse-string)))) 414 (xml-parse-string))))
411 ;; DTD for the document 415 ;; DTD for the document
412 ((looking-at "<!DOCTYPE") 416 ((looking-at "<!DOCTYPE")
@@ -427,7 +431,7 @@ Returns one of:
427 (goto-char (match-end 1)) 431 (goto-char (match-end 1))
428 432
429 ;; Parse this node 433 ;; Parse this node
430 (let* ((node-name (match-string 1)) 434 (let* ((node-name (match-string-no-properties 1))
431 ;; Parse the attribute list. 435 ;; Parse the attribute list.
432 (attrs (xml-parse-attlist xml-ns)) 436 (attrs (xml-parse-attlist xml-ns))
433 children pos) 437 children pos)
@@ -480,7 +484,7 @@ Returns one of:
480 (nreverse children))) 484 (nreverse children)))
481 ;; This was an invalid start tag (Expected ">", but didn't see it.) 485 ;; This was an invalid start tag (Expected ">", but didn't see it.)
482 (error "XML: (Well-Formed) Couldn't parse tag: %s" 486 (error "XML: (Well-Formed) Couldn't parse tag: %s"
483 (buffer-substring (- (point) 10) (+ (point) 1))))))) 487 (buffer-substring-no-properties (- (point) 10) (+ (point) 1)))))))
484 (t ;; (Not one of PI, CDATA, Comment, End tag, or Start tag) 488 (t ;; (Not one of PI, CDATA, Comment, End tag, or Start tag)
485 (unless xml-sub-parser ; Usually, we error out. 489 (unless xml-sub-parser ; Usually, we error out.
486 (error "XML: (Well-Formed) Invalid character")) 490 (error "XML: (Well-Formed) Invalid character"))
@@ -495,7 +499,7 @@ Returns one of:
495 (string (progn (if (search-forward "<" nil t) 499 (string (progn (if (search-forward "<" nil t)
496 (forward-char -1) 500 (forward-char -1)
497 (goto-char (point-max))) 501 (goto-char (point-max)))
498 (buffer-substring pos (point))))) 502 (buffer-substring-no-properties pos (point)))))
499 ;; Clean up the string. As per XML specifications, the XML 503 ;; Clean up the string. As per XML specifications, the XML
500 ;; processor should always pass the whole string to the 504 ;; processor should always pass the whole string to the
501 ;; application. But \r's should be replaced: 505 ;; application. But \r's should be replaced:
@@ -516,7 +520,7 @@ Leave point at the first non-blank character after the tag."
516 (while (looking-at (eval-when-compile 520 (while (looking-at (eval-when-compile
517 (concat "\\(" xml-name-regexp "\\)\\s-*=\\s-*"))) 521 (concat "\\(" xml-name-regexp "\\)\\s-*=\\s-*")))
518 (setq end-pos (match-end 0)) 522 (setq end-pos (match-end 0))
519 (setq name (xml-maybe-do-ns (match-string 1) nil xml-ns)) 523 (setq name (xml-maybe-do-ns (match-string-no-properties 1) nil xml-ns))
520 (goto-char end-pos) 524 (goto-char end-pos)
521 525
522 ;; See also: http://www.w3.org/TR/2000/REC-xml-20001006#AVNormalize 526 ;; See also: http://www.w3.org/TR/2000/REC-xml-20001006#AVNormalize
@@ -535,7 +539,7 @@ Leave point at the first non-blank character after the tag."
535 539
536 ;; Multiple whitespace characters should be replaced with a single one 540 ;; Multiple whitespace characters should be replaced with a single one
537 ;; in the attributes 541 ;; in the attributes
538 (let ((string (match-string 1)) 542 (let ((string (match-string-no-properties 1))
539 (pos 0)) 543 (pos 0))
540 (replace-regexp-in-string "\\s-\\{2,\\}" " " string) 544 (replace-regexp-in-string "\\s-\\{2,\\}" " " string)
541 (let ((expansion (xml-substitute-special string))) 545 (let ((expansion (xml-substitute-special string)))
@@ -575,7 +579,7 @@ This follows the rule [28] in the XML specifications."
575 579
576 ;; Get the name of the document 580 ;; Get the name of the document
577 (looking-at xml-name-regexp) 581 (looking-at xml-name-regexp)
578 (let ((dtd (list (match-string 0) 'dtd)) 582 (let ((dtd (list (match-string-no-properties 0) 'dtd))
579 type element end-pos) 583 type element end-pos)
580 (goto-char (match-end 0)) 584 (goto-char (match-end 0))
581 585
@@ -590,18 +594,18 @@ This follows the rule [28] in the XML specifications."
590 "\\='\\([[:space:][:alnum:]-()+,./:=?;!*#@$_%]*\\)'" 594 "\\='\\([[:space:][:alnum:]-()+,./:=?;!*#@$_%]*\\)'"
591 nil t)) 595 nil t))
592 (error "XML: Missing Public ID")) 596 (error "XML: Missing Public ID"))
593 (let ((pubid (match-string 1))) 597 (let ((pubid (match-string-no-properties 1)))
594 (skip-syntax-forward " ") 598 (skip-syntax-forward " ")
595 (unless (or (re-search-forward "\\='\\([^']*\\)'" nil t) 599 (unless (or (re-search-forward "\\='\\([^']*\\)'" nil t)
596 (re-search-forward "\\=\"\\([^\"]*\\)\"" nil t)) 600 (re-search-forward "\\=\"\\([^\"]*\\)\"" nil t))
597 (error "XML: Missing System ID")) 601 (error "XML: Missing System ID"))
598 (push (list pubid (match-string 1) 'public) dtd))) 602 (push (list pubid (match-string-no-properties 1) 'public) dtd)))
599 ((looking-at "SYSTEM\\s-+") 603 ((looking-at "SYSTEM\\s-+")
600 (goto-char (match-end 0)) 604 (goto-char (match-end 0))
601 (unless (or (re-search-forward "\\='\\([^']*\\)'" nil t) 605 (unless (or (re-search-forward "\\='\\([^']*\\)'" nil t)
602 (re-search-forward "\\=\"\\([^\"]*\\)\"" nil t)) 606 (re-search-forward "\\=\"\\([^\"]*\\)\"" nil t))
603 (error "XML: Missing System ID")) 607 (error "XML: Missing System ID"))
604 (push (list (match-string 1) 'system) dtd))) 608 (push (list (match-string-no-properties 1) 'system) dtd)))
605 (skip-syntax-forward " ") 609 (skip-syntax-forward " ")
606 (if (eq ?> (char-after)) 610 (if (eq ?> (char-after))
607 (forward-char) 611 (forward-char)
@@ -618,7 +622,7 @@ This follows the rule [28] in the XML specifications."
618 ((looking-at 622 ((looking-at
619 "<!ELEMENT\\s-+\\([[:alnum:].%;]+\\)\\s-+\\([^>]+\\)>") 623 "<!ELEMENT\\s-+\\([[:alnum:].%;]+\\)\\s-+\\([^>]+\\)>")
620 624
621 (setq element (match-string 1) 625 (setq element (match-string-no-properties 1)
622 type (match-string-no-properties 2)) 626 type (match-string-no-properties 2))
623 (setq end-pos (match-end 0)) 627 (setq end-pos (match-end 0))
624 628
@@ -629,7 +633,7 @@ This follows the rule [28] in the XML specifications."
629 ((string-match "^ANY[ \t\n\r]*$" type) ;; any type of contents 633 ((string-match "^ANY[ \t\n\r]*$" type) ;; any type of contents
630 (setq type 'any)) 634 (setq type 'any))
631 ((string-match "^(\\(.*\\))[ \t\n\r]*$" type) ;; children ([47]) 635 ((string-match "^(\\(.*\\))[ \t\n\r]*$" type) ;; children ([47])
632 (setq type (xml-parse-elem-type (match-string 1 type)))) 636 (setq type (xml-parse-elem-type (match-string-no-properties 1 type))))
633 ((string-match "^%[^;]+;[ \t\n\r]*$" type) ;; substitution 637 ((string-match "^%[^;]+;[ \t\n\r]*$" type) ;; substitution
634 nil) 638 nil)
635 (t 639 (t
@@ -659,9 +663,9 @@ This follows the rule [28] in the XML specifications."
659 ((looking-at (concat "<!ENTITY[ \t\n\r]*\\(" xml-name-re 663 ((looking-at (concat "<!ENTITY[ \t\n\r]*\\(" xml-name-re
660 "\\)[ \t\n\r]*\\(" xml-entity-value-re 664 "\\)[ \t\n\r]*\\(" xml-entity-value-re
661 "\\)[ \t\n\r]*>")) 665 "\\)[ \t\n\r]*>"))
662 (let ((name (match-string 1)) 666 (let ((name (match-string-no-properties 1))
663 (value (substring (match-string 2) 1 667 (value (substring (match-string-no-properties 2) 1
664 (- (length (match-string 2)) 1)))) 668 (- (length (match-string-no-properties 2)) 1))))
665 (goto-char (match-end 0)) 669 (goto-char (match-end 0))
666 (setq xml-entity-alist 670 (setq xml-entity-alist
667 (append xml-entity-alist 671 (append xml-entity-alist
@@ -681,9 +685,9 @@ This follows the rule [28] in the XML specifications."
681 "\\|'[- \r\na-zA-Z0-9()+,./:=?;!*#@$_%]*'" 685 "\\|'[- \r\na-zA-Z0-9()+,./:=?;!*#@$_%]*'"
682 "[ \t\n\r]+\\(\"[^\"]*\"\\|'[^']*'\\)" 686 "[ \t\n\r]+\\(\"[^\"]*\"\\|'[^']*'\\)"
683 "[ \t\n\r]*>"))) 687 "[ \t\n\r]*>")))
684 (let ((name (match-string 1)) 688 (let ((name (match-string-no-properties 1))
685 (file (substring (match-string 2) 1 689 (file (substring (match-string-no-properties 2) 1
686 (- (length (match-string 2)) 1)))) 690 (- (length (match-string-no-properties 2)) 1))))
687 (goto-char (match-end 0)) 691 (goto-char (match-end 0))
688 (setq xml-entity-alist 692 (setq xml-entity-alist
689 (append xml-entity-alist 693 (append xml-entity-alist
@@ -722,8 +726,8 @@ This follows the rule [28] in the XML specifications."
722 (let (elem modifier) 726 (let (elem modifier)
723 (if (string-match "(\\([^)]+\\))\\([+*?]?\\)" string) 727 (if (string-match "(\\([^)]+\\))\\([+*?]?\\)" string)
724 (progn 728 (progn
725 (setq elem (match-string 1 string) 729 (setq elem (match-string-no-properties 1 string)
726 modifier (match-string 2 string)) 730 modifier (match-string-no-properties 2 string))
727 (if (string-match "|" elem) 731 (if (string-match "|" elem)
728 (setq elem (cons 'choice 732 (setq elem (cons 'choice
729 (mapcar 'xml-parse-elem-type 733 (mapcar 'xml-parse-elem-type
@@ -733,8 +737,8 @@ This follows the rule [28] in the XML specifications."
733 (mapcar 'xml-parse-elem-type 737 (mapcar 'xml-parse-elem-type
734 (split-string elem ","))))))) 738 (split-string elem ",")))))))
735 (if (string-match "[ \t\n\r]*\\([^+*?]+\\)\\([+*?]?\\)" string) 739 (if (string-match "[ \t\n\r]*\\([^+*?]+\\)\\([+*?]?\\)" string)
736 (setq elem (match-string 1 string) 740 (setq elem (match-string-no-properties 1 string)
737 modifier (match-string 2 string)))) 741 modifier (match-string-no-properties 2 string))))
738 742
739 (if (and (stringp elem) (string= elem "#PCDATA")) 743 (if (and (stringp elem) (string= elem "#PCDATA"))
740 (setq elem 'pcdata)) 744 (setq elem 'pcdata))
@@ -765,19 +769,19 @@ This follows the rule [28] in the XML specifications."
765 children end-point) 769 children end-point)
766 (while (string-match "&\\([^;]*\\);" string point) 770 (while (string-match "&\\([^;]*\\);" string point)
767 (setq end-point (match-end 0)) 771 (setq end-point (match-end 0))
768 (let* ((this-part (match-string 1 string)) 772 (let* ((this-part (match-string-no-properties 1 string))
769 (prev-part (substring string point (match-beginning 0))) 773 (prev-part (substring string point (match-beginning 0)))
770 (entity (assoc this-part xml-entity-alist)) 774 (entity (assoc this-part xml-entity-alist))
771 (expansion 775 (expansion
772 (cond ((string-match "#\\([0-9]+\\)" this-part) 776 (cond ((string-match "#\\([0-9]+\\)" this-part)
773 (let ((c (decode-char 777 (let ((c (decode-char
774 'ucs 778 'ucs
775 (string-to-number (match-string 1 this-part))))) 779 (string-to-number (match-string-no-properties 1 this-part)))))
776 (if c (string c)))) 780 (if c (string c))))
777 ((string-match "#x\\([[:xdigit:]]+\\)" this-part) 781 ((string-match "#x\\([[:xdigit:]]+\\)" this-part)
778 (let ((c (decode-char 782 (let ((c (decode-char
779 'ucs 783 'ucs
780 (string-to-number (match-string 1 this-part) 16)))) 784 (string-to-number (match-string-no-properties 1 this-part) 16))))
781 (if c (string c)))) 785 (if c (string c))))
782 (entity 786 (entity
783 (cdr entity)) 787 (cdr entity))