aboutsummaryrefslogtreecommitdiffstats
path: root/lisp
diff options
context:
space:
mode:
authorKaroly Lorentey2004-03-07 15:30:22 +0000
committerKaroly Lorentey2004-03-07 15:30:22 +0000
commit54e81dc64794f315efdf418518a5e00f419cbcbd (patch)
tree4c2dc33f0c1e697b810298ba5e9972341c0d4240 /lisp
parent4388f1016b80bd33a75481b28352ae6c456e386a (diff)
parentee96c8385cf436bf308665e5d6c8fb16c761e8e1 (diff)
downloademacs-54e81dc64794f315efdf418518a5e00f419cbcbd.tar.gz
emacs-54e81dc64794f315efdf418518a5e00f419cbcbd.zip
Merged in changes from CVS HEAD
Patches applied: * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-126 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-127 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-128 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-129 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-130 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-131 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-132 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-133 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-134 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-135 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-136 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-137 Update from CVS git-archimport-id: lorentey@elte.hu--2004/emacs--multi-tty--0--patch-112
Diffstat (limited to 'lisp')
-rw-r--r--lisp/ChangeLog213
-rw-r--r--lisp/Makefile.in22
-rw-r--r--lisp/allout.el8
-rw-r--r--lisp/desktop.el47
-rw-r--r--lisp/emulation/tpu-edt.el2
-rw-r--r--lisp/eshell/em-smart.el2
-rw-r--r--lisp/files.el7
-rw-r--r--lisp/font-lock.el20
-rw-r--r--lisp/gdb-ui.el43
-rw-r--r--lisp/gnus/ChangeLog11
-rw-r--r--lisp/gnus/message.el7
-rw-r--r--lisp/help-at-pt.el2
-rw-r--r--lisp/hexl.el17
-rw-r--r--lisp/isearch.el16
-rw-r--r--lisp/mail/mail-utils.el25
-rw-r--r--lisp/mail/rmail.el9
-rw-r--r--lisp/mail/sendmail.el5
-rw-r--r--lisp/mouse-sel.el17
-rw-r--r--lisp/net/browse-url.el16
-rw-r--r--lisp/newcomment.el40
-rw-r--r--lisp/pcvs-info.el7
-rw-r--r--lisp/printing.el34
-rw-r--r--lisp/progmodes/ebnf-iso.el5
-rw-r--r--lisp/progmodes/ebnf-otz.el42
-rw-r--r--lisp/progmodes/ebnf-yac.el4
-rw-r--r--lisp/progmodes/sh-script.el4
-rw-r--r--lisp/ps-print.el54
-rw-r--r--lisp/simple.el23
-rw-r--r--lisp/sort.el23
-rw-r--r--lisp/startup.el4
-rw-r--r--lisp/textmodes/fill.el10
-rw-r--r--lisp/xml.el7
32 files changed, 491 insertions, 255 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index b945703cb57..63081ea5261 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,18 +1,140 @@
12004-03-05 Nick Roberts <nick@nick.uklinux.net>
2
3 * gdb-ui.el (gdb-assembler-mode): Create a second overlay arrow
4 for the assembler buffer.
5 (gdb-assembler-custom): Position the overlay arrow.
6 (gdb-put-arrow, gdb-remove-arrow): Delete functions.
7
82004-03-04 Stefan Monnier <monnier@iro.umontreal.ca>
9
10 * mail/sendmail.el (mail-mode): Set comment-start-skip.
11
12 * newcomment.el (uncomment-region): Allow non-terminated comment.
13 (comment-normalize-vars): Check the user-specified comstart marker.
14
152004-03-04 Jesper Harder <harder@ifa.au.dk>
16
17 * sort.el (sort-columns): Don't use external 'sort' on ms-windows.
18 Otherwise, do use it if the region only contains font-lock text
19 properties.
20
212004-03-04 Masatake YAMATO <jet@gyve.org>
22
23 * hexl.el (hexl-mode): Set `hexl-print-current-point-info'
24 as the callback function for eldoc.
25 (hexl-print-current-point-info): New function.
26 (hexl-current-address): Print the address in both decimal
27 and hexadecimal format.
28
292004-03-04 Richard M. Stallman <rms@gnu.org>
30
31 * mail/rmail.el (rmail-convert-to-babyl-format):
32 Specify t for UNIBYTE when calling mail-unquote-printable-region.
33
34 * mail/mail-utils.el (mail-unquote-printable-region):
35 New arg UNIBYTE.
36
37 * startup.el (command-switch-alist): Doc fix.
38
39 * simple.el (undo): Temporarily set this-command to `undo-start',
40 then set it to `undo' once undo-start returns without error.
41
42 * simple.el (minibuffer-history-sexp-flag): Doc fix.
43
44 * simple.el (kill-line): Don't disregard trailing whitespace
45 in eol condition, if show-trailing-whitespace is set.
46
47 * mouse-sel.el (mouse-sel-has-been-enabled): New var.
48 (mouse-sel-mode): When enabling, set mouse-sel-has-been-enabled.
49 When disabling, restore old values only if mouse-sel-has-been-enabled.
50
51 * isearch.el (isearch-*-char): New arg WANT-BACKSLASH.
52 (isearch-{-char): New function.
53 (isearch-mode-map): Bind { to isearch-{-char.
54
55 * font-lock.el (lisp-font-lock-keywords-2):
56 Turn off the CL with-... and do-... general patterns.
57 Instead, recognize several specific with... and do... constructs.
58
59 * files.el (switch-to-buffer-other-window):
60 Bind same-window-buffer-names and same-window-regexps to nil.
61 (switch-to-buffer-other-frame): Likewise.
62
632004-03-03 Stefan Monnier <monnier@iro.umontreal.ca>
64
65 * textmodes/fill.el (fill-comment-paragraph): Be more careful when
66 recognizing leading comment on code line.
67
682004-03-02 Stefan Monnier <monnier@iro.umontreal.ca>
69
70 * textmodes/fill.el (fill-paragraph): Don't check comment-start-skip,
71 only comment-start (in case the mode hasn't set it).
72
73 * Makefile.in (AUTOGENEL): New var.
74 (bootstrap-prepare): Rename from bootstrap-clean.
75 Don't remove elc files.
76 (maintainer-clean): New target.
77
78 * xml.el (xml-get-attribute-or-nil): Simplify.
79
802004-03-02 Juri Linkov <juri@jurta.org>
81
82 * net/browse-url.el (browse-url-netscape, browse-url-mozilla)
83 (browse-url-galeon, browse-url-epiphany): Encode dollar signs in
84 URL to prevent their substitution with the environment variable
85 values by browsers.
86
872004-03-03 Vinicius Jose Latorre <viniciusjl@ig.com.br>
88
89 * ps-print.el: Doc fix.
90 (ps-print-version): New version number (6.6.3).
91 (ps-right-header, ps-right-footer, ps-left-header, ps-left-footer):
92 Docstring fix.
93 (ps-kill-emacs-check): Check if ps-print temporary buffer is killed
94 before printing.
95 (ps-time-stamp-yyyy-mm-dd): New fun.
96 (ps-time-stamp-iso8601): Alias for ps-time-stamp-yyyy-mm-dd.
97
982004-03-02 Kim F. Storm <storm@cua.dk>
99
100 * gdb-ui.el (gdb-mouse-toggle-breakpoint): Remove debug message.
101
1022004-03-01 Juanma Barranquero <lektu@terra.es>
103
104 * allout.el (allout-rebullet-heading): Fix typo in docstring.
105
106 * desktop.el (desktop-file-version)
107 (desktop-after-read-hook): Fix typos.
108 (desktop-clear-preserve-buffers): Remove redundant info in
109 docstring already shown by the obsolescence message.
110 (desktop-truncate, desktop-internal-v2s)
111 (desktop-value-to-string): Change argument name to match docstring.
112
113 * emulation/tpu-edt.el (tpu-set-mark): Fix typo in docstring.
114
115 * eshell/em-smart.el (eshell-smart-maybe-jump-to-end): Fix typo in
116 docstring.
117
1182004-02-29 Vinicius Jose Latorre <viniciusjl@ig.com.br>
119
120 * printing.el: Replace "As Is..." in PostScript file print/preview by
121 "No Preprocessing...". Suggested by Colin Marquardt
122 <marquardt@zmd.de>.
123 (pr-insert-section-4): Adjust buffer interface.
124
12004-02-29 Kai Grossjohann <kai.grossjohann@gmx.net> 1252004-02-29 Kai Grossjohann <kai.grossjohann@gmx.net>
2 126
3 Version 2.0.39 of Tramp released. 127 Version 2.0.39 of Tramp released.
4 128
5 * net/tramp.el (tramp-handle-file-local-copy) 129 * net/tramp.el (tramp-handle-file-local-copy)
6 (tramp-handle-write-region, tramp-open-connection-rsh): Variable 130 (tramp-handle-write-region, tramp-open-connection-rsh):
7 name typo. Small change. From Patrick Tullmann 131 Variable name typo. Small change. From Patrick Tullmann
8 <tullmann@flux.utah.edu>. 132 <tullmann@flux.utah.edu>.
9 (tramp-process-connection-type): New variable. 133 (tramp-process-connection-type): New variable.
10 (tramp-maybe-open-connection): Use it. 134 (tramp-maybe-open-connection): Use it.
11 (tramp-do-copy-or-rename-via-buffer): Handle KEEP-DATE arg, if 135 (tramp-do-copy-or-rename-via-buffer): Handle KEEP-DATE arg if possible.
12 possible.
13 (tramp-touch): Set last-modified time of a remote file. 136 (tramp-touch): Set last-modified time of a remote file.
14 (tramp-handle-write-region): Say which function is used when 137 (tramp-handle-write-region): Say which function is used when encoding.
15 encoding.
16 138
172004-02-29 Michael Albinus <Michael.Albinus@alcatel.de> 1392004-02-29 Michael Albinus <Michael.Albinus@alcatel.de>
18 140
@@ -28,7 +150,7 @@
28 output. If it was received chunkwise, there have been problems. 150 output. If it was received chunkwise, there have been problems.
29 Remove the "prompt not found" error message; it is obvious. 151 Remove the "prompt not found" error message; it is obvious.
30 Simplify algorithm. 152 Simplify algorithm.
31 (tramp-smb-process-running): Removed. Since we acknowledge the 153 (tramp-smb-process-running): Remove. Since we acknowledge the
32 virtual prompt for shares, there's no need for distinction of 154 virtual prompt for shares, there's no need for distinction of
33 reading shares (process ends afterwards) and interactive mode of 155 reading shares (process ends afterwards) and interactive mode of
34 smblient. 156 smblient.
@@ -38,23 +160,21 @@
38 (tramp-smb-maybe-open-connection): Set `process-connection-type' 160 (tramp-smb-maybe-open-connection): Set `process-connection-type'
39 to 'pty. Suggested by Piet van Oostrum <piet@cs.uu.nl>. 161 to 'pty. Suggested by Piet van Oostrum <piet@cs.uu.nl>.
40 (top-level): Setting default value in `tramp-default-method-alist' 162 (top-level): Setting default value in `tramp-default-method-alist'
41 corrected. Order of USER and HOST have been wrong. Nobody 163 corrected. Order of USER and HOST have been wrong.
42 claimed for months ... 164 Nobody complaimed for months ...
43 (tramp-smb-maybe-open-connection): Use 165 (tramp-smb-maybe-open-connection): Use `tramp-process-connection-type'.
44 `tramp-process-connection-type'. 166 (tramp-smb-open-connection): Clear password cache if login has failed.
45 (tramp-smb-open-connection): Clear password cache if login has 167
46 failed. 168 * net/tramp.el (tramp-completion-mode) Don't check for 'xemacs' but
47
48 * net/tramp.el (tramp-completion-mode) Don't check for 'xemacs but
49 `tramp-unified-filenames'. 169 `tramp-unified-filenames'.
50 (tramp-completion-mode): Make test for XEmacs explicitely. 170 (tramp-completion-mode): Make test for XEmacs explicitely.
51 `event-to-character' can exists in Emacs packages too. Reported 171 `event-to-character' can exists in Emacs packages too.
52 by Matt Swift <swift@alum.mit.edu>. 172 Reported by Matt Swift <swift@alum.mit.edu>.
53 (tramp-buffer-name): Buffer name must contain the user if exists. 173 (tramp-buffer-name): Buffer name must contain the user if exists.
54 Reported by Adrian Phillips <a.phillips@met.no>. 174 Reported by Adrian Phillips <a.phillips@met.no>.
55 (tramp-do-copy-or-rename-file): Handle out-of-band methods. Call 175 (tramp-do-copy-or-rename-file): Handle out-of-band methods.
56 `tramp-do-copy-or-rename-file-out-of-band' this case. 176 Call `tramp-do-copy-or-rename-file-out-of-band' this case.
57 (tramp-do-copy-or-rename-file-out-of-band): Renamed from 177 (tramp-do-copy-or-rename-file-out-of-band): Rename from
58 `tramp-do-copy-or-rename-file-one-local', because it handles also 178 `tramp-do-copy-or-rename-file-one-local', because it handles also
59 the case both files use the same out-of-band method. 179 the case both files use the same out-of-band method.
60 Implementation added. 180 Implementation added.
@@ -70,16 +190,16 @@
70 (tramp-completion-function-alist): It's a defvar now, because we 190 (tramp-completion-function-alist): It's a defvar now, because we
71 want to apply the optimized `tramp-set-completion-function' 191 want to apply the optimized `tramp-set-completion-function'
72 instead of a static list. 192 instead of a static list.
73 (tramp-set-completion-function): Implementation tuned. Avoid 193 (tramp-set-completion-function): Implementation tuned.
74 double entries, and entries where the function or the 194 Avoid double entries, and entries where the function or the
75 file/directory doesn't exist. 195 file/directory doesn't exist.
76 (tramp-parse-shostkeys, tramp-parse-sknownhosts): New functions 196 (tramp-parse-shostkeys, tramp-parse-sknownhosts): New functions
77 for SSH2. 197 for SSH2.
78 (tramp-file-name-handler-alist): Add `dired-compress-file' entry. 198 (tramp-file-name-handler-alist): Add `dired-compress-file' entry.
79 (tramp-handle-dired-compress-file): New function. 199 (tramp-handle-dired-compress-file): New function.
80 (tramp-async-proc): New variable. 200 (tramp-async-proc): New variable.
81 (tramp-handle-shell-command): Adding asynchronous processes. They 201 (tramp-handle-shell-command): Adding asynchronous processes.
82 are far from being perfect, but it works at least for 202 They are far from being perfect, but it works at least for
83 `find-grep-dired' and `find-name-dired' in Emacs 21.4. 203 `find-grep-dired' and `find-name-dired' in Emacs 21.4.
84 (top-level): Require password.el if visible. Should be mandatory 204 (top-level): Require password.el if visible. Should be mandatory
85 once No Gnus has found its way into (X)Emacs. 205 once No Gnus has found its way into (X)Emacs.
@@ -87,8 +207,8 @@
87 `read-passwd' otherwise. `ange-ftp-read-passwd' isn't used as 207 `read-passwd' otherwise. `ange-ftp-read-passwd' isn't used as
88 fallback any longer. 208 fallback any longer.
89 (tramp-clear-passwd): New function. 209 (tramp-clear-passwd): New function.
90 (tramp-process-actions, tramp-process-multi-actions): Clear 210 (tramp-process-actions, tramp-process-multi-actions):
91 password cache if login has failed. 211 Clear password cache if login has failed.
92 212
93 * net/tramp-ftp.el (Commentary): Remove pointer to EFS. It has 213 * net/tramp-ftp.el (Commentary): Remove pointer to EFS. It has
94 its own module. 214 its own module.
@@ -119,8 +239,7 @@
119 relative directory names. 239 relative directory names.
120 (dired-at-point-prompter): Treat directories as a directory, get 240 (dired-at-point-prompter): Treat directories as a directory, get
121 the directory component from files. 241 the directory component from files.
122 (ffap-string-at-point): Return string from region if region is 242 (ffap-string-at-point): Return string from region if region is active.
123 active.
124 (ffap-file-at-point): Remove redundant code. 243 (ffap-file-at-point): Remove redundant code.
125 244
1262004-02-28 Kim F. Storm <storm@cua.dk> 2452004-02-28 Kim F. Storm <storm@cua.dk>
@@ -140,8 +259,8 @@
140 (gdb-put-breakpoint-icon): New defun which displays a breakpoint 259 (gdb-put-breakpoint-icon): New defun which displays a breakpoint
141 icon in fringe (if available), or else as icon or text in display 260 icon in fringe (if available), or else as icon or text in display
142 margin. Creates necessary icons in breakpoint-bitmap, 261 margin. Creates necessary icons in breakpoint-bitmap,
143 breakpoint-enabled-icon, and/or breakpoint-disabled-icon. Also 262 breakpoint-enabled-icon, and/or breakpoint-disabled-icon.
144 make left window margin if required. 263 Also make left window margin if required.
145 (gdb-remove-breakpoint-icons): New defun to remove breakpoint 264 (gdb-remove-breakpoint-icons): New defun to remove breakpoint
146 icons inserted by gdb-put-breakpoint-icon. Remove left margin if 265 icons inserted by gdb-put-breakpoint-icon. Remove left margin if
147 no longer needed. 266 no longer needed.
@@ -152,7 +271,7 @@
1522004-02-27 Kevin Ryde <user42@zip.com.au> 2712004-02-27 Kevin Ryde <user42@zip.com.au>
153 272
154 * info-look.el: In scheme-mode symbol regexp, disallow backquote and 273 * info-look.el: In scheme-mode symbol regexp, disallow backquote and
155 comma, so that it DTRT in macros. 274 comma, so that it DTRT in macros.
156 275
1572004-02-27 Markus Rost <rost@mathematik.uni-bielefeld.de> 2762004-02-27 Markus Rost <rost@mathematik.uni-bielefeld.de>
158 277
@@ -170,11 +289,10 @@
170 289
171 * font-lock.el (font-lock-comment-face, font-lock-string-face) 290 * font-lock.el (font-lock-comment-face, font-lock-string-face)
172 (font-lock-keyword-face, font-lock-function-name-face) 291 (font-lock-keyword-face, font-lock-function-name-face)
173 (font-lock-variable-name-face, font-lock-constant-face): Use 292 (font-lock-variable-name-face, font-lock-constant-face):
174 `min-colors'. 293 Use `min-colors'.
175 294
176 * isearch.el (isearch, isearch-lazy-highlight-face): Use 295 * isearch.el (isearch, isearch-lazy-highlight-face): Use `min-colors'.
177 `min-colors'.
178 296
1792004-02-25 Vinicius Jose Latorre <viniciusjl@ig.com.br> 2972004-02-25 Vinicius Jose Latorre <viniciusjl@ig.com.br>
180 298
@@ -191,8 +309,8 @@
191 * ebnf-abn.el: New file, implements an ABNF parser. 309 * ebnf-abn.el: New file, implements an ABNF parser.
192 310
193 * ebnf2ps.el: Doc fix. Accept ABNF (Augmented BNF). New arrow shapes: 311 * ebnf2ps.el: Doc fix. Accept ABNF (Augmented BNF). New arrow shapes:
194 semi-up-hollow, semi-up-full, semi-down-hollow and semi-down-full. Fix 312 semi-up-hollow, semi-up-full, semi-down-hollow and semi-down-full.
195 a bug on productions like test = {"test"}* | ( "tt" ["test"] ). 313 Fix a bug on productions like test = {"test"}* | ( "tt" ["test"] ).
196 Reported by Markus Dreyer <mdreyer@ix.urz.uni-heidelberg.de>. 314 Reported by Markus Dreyer <mdreyer@ix.urz.uni-heidelberg.de>.
197 (ebnf-version): New version number (4.0). 315 (ebnf-version): New version number (4.0).
198 (ebnf-print-directory, ebnf-print-file, ebnf-spool-directory) 316 (ebnf-print-directory, ebnf-print-file, ebnf-spool-directory)
@@ -238,10 +356,9 @@
238 (gdb-var-delete): Make interactive (really). 356 (gdb-var-delete): Make interactive (really).
239 (gdb-edit-value): Make non-interactive. 357 (gdb-edit-value): Make non-interactive.
240 358
241 * progmodes/gud.el (gud-install-speedbar-variables): Bind 359 * progmodes/gud.el (gud-speedbar-menu-items):
242 gdb-var-delete to "D". 360 Add gdb-var-delete and, indirectly, gdb-edit-value.
243 (gud-speedbar-menu-items): Add gdb-var-delete and, indirectly, 361 (gud-install-speedbar-variables): Bind gdb-var-delete to "D".
244 gdb-edit-value.
245 (gud-speedbar-buttons): Remove gdb-var-delete from tag-line. 362 (gud-speedbar-buttons): Remove gdb-var-delete from tag-line.
246 (gud-gdb-marker-filter): Add comment for annotations. 363 (gud-gdb-marker-filter): Add comment for annotations.
247 364
@@ -260,8 +377,7 @@
2602004-02-21 Stephen Compall <s11@member.fsf.org> 3772004-02-21 Stephen Compall <s11@member.fsf.org>
261 378
262 * saveplace.el (save-place-forget-unreadable-files) 379 * saveplace.el (save-place-forget-unreadable-files)
263 (save-place-save-skipped, save-place-skip-check-regexp): New 380 (save-place-save-skipped, save-place-skip-check-regexp): New vars.
264 defcustoms.
265 (save-place-forget-unreadable-files): New function. 381 (save-place-forget-unreadable-files): New function.
266 (save-place-alist-to-file): Use it to filter out files that are 382 (save-place-alist-to-file): Use it to filter out files that are
267 no longer readable. 383 no longer readable.
@@ -293,7 +409,7 @@
293 409
2942004-02-20 John Wiegley <johnw@newartisans.com> 4102004-02-20 John Wiegley <johnw@newartisans.com>
295 411
296 * eshell/em-pred.el (eshell-modifier-alist): Changed the "eval 412 * eshell/em-pred.el (eshell-modifier-alist): Change the "eval
297 again" modifier from 'e' to 'E', since 'e' is also used by the 413 again" modifier from 'e' to 'E', since 'e' is also used by the
298 "file extension" modifier. 414 "file extension" modifier.
299 415
@@ -312,8 +428,8 @@
312 428
313 * gdb-ui.el (gdb-use-colon-colon-notation): Set default to nil for 429 * gdb-ui.el (gdb-use-colon-colon-notation): Set default to nil for
314 case of variables defined in compound statements. 430 case of variables defined in compound statements.
315 (gdb-setup-windows, gdb-source-info, gdb-source-info): Simplify 431 (gdb-setup-windows, gdb-source-info, gdb-source-info):
316 constructions using switch-to-buffer. 432 Simplify constructions using switch-to-buffer.
317 433
3182004-02-19 Simon Josefsson <jas@extundo.com> 4342004-02-19 Simon Josefsson <jas@extundo.com>
319 435
@@ -401,7 +517,7 @@
401 * rmail-spam-filter.el: (vm-use-spam-filter) 517 * rmail-spam-filter.el: (vm-use-spam-filter)
402 (rsf-min-region-length-added-to-spam-list): New variables. 518 (rsf-min-region-length-added-to-spam-list): New variables.
403 (rsf-bbdb-auto-delete-spam-bbdb-entries): Rename from 519 (rsf-bbdb-auto-delete-spam-bbdb-entries): Rename from
404 rmail-bbdb-auto-delete-spam-entries. Added cc: to recipients for 520 rmail-bbdb-auto-delete-spam-entries. Add cc: to recipients for
405 spam testing. Don't delete spam message if automatic deletion 521 spam testing. Don't delete spam message if automatic deletion
406 after output via variable rmail-delete-after-output is turned on. 522 after output via variable rmail-delete-after-output is turned on.
407 (rsf-bbdb-dont-create-entries-for-deleted-messages): Rename from 523 (rsf-bbdb-dont-create-entries-for-deleted-messages): Rename from
@@ -571,6 +687,7 @@
571 (diff, diff-backup): Use it. 687 (diff, diff-backup): Use it.
572 (diff): Clean up the args construction. Use backquote. 688 (diff): Clean up the args construction. Use backquote.
573 Use listp instead of consp to avoid putting a nil arg. 689 Use listp instead of consp to avoid putting a nil arg.
690 (diff): Add a revert-buffer function.
574 691
5752004-02-10 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> 6922004-02-10 Jan Dj,Ad(Brv <jan.h.d@swipnet.se>
576 693
@@ -3061,7 +3178,7 @@
3061 3178
30622003-08-26 Glenn Morris <gmorris@ast.cam.ac.uk> 31792003-08-26 Glenn Morris <gmorris@ast.cam.ac.uk>
3063 3180
3064 * mail/smtpmail.el Fix previous change: 3181 * mail/smtpmail.el: Fix previous change.
3065 (smtpmail-send-queued-mail): Set smtpmail-mail-address before 3182 (smtpmail-send-queued-mail): Set smtpmail-mail-address before
3066 calling smtpmail-via-smtp. 3183 calling smtpmail-via-smtp.
3067 (smtpmail-via-smtp): Add fall-back values for envelope-from. 3184 (smtpmail-via-smtp): Add fall-back values for envelope-from.
diff --git a/lisp/Makefile.in b/lisp/Makefile.in
index fad13704c3c..e1c6b779db2 100644
--- a/lisp/Makefile.in
+++ b/lisp/Makefile.in
@@ -1,5 +1,5 @@
1# Maintenance productions for the Lisp directory 1# Maintenance productions for the Lisp directory
2# Copyright (C) 2000, 2001, 2003 Free Software Foundation, Inc. 2# Copyright (C) 2000, 01, 03, 2004 Free Software Foundation, Inc.
3 3
4# This file is part of GNU Emacs. 4# This file is part of GNU Emacs.
5 5
@@ -110,6 +110,13 @@ DONTCOMPILE = \
110 $(lisp)/term/wyse50.el \ 110 $(lisp)/term/wyse50.el \
111 $(lisp)/version.el 111 $(lisp)/version.el
112 112
113# Elisp files auto-generated.
114AUTOGENEL = loaddefs.el \
115 cus-load.el \
116 finder-inf.el \
117 subdirs.el \
118 eshell/esh-groups.el
119
113# Files to compile before others during a bootstrap. This is done to 120# Files to compile before others during a bootstrap. This is done to
114# speed up the bootstrap process. The CC files are compiled first 121# speed up the bootstrap process. The CC files are compiled first
115# because CC mode tweaks the compilation process, and requiring 122# because CC mode tweaks the compilation process, and requiring
@@ -131,14 +138,14 @@ emacs = EMACSLOADPATH=$(lisp) $(EMACS) $(EMACSOPT)
131 138
132setwins=subdirs=`find $$wd -type d -print`; \ 139setwins=subdirs=`find $$wd -type d -print`; \
133 for file in $$subdirs; do \ 140 for file in $$subdirs; do \
134 case $$file in */Old | */RCS | */CVS | */CVS/* | */.arch-ids | */.arch-ids/* | */=* ) ;; \ 141 case $$file in */Old | */RCS | */CVS | */CVS/* | */.* | */.*/* | */=* ) ;; \
135 *) wins="$$wins $$file" ;; \ 142 *) wins="$$wins $$file" ;; \
136 esac; \ 143 esac; \
137 done 144 done
138 145
139setwins_almost=subdirs=`find $$wd -type d -print`; \ 146setwins_almost=subdirs=`find $$wd -type d -print`; \
140 for file in $$subdirs; do \ 147 for file in $$subdirs; do \
141 case $$file in */Old | */RCS | */CVS | */CVS/* | */=* | */obsolete | */term ) ;; \ 148 case $$file in */Old | */RCS | */CVS | */CVS/* | */.* | */.*/* | */=* | */obsolete | */term ) ;; \
142 *) wins="$$wins $$file" ;; \ 149 *) wins="$$wins $$file" ;; \
143 esac; \ 150 esac; \
144 done 151 done
@@ -294,11 +301,8 @@ $(lisp)/progmodes/cc-mode.elc: \
294# it's necessary for generating the binary (because loaddefs.el is an 301# it's necessary for generating the binary (because loaddefs.el is an
295# automatically generated file, we don't want to store it in the source 302# automatically generated file, we don't want to store it in the source
296# repository). 303# repository).
297#
298# Remove compiled Lisp files so that bootstrap-emacs will be built from
299# sources only.
300 304
301bootstrap-clean: 305bootstrap-prepare:
302 if test -x $(EMACS); then \ 306 if test -x $(EMACS); then \
303 $(MAKE) $(MFLAGS) autoloads; \ 307 $(MAKE) $(MFLAGS) autoloads; \
304 else \ 308 else \
@@ -306,7 +310,9 @@ bootstrap-clean:
306 cp $(lisp)/ldefs-boot.el $(lisp)/loaddefs.el; \ 310 cp $(lisp)/ldefs-boot.el $(lisp)/loaddefs.el; \
307 fi \ 311 fi \
308 fi 312 fi
309 cd $(lisp); rm -f *.elc */*.elc 313
314maintainer-clean:
315 cd $(lisp); rm -f *.elc */*.elc $(AUTOGENEL)
310 316
311# Generate/update files for the bootstrap process. 317# Generate/update files for the bootstrap process.
312 318
diff --git a/lisp/allout.el b/lisp/allout.el
index 32ecb35e07e..bd5cd6c36ee 100644
--- a/lisp/allout.el
+++ b/lisp/allout.el
@@ -5,7 +5,7 @@
5;; Author: Ken Manheimer <klm@zope.com> 5;; Author: Ken Manheimer <klm@zope.com>
6;; Maintainer: Ken Manheimer <klm@zope.com> 6;; Maintainer: Ken Manheimer <klm@zope.com>
7;; Created: Dec 1991 - first release to usenet 7;; Created: Dec 1991 - first release to usenet
8;; Version: $Id: allout.el,v 1.45 2003/10/16 16:28:30 eliz Exp $|| 8;; Version: $Id: allout.el,v 1.46 2004/03/01 22:44:04 lektu Exp $||
9;; Keywords: outlines mode wp languages 9;; Keywords: outlines mode wp languages
10 10
11;; This file is part of GNU Emacs. 11;; This file is part of GNU Emacs.
@@ -508,7 +508,7 @@ behavior."
508;;;_ : Version 508;;;_ : Version
509;;;_ = allout-version 509;;;_ = allout-version
510(defvar allout-version 510(defvar allout-version
511 (let ((rcs-rev "$Revision: 1.45 $")) 511 (let ((rcs-rev "$Revision: 1.46 $"))
512 (condition-case err 512 (condition-case err
513 (save-match-data 513 (save-match-data
514 (string-match "Revision: \\([0-9]+\\.[0-9]+\\)" rcs-rev) 514 (string-match "Revision: \\([0-9]+\\.[0-9]+\\)" rcs-rev)
@@ -3015,9 +3015,9 @@ Third arg NUMBER-CONTROL can force the prefix to or away from
3015numbered form. It has effect only if `allout-numbered-bullet' is 3015numbered form. It has effect only if `allout-numbered-bullet' is
3016non-nil and soliciting was not explicitly invoked (via first arg). 3016non-nil and soliciting was not explicitly invoked (via first arg).
3017Its effect, numbering or denumbering, then depends on the setting 3017Its effect, numbering or denumbering, then depends on the setting
3018of the forth arg, INDEX. 3018of the fourth arg, INDEX.
3019 3019
3020If NUMBER-CONTROL is non-nil and forth arg INDEX is nil, then the 3020If NUMBER-CONTROL is non-nil and fourth arg INDEX is nil, then the
3021prefix of the topic is forced to be non-numbered. Null index and 3021prefix of the topic is forced to be non-numbered. Null index and
3022non-nil NUMBER-CONTROL forces denumbering. Non-nil INDEX (and 3022non-nil NUMBER-CONTROL forces denumbering. Non-nil INDEX (and
3023non-nil NUMBER-CONTROL) forces a numbered-prefix form. If non-nil 3023non-nil NUMBER-CONTROL) forces a numbered-prefix form. If non-nil
diff --git a/lisp/desktop.el b/lisp/desktop.el
index 0cff5e5a21f..beac1f39005 100644
--- a/lisp/desktop.el
+++ b/lisp/desktop.el
@@ -90,7 +90,7 @@
90 (mapcar 'require '(info dired reporter))) 90 (mapcar 'require '(info dired reporter)))
91 91
92(defvar desktop-file-version "206" 92(defvar desktop-file-version "206"
93 "Verion number of desktop file format. 93 "Version number of desktop file format.
94Written into the desktop file and used at desktop read to provide 94Written into the desktop file and used at desktop read to provide
95backward compatibility.") 95backward compatibility.")
96 96
@@ -163,7 +163,7 @@ May e.g. be used to show a dired buffer."
163 :group 'desktop) 163 :group 'desktop)
164 164
165(defcustom desktop-after-read-hook nil 165(defcustom desktop-after-read-hook nil
166 "Normal hook run after a sucessful `desktop-read'. 166 "Normal hook run after a successful `desktop-read'.
167May e.g. be used to show a buffer list." 167May e.g. be used to show a buffer list."
168 :type 'hook 168 :type 'hook
169 :group 'desktop) 169 :group 'desktop)
@@ -212,8 +212,7 @@ to the value obtained by evaluateing FORM."
212;; Maintained for backward compatibility 212;; Maintained for backward compatibility
213(defcustom desktop-clear-preserve-buffers nil 213(defcustom desktop-clear-preserve-buffers nil
214 "*List of buffer names that `desktop-clear' should not delete. 214 "*List of buffer names that `desktop-clear' should not delete.
215This variable is maintained for backward compatibility only. Use 215This variable is maintained for backward compatibility only."
216`desktop-clear-preserve-buffers-regexp' instead."
217 :type '(repeat string) 216 :type '(repeat string)
218 :group 'desktop) 217 :group 'desktop)
219(make-obsolete-variable 'desktop-clear-preserve-buffers 218(make-obsolete-variable 'desktop-clear-preserve-buffers
@@ -349,9 +348,9 @@ this table."
349 "Hooks run after all buffers are loaded; intended for internal use.") 348 "Hooks run after all buffers are loaded; intended for internal use.")
350 349
351;; ---------------------------------------------------------------------------- 350;; ----------------------------------------------------------------------------
352(defun desktop-truncate (l n) 351(defun desktop-truncate (list n)
353 "Truncate LIST to at most N elements destructively." 352 "Truncate LIST to at most N elements destructively."
354 (let ((here (nthcdr (1- n) l))) 353 (let ((here (nthcdr (1- n) list)))
355 (if (consp here) 354 (if (consp here)
356 (setcdr here nil)))) 355 (setcdr here nil))))
357 356
@@ -424,22 +423,22 @@ is nil, ask the user where to save the desktop."
424 value))) 423 value)))
425 424
426;; ---------------------------------------------------------------------------- 425;; ----------------------------------------------------------------------------
427(defun desktop-internal-v2s (val) 426(defun desktop-internal-v2s (value)
428 "Convert VALUE to a pair (QUOTE . TXT); (eval (read TXT)) gives VALUE. 427 "Convert VALUE to a pair (QUOTE . TXT); (eval (read TXT)) gives VALUE.
429TXT is a string that when read and evaluated yields value. 428TXT is a string that when read and evaluated yields value.
430QUOTE may be `may' (value may be quoted), 429QUOTE may be `may' (value may be quoted),
431`must' (values must be quoted), or nil (value may not be quoted)." 430`must' (values must be quoted), or nil (value may not be quoted)."
432 (cond 431 (cond
433 ((or (numberp val) (null val) (eq t val)) 432 ((or (numberp value) (null value) (eq t value))
434 (cons 'may (prin1-to-string val))) 433 (cons 'may (prin1-to-string value)))
435 ((stringp val) 434 ((stringp value)
436 (let ((copy (copy-sequence val))) 435 (let ((copy (copy-sequence value)))
437 (set-text-properties 0 (length copy) nil copy) 436 (set-text-properties 0 (length copy) nil copy)
438 ;; Get rid of text properties because we cannot read them 437 ;; Get rid of text properties because we cannot read them
439 (cons 'may (prin1-to-string copy)))) 438 (cons 'may (prin1-to-string copy))))
440 ((symbolp val) 439 ((symbolp value)
441 (cons 'must (prin1-to-string val))) 440 (cons 'must (prin1-to-string value)))
442 ((vectorp val) 441 ((vectorp value)
443 (let* ((special nil) 442 (let* ((special nil)
444 (pass1 (mapcar 443 (pass1 (mapcar
445 (lambda (el) 444 (lambda (el)
@@ -447,7 +446,7 @@ QUOTE may be `may' (value may be quoted),
447 (if (null (car res)) 446 (if (null (car res))
448 (setq special t)) 447 (setq special t))
449 res)) 448 res))
450 val))) 449 value)))
451 (if special 450 (if special
452 (cons nil (concat "(vector " 451 (cons nil (concat "(vector "
453 (mapconcat (lambda (el) 452 (mapconcat (lambda (el)
@@ -458,8 +457,8 @@ QUOTE may be `may' (value may be quoted),
458 " ") 457 " ")
459 ")")) 458 ")"))
460 (cons 'may (concat "[" (mapconcat 'cdr pass1 " ") "]"))))) 459 (cons 'may (concat "[" (mapconcat 'cdr pass1 " ") "]")))))
461 ((consp val) 460 ((consp value)
462 (let ((p val) 461 (let ((p value)
463 newlist 462 newlist
464 use-list* 463 use-list*
465 anynil) 464 anynil)
@@ -489,13 +488,13 @@ QUOTE may be `may' (value may be quoted),
489 ")")) 488 ")"))
490 (cons 'must 489 (cons 'must
491 (concat "(" (mapconcat 'cdr newlist " ") ")"))))) 490 (concat "(" (mapconcat 'cdr newlist " ") ")")))))
492 ((subrp val) 491 ((subrp value)
493 (cons nil (concat "(symbol-function '" 492 (cons nil (concat "(symbol-function '"
494 (substring (prin1-to-string val) 7 -1) 493 (substring (prin1-to-string value) 7 -1)
495 ")"))) 494 ")")))
496 ((markerp val) 495 ((markerp value)
497 (let ((pos (prin1-to-string (marker-position val))) 496 (let ((pos (prin1-to-string (marker-position value)))
498 (buf (prin1-to-string (buffer-name (marker-buffer val))))) 497 (buf (prin1-to-string (buffer-name (marker-buffer value)))))
499 (cons nil (concat "(let ((mk (make-marker)))" 498 (cons nil (concat "(let ((mk (make-marker)))"
500 " (add-hook 'desktop-delay-hook" 499 " (add-hook 'desktop-delay-hook"
501 " (list 'lambda '() (list 'set-marker mk " 500 " (list 'lambda '() (list 'set-marker mk "
@@ -504,12 +503,12 @@ QUOTE may be `may' (value may be quoted),
504 (cons 'may "\"Unprintable entity\"")))) 503 (cons 'may "\"Unprintable entity\""))))
505 504
506;; ---------------------------------------------------------------------------- 505;; ----------------------------------------------------------------------------
507(defun desktop-value-to-string (val) 506(defun desktop-value-to-string (value)
508 "Convert VALUE to a string that when read evaluates to the same value. 507 "Convert VALUE to a string that when read evaluates to the same value.
509Not all types of values are supported." 508Not all types of values are supported."
510 (let* ((print-escape-newlines t) 509 (let* ((print-escape-newlines t)
511 (float-output-format nil) 510 (float-output-format nil)
512 (quote.txt (desktop-internal-v2s val)) 511 (quote.txt (desktop-internal-v2s value))
513 (quote (car quote.txt)) 512 (quote (car quote.txt))
514 (txt (cdr quote.txt))) 513 (txt (cdr quote.txt)))
515 (if (eq quote 'must) 514 (if (eq quote 'must)
diff --git a/lisp/emulation/tpu-edt.el b/lisp/emulation/tpu-edt.el
index 8e290553a61..b164588d8f1 100644
--- a/lisp/emulation/tpu-edt.el
+++ b/lisp/emulation/tpu-edt.el
@@ -551,7 +551,7 @@ version of Emacs."
551 (t (mark)))) 551 (t (mark))))
552 552
553(defun tpu-set-mark (pos) 553(defun tpu-set-mark (pos)
554 "TPU-edt verion of the `set-mark' function. 554 "TPU-edt version of the `set-mark' function.
555Sets the mark at POS and activates the region according to the 555Sets the mark at POS and activates the region according to the
556current version of Emacs." 556current version of Emacs."
557 (set-mark pos) 557 (set-mark pos)
diff --git a/lisp/eshell/em-smart.el b/lisp/eshell/em-smart.el
index 6725f96cc84..fb539487204 100644
--- a/lisp/eshell/em-smart.el
+++ b/lisp/eshell/em-smart.el
@@ -242,7 +242,7 @@ The options are `begin', `after' or `end'."
242 242
243(defun eshell-smart-maybe-jump-to-end () 243(defun eshell-smart-maybe-jump-to-end ()
244 "Jump to the end of the input buffer. 244 "Jump to the end of the input buffer.
245This is done whenever a command exits sucessfully and both the command 245This is done whenever a command exits successfully and both the command
246and the end of the buffer are still visible." 246and the end of the buffer are still visible."
247 (when (and (= eshell-last-command-status 0) 247 (when (and (= eshell-last-command-status 0)
248 (if (eq eshell-review-quick-commands 'not-even-short-output) 248 (if (eq eshell-review-quick-commands 'not-even-short-output)
diff --git a/lisp/files.el b/lisp/files.el
index 3b178af029b..a63aea99114 100644
--- a/lisp/files.el
+++ b/lisp/files.el
@@ -855,7 +855,9 @@ do not put this buffer at the front of the list of recently selected ones.
855This uses the function `display-buffer' as a subroutine; see its 855This uses the function `display-buffer' as a subroutine; see its
856documentation for additional customization information." 856documentation for additional customization information."
857 (interactive "BSwitch to buffer in other window: ") 857 (interactive "BSwitch to buffer in other window: ")
858 (let ((pop-up-windows t)) 858 (let ((pop-up-windows t)
859 ;; Don't let these interfere.
860 same-window-buffer-names same-window-regexps)
859 (pop-to-buffer buffer t norecord))) 861 (pop-to-buffer buffer t norecord)))
860 862
861(defun switch-to-buffer-other-frame (buffer &optional norecord) 863(defun switch-to-buffer-other-frame (buffer &optional norecord)
@@ -866,7 +868,8 @@ do not put this buffer at the front of the list of recently selected ones.
866This uses the function `display-buffer' as a subroutine; see its 868This uses the function `display-buffer' as a subroutine; see its
867documentation for additional customization information." 869documentation for additional customization information."
868 (interactive "BSwitch to buffer in other frame: ") 870 (interactive "BSwitch to buffer in other frame: ")
869 (let ((pop-up-frames t)) 871 (let ((pop-up-frames t)
872 same-window-buffer-names same-window-regexps)
870 (pop-to-buffer buffer t norecord) 873 (pop-to-buffer buffer t norecord)
871 (raise-frame (window-frame (selected-window))))) 874 (raise-frame (window-frame (selected-window)))))
872 875
diff --git a/lisp/font-lock.el b/lisp/font-lock.el
index 4deacb9e87f..ad69cdd960c 100644
--- a/lisp/font-lock.el
+++ b/lisp/font-lock.el
@@ -1890,10 +1890,13 @@ This function could be MATCHER in a MATCH-ANCHORED `font-lock-keywords' item."
1890 "condition-case" "track-mouse" 1890 "condition-case" "track-mouse"
1891 "eval-after-load" "eval-and-compile" "eval-when-compile" 1891 "eval-after-load" "eval-and-compile" "eval-when-compile"
1892 "eval-when" 1892 "eval-when"
1893 "with-category-table"
1893 "with-current-buffer" "with-electric-help" 1894 "with-current-buffer" "with-electric-help"
1895 "with-local-quit" "with-no-warnings"
1894 "with-output-to-string" "with-output-to-temp-buffer" 1896 "with-output-to-string" "with-output-to-temp-buffer"
1897 "with-selected-window" "with-syntax-table"
1895 "with-temp-buffer" "with-temp-file" "with-temp-message" 1898 "with-temp-buffer" "with-temp-file" "with-temp-message"
1896 "with-timeout") t) 1899 "with-timeout" "with-timeout-handler") t)
1897 "\\>") 1900 "\\>")
1898 1) 1901 1)
1899 ;; 1902 ;;
@@ -1908,7 +1911,13 @@ This function could be MATCHER in a MATCH-ANCHORED `font-lock-keywords' item."
1908 "proclaim" "declaim" "declare" "symbol-macrolet" 1911 "proclaim" "declaim" "declare" "symbol-macrolet"
1909 "lexical-let" "lexical-let*" "flet" "labels" "compiler-let" 1912 "lexical-let" "lexical-let*" "flet" "labels" "compiler-let"
1910 "destructuring-bind" "macrolet" "tagbody" "block" 1913 "destructuring-bind" "macrolet" "tagbody" "block"
1911 "return" "return-from") t) 1914 "return" "return-from"
1915 "with-accessors" "with-compilation-unit"
1916 "with-condition-restarts" "with-hash-table-iterator"
1917 "with-input-from-string" "with-open-file"
1918 "with-open-stream" "with-output-to-string"
1919 "with-package-iterator" "with-simple-restart"
1920 "with-slots" "with-standard-io-syntax") t)
1912 "\\>") 1921 "\\>")
1913 1) 1922 1)
1914 ;; 1923 ;;
@@ -1933,8 +1942,11 @@ This function could be MATCHER in a MATCH-ANCHORED `font-lock-keywords' item."
1933 ;; ELisp and CLisp `&' keywords as types. 1942 ;; ELisp and CLisp `&' keywords as types.
1934 '("\\&\\sw+\\>" . font-lock-type-face) 1943 '("\\&\\sw+\\>" . font-lock-type-face)
1935 ;; 1944 ;;
1936 ;; CL `with-' and `do-' constructs 1945;;; This is too general -- rms.
1937 '("(\\(\\(do-\\|with-\\)\\(\\s_\\|\\w\\)*\\)" 1 font-lock-keyword-face) 1946;;; A user complained that he has functions whose names start with `do'
1947;;; and that they get the wrong color.
1948;;; ;; CL `with-' and `do-' constructs
1949;;; '("(\\(\\(do-\\|with-\\)\\(\\s_\\|\\w\\)*\\)" 1 font-lock-keyword-face)
1938 ))) 1950 )))
1939 "Gaudy level highlighting for Lisp modes.") 1951 "Gaudy level highlighting for Lisp modes.")
1940 1952
diff --git a/lisp/gdb-ui.el b/lisp/gdb-ui.el
index 0040fb47f6e..85b03fbce40 100644
--- a/lisp/gdb-ui.el
+++ b/lisp/gdb-ui.el
@@ -1087,7 +1087,6 @@ static char *magick[] = {
1087 (interactive "e") 1087 (interactive "e")
1088 (mouse-minibuffer-check event) 1088 (mouse-minibuffer-check event)
1089 (let ((posn (event-end event))) 1089 (let ((posn (event-end event)))
1090 (message "pt=%S posn=%S" (posn-point posn) posn)
1091 (if (numberp (posn-point posn)) 1090 (if (numberp (posn-point posn))
1092 (with-selected-window (posn-window posn) 1091 (with-selected-window (posn-window posn)
1093 (save-excursion 1092 (save-excursion
@@ -1808,32 +1807,6 @@ BUFFER nil or omitted means use the current buffer."
1808 left-margin-width 1807 left-margin-width
1809 right-margin-width)))) 1808 right-margin-width))))
1810 1809
1811(defun gdb-put-arrow (putstring pos)
1812 "Put arrow string PUTSTRING in the left margin in front of POS
1813in the current buffer. PUTSTRING is displayed by putting an
1814overlay into the current buffer with a `before-string'
1815\"gdb-arrow\" that has a `display' property whose value is
1816PUTSTRING. POS may be an integer or marker."
1817 (let ((gdb-string "gdb-arrow")
1818 (buffer (current-buffer)))
1819 (let ((overlay (make-overlay pos pos buffer))
1820 (prop (list (list 'margin 'left-margin) putstring)))
1821 (put-text-property 0 (length gdb-string) 'display prop gdb-string)
1822 (overlay-put overlay 'put-arrow t)
1823 (overlay-put overlay 'before-string gdb-string))))
1824
1825(defun gdb-remove-arrow (&optional buffer)
1826 "Remove arrow in BUFFER.
1827Remove only images that were put in BUFFER with calls to `put-arrow'.
1828BUFFER nil or omitted means use the current buffer."
1829 (unless buffer
1830 (setq buffer (current-buffer)))
1831 (let ((overlays (overlays-in (point-min) (point-max))))
1832 (while overlays
1833 (let ((overlay (car overlays)))
1834 (when (overlay-get overlay 'put-arrow)
1835 (delete-overlay overlay)))
1836 (setq overlays (cdr overlays)))))
1837 1810
1838;; 1811;;
1839;; Assembler buffer. 1812;; Assembler buffer.
@@ -1850,16 +1823,20 @@ BUFFER nil or omitted means use the current buffer."
1850 1823
1851(defun gdb-assembler-custom () 1824(defun gdb-assembler-custom ()
1852 (let ((buffer (gdb-get-buffer 'gdb-assembler-buffer)) 1825 (let ((buffer (gdb-get-buffer 'gdb-assembler-buffer))
1853 (gdb-arrow-position 1) (address) (flag)) 1826 (pos 1) (address) (flag))
1854 (with-current-buffer buffer 1827 (with-current-buffer buffer
1855 (if (not (equal gdb-current-address "main")) 1828 (if (not (equal gdb-current-address "main"))
1856 (progn 1829 (progn
1857 (gdb-remove-arrow)
1858 (goto-char (point-min)) 1830 (goto-char (point-min))
1859 (if (re-search-forward gdb-current-address nil t) 1831 (if (re-search-forward gdb-current-address nil t)
1860 (progn 1832 (progn
1861 (setq gdb-arrow-position (point)) 1833 (setq pos (point))
1862 (gdb-put-arrow "=>" (point)))))) 1834 (setq gdb-overlay-arrow-string "=>")
1835 (beginning-of-line)
1836 (or gdb-overlay-arrow-position
1837 (setq gdb-overlay-arrow-position (make-marker)))
1838 (set-marker gdb-overlay-arrow-position
1839 (point) (current-buffer))))))
1863 ;; remove all breakpoint-icons in assembler buffer before updating. 1840 ;; remove all breakpoint-icons in assembler buffer before updating.
1864 (gdb-remove-breakpoint-icons (point-min) (point-max))) 1841 (gdb-remove-breakpoint-icons (point-min) (point-max)))
1865 (with-current-buffer (gdb-get-buffer 'gdb-breakpoints-buffer) 1842 (with-current-buffer (gdb-get-buffer 'gdb-breakpoints-buffer)
@@ -1880,7 +1857,7 @@ BUFFER nil or omitted means use the current buffer."
1880 (if (re-search-forward address nil t) 1857 (if (re-search-forward address nil t)
1881 (gdb-put-breakpoint-icon (eq flag ?y)))))))) 1858 (gdb-put-breakpoint-icon (eq flag ?y))))))))
1882 (if (not (equal gdb-current-address "main")) 1859 (if (not (equal gdb-current-address "main"))
1883 (set-window-point (get-buffer-window buffer) gdb-arrow-position)))) 1860 (set-window-point (get-buffer-window buffer) pos))))
1884 1861
1885(defvar gdb-assembler-mode-map 1862(defvar gdb-assembler-mode-map
1886 (let ((map (make-sparse-keymap))) 1863 (let ((map (make-sparse-keymap)))
@@ -1893,6 +1870,8 @@ BUFFER nil or omitted means use the current buffer."
1893\\{gdb-assembler-mode-map}" 1870\\{gdb-assembler-mode-map}"
1894 (setq major-mode 'gdb-assembler-mode) 1871 (setq major-mode 'gdb-assembler-mode)
1895 (setq mode-name "Machine") 1872 (setq mode-name "Machine")
1873 (push 'gdb-overlay-arrow-position overlay-arrow-variable-list)
1874 (setq gdb-overlay-arrow-position nil)
1896 (setq fringes-outside-margins t) 1875 (setq fringes-outside-margins t)
1897 (setq buffer-read-only t) 1876 (setq buffer-read-only t)
1898 (use-local-map gdb-assembler-mode-map) 1877 (use-local-map gdb-assembler-mode-map)
diff --git a/lisp/gnus/ChangeLog b/lisp/gnus/ChangeLog
index 60679f8250a..7fa3fb61ce5 100644
--- a/lisp/gnus/ChangeLog
+++ b/lisp/gnus/ChangeLog
@@ -1,3 +1,7 @@
12004-03-04 Stefan Monnier <monnier@iro.umontreal.ca>
2
3 * message.el (message-mode): Set comment-start-skip.
4
12004-02-08 Andreas Schwab <schwab@suse.de> 52004-02-08 Andreas Schwab <schwab@suse.de>
2 6
3 * nnlistserv.el (nnlistserv-kk-wash-article): Fix paren nesting. 7 * nnlistserv.el (nnlistserv-kk-wash-article): Fix paren nesting.
@@ -30,8 +34,8 @@
30 34
312003-05-06 Jesper Harder <harder@ifa.au.dk> 352003-05-06 Jesper Harder <harder@ifa.au.dk>
32 36
33 * gnus-cus.el (gnus-group-customize, gnus-score-parameters): Don't 37 * gnus-cus.el (gnus-group-customize, gnus-score-parameters):
34 quote nil and t in docstrings. 38 Don't quote nil and t in docstrings.
35 39
36 * gnus-score.el (gnus-score-lower-thread): Likewise. 40 * gnus-score.el (gnus-score-lower-thread): Likewise.
37 41
@@ -47,8 +51,7 @@
47 51
482003-02-18 Juanma Barranquero <lektu@terra.es> 522003-02-18 Juanma Barranquero <lektu@terra.es>
49 53
50 * ietf-drums.el (ietf-drums-remove-whitespace): Fix character 54 * ietf-drums.el (ietf-drums-remove-whitespace): Fix character constant.
51 constant.
52 55
532003-02-14 Juanma Barranquero <lektu@terra.es> 562003-02-14 Juanma Barranquero <lektu@terra.es>
54 57
diff --git a/lisp/gnus/message.el b/lisp/gnus/message.el
index 8edb5142ddd..4c6284b6d85 100644
--- a/lisp/gnus/message.el
+++ b/lisp/gnus/message.el
@@ -1,5 +1,5 @@
1;;; message.el --- composing mail and news messages -*- coding: iso-latin-1 -*- 1;;; message.el --- composing mail and news messages -*- coding: iso-latin-1 -*-
2;; Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002 2;; Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2004
3;; Free Software Foundation, Inc. 3;; Free Software Foundation, Inc.
4 4
5;; Author: Lars Magne Ingebrigtsen <larsi@gnus.org> 5;; Author: Lars Magne Ingebrigtsen <larsi@gnus.org>
@@ -1531,7 +1531,10 @@ M-RET `message-newline-and-reformat' (break the line and reformat)."
1531 (set (make-local-variable 'message-mime-part) 0) 1531 (set (make-local-variable 'message-mime-part) 0)
1532 (message-setup-fill-variables) 1532 (message-setup-fill-variables)
1533 ;; Allow using comment commands to add/remove quoting. 1533 ;; Allow using comment commands to add/remove quoting.
1534 (set (make-local-variable 'comment-start) message-yank-prefix) 1534 (when message-yank-prefix
1535 (set (make-local-variable 'comment-start) message-yank-prefix)
1536 (set (make-local-variable 'comment-start-skip)
1537 (concat "^" (regexp-quote message-yank-prefix) "[ \t]*")))
1535 ;;(when (fboundp 'mail-hist-define-keys) 1538 ;;(when (fboundp 'mail-hist-define-keys)
1536 ;; (mail-hist-define-keys)) 1539 ;; (mail-hist-define-keys))
1537 (if (featurep 'xemacs) 1540 (if (featurep 'xemacs)
diff --git a/lisp/help-at-pt.el b/lisp/help-at-pt.el
index 3d01ed6d6b2..67a0af20359 100644
--- a/lisp/help-at-pt.el
+++ b/lisp/help-at-pt.el
@@ -101,7 +101,7 @@ The value may be an integer or floating point number.
101If a timer is already active, there are two ways to make the new 101If a timer is already active, there are two ways to make the new
102value take effect immediately. After setting the value, you can 102value take effect immediately. After setting the value, you can
103first call `help-at-pt-cancel-timer' and then set a new timer 103first call `help-at-pt-cancel-timer' and then set a new timer
104with `help-at-pt-set-timer' . Alternatively, you can set this 104with `help-at-pt-set-timer'. Alternatively, you can set this
105variable through Custom. This will not set a timer if none is 105variable through Custom. This will not set a timer if none is
106active, but if one is already active, Custom will make it use the 106active, but if one is already active, Custom will make it use the
107new value." 107new value."
diff --git a/lisp/hexl.el b/lisp/hexl.el
index 413344fc375..40e3c929c59 100644
--- a/lisp/hexl.el
+++ b/lisp/hexl.el
@@ -42,6 +42,8 @@
42 42
43;;; Code: 43;;; Code:
44 44
45(require 'eldoc)
46
45;; 47;;
46;; vars here 48;; vars here
47;; 49;;
@@ -236,6 +238,13 @@ You can use \\[hexl-find-file] to visit a file in Hexl mode.
236 238
237 (add-hook 'change-major-mode-hook 'hexl-maybe-dehexlify-buffer nil t) 239 (add-hook 'change-major-mode-hook 'hexl-maybe-dehexlify-buffer nil t)
238 240
241 ;; Set a callback function for eldoc.
242 (set (make-variable-buffer-local 'eldoc-print-current-symbol-info-function)
243 'hexl-print-current-point-info)
244 (eldoc-add-command-completions "hexl-")
245 (eldoc-remove-command "hexl-save-buffer"
246 "hexl-current-address")
247
239 (if hexl-follow-ascii (hexl-follow-ascii 1))) 248 (if hexl-follow-ascii (hexl-follow-ascii 1)))
240 (run-hooks 'hexl-mode-hook)) 249 (run-hooks 'hexl-mode-hook))
241 250
@@ -361,9 +370,15 @@ Ask the user for confirmation."
361 (- current-column 41) 370 (- current-column 41)
362 (/ (- current-column (/ current-column 5)) 2)))) 371 (/ (- current-column (/ current-column 5)) 2))))
363 (when (interactive-p) 372 (when (interactive-p)
364 (message "Current address is %d" hexl-address)) 373 (message "Current address is %d/0x%08x" hexl-address hexl-address))
365 hexl-address)) 374 hexl-address))
366 375
376(defun hexl-print-current-point-info ()
377 "Return current hexl-address in string.
378This function is indented to be used as eldoc callback."
379 (let ((addr (hexl-current-address)))
380 (format "Current address is %d/0x%08x" addr addr)))
381
367(defun hexl-address-to-marker (address) 382(defun hexl-address-to-marker (address)
368 "Return buffer position for ADDRESS." 383 "Return buffer position for ADDRESS."
369 (interactive "nAddress: ") 384 (interactive "nAddress: ")
diff --git a/lisp/isearch.el b/lisp/isearch.el
index 6eecd623cfd..91a2c34870d 100644
--- a/lisp/isearch.el
+++ b/lisp/isearch.el
@@ -301,6 +301,7 @@ Default value, nil, means edit the string instead."
301 ;; Nothing special for + because it matches at least once. 301 ;; Nothing special for + because it matches at least once.
302 (define-key map "*" 'isearch-*-char) 302 (define-key map "*" 'isearch-*-char)
303 (define-key map "?" 'isearch-*-char) 303 (define-key map "?" 'isearch-*-char)
304 (define-key map "{" 'isearch-{-char)
304 (define-key map "|" 'isearch-|-char) 305 (define-key map "|" 'isearch-|-char)
305 306
306 ;; Turned off because I find I expect to get the global definition--rms. 307 ;; Turned off because I find I expect to get the global definition--rms.
@@ -1186,21 +1187,30 @@ might return the position of the end of the line."
1186 (isearch-update)) 1187 (isearch-update))
1187 1188
1188 1189
1190(defun isearch-{-char ()
1191 "Handle \{ specially in regexps."
1192 (interactive)
1193 (isearch-*-char t))
1194
1189;; *, ?, and | chars can make a regexp more liberal. 1195;; *, ?, and | chars can make a regexp more liberal.
1190;; They can make a regexp match sooner or make it succeed instead of failing. 1196;; They can make a regexp match sooner or make it succeed instead of failing.
1191;; So go back to place last successful search started 1197;; So go back to place last successful search started
1192;; or to the last ^S/^R (barrier), whichever is nearer. 1198;; or to the last ^S/^R (barrier), whichever is nearer.
1193;; + needs no special handling because the string must match at least once. 1199;; + needs no special handling because the string must match at least once.
1194 1200
1195(defun isearch-*-char () 1201(defun isearch-*-char (&optional want-backslash)
1196 "Handle * and ? specially in regexps." 1202 "Handle * and ? specially in regexps.
1203When WANT-BACKSLASH is non-nil, do special handling for \{."
1197 (interactive) 1204 (interactive)
1198 (if isearch-regexp 1205 (if isearch-regexp
1199 (let ((idx (length isearch-string))) 1206 (let ((idx (length isearch-string)))
1200 (while (and (> idx 0) 1207 (while (and (> idx 0)
1201 (eq (aref isearch-string (1- idx)) ?\\)) 1208 (eq (aref isearch-string (1- idx)) ?\\))
1202 (setq idx (1- idx))) 1209 (setq idx (1- idx)))
1203 (when (= (mod (- (length isearch-string) idx) 2) 0) 1210 ;; * and ? are special when not preceded by \.
1211 ;; { is special when it is preceded by \.
1212 (when (= (mod (- (length isearch-string) idx) 2)
1213 (if want-backslash 1 0))
1204 (setq isearch-adjusted t) 1214 (setq isearch-adjusted t)
1205 ;; Get the isearch-other-end from before the last search. 1215 ;; Get the isearch-other-end from before the last search.
1206 ;; We want to start from there, 1216 ;; We want to start from there,
diff --git a/lisp/mail/mail-utils.el b/lisp/mail/mail-utils.el
index 96a57b38f07..aecc87cf178 100644
--- a/lisp/mail/mail-utils.el
+++ b/lisp/mail/mail-utils.el
@@ -108,11 +108,15 @@ we expect to find and remove the wrapper characters =?ISO-8859-1?Q?....?=."
108 (apply 'concat (nreverse (cons (substring string i) strings)))))) 108 (apply 'concat (nreverse (cons (substring string i) strings))))))
109 109
110;;;###autoload 110;;;###autoload
111(defun mail-unquote-printable-region (beg end &optional wrapper noerror) 111(defun mail-unquote-printable-region (beg end &optional wrapper noerror
112 unibyte)
112 "Undo the \"quoted printable\" encoding in buffer from BEG to END. 113 "Undo the \"quoted printable\" encoding in buffer from BEG to END.
113If the optional argument WRAPPER is non-nil, 114If the optional argument WRAPPER is non-nil,
114we expect to find and remove the wrapper characters =?ISO-8859-1?Q?....?=. 115we expect to find and remove the wrapper characters =?ISO-8859-1?Q?....?=.
115If NOERROR is non-nil, return t if successful." 116If NOERROR is non-nil, return t if successful.
117If UNIBYTE is non-nil, insert converted characters as unibyte.
118That is useful if you are going to character code decoding afterward,
119as Rmail does."
116 (interactive "r\nP") 120 (interactive "r\nP")
117 (let (failed) 121 (let (failed)
118 (save-match-data 122 (save-match-data
@@ -131,13 +135,16 @@ If NOERROR is non-nil, return t if successful."
131 ((= (char-after (match-beginning 1)) ?=) 135 ((= (char-after (match-beginning 1)) ?=)
132 (replace-match "=")) 136 (replace-match "="))
133 ((match-beginning 2) 137 ((match-beginning 2)
134 (replace-match 138 (let ((char (+ (* 16 (mail-unquote-printable-hexdigit
135 (make-string 1 139 (char-after (match-beginning 2))))
136 (+ (* 16 (mail-unquote-printable-hexdigit 140 (mail-unquote-printable-hexdigit
137 (char-after (match-beginning 2)))) 141 (char-after (1+ (match-beginning 2)))))))
138 (mail-unquote-printable-hexdigit 142 (if unibyte
139 (char-after (1+ (match-beginning 2)))))) 143 (progn
140 t t)) 144 (replace-match "")
145 ;; insert-char will insert this as unibyte,
146 (insert-char char 1))
147 (replace-match (make-string 1 char) t t))))
141 (noerror 148 (noerror
142 (setq failed t)) 149 (setq failed t))
143 (t 150 (t
diff --git a/lisp/mail/rmail.el b/lisp/mail/rmail.el
index 4090749d83e..c890ae6e6a0 100644
--- a/lisp/mail/rmail.el
+++ b/lisp/mail/rmail.el
@@ -1733,7 +1733,7 @@ It returns t if it got any new messages."
1733 (if quoted-printable-header-field-end 1733 (if quoted-printable-header-field-end
1734 (save-excursion 1734 (save-excursion
1735 (unless 1735 (unless
1736 (mail-unquote-printable-region header-end (point) nil t) 1736 (mail-unquote-printable-region header-end (point) nil t t)
1737 (message "Malformed MIME quoted-printable message")) 1737 (message "Malformed MIME quoted-printable message"))
1738 ;; Change "quoted-printable" to "8bit", 1738 ;; Change "quoted-printable" to "8bit",
1739 ;; to reflect the decoding we just did. 1739 ;; to reflect the decoding we just did.
@@ -1880,7 +1880,7 @@ It returns t if it got any new messages."
1880 (if quoted-printable-header-field-end 1880 (if quoted-printable-header-field-end
1881 (save-excursion 1881 (save-excursion
1882 (unless 1882 (unless
1883 (mail-unquote-printable-region header-end (point) nil t) 1883 (mail-unquote-printable-region header-end (point) nil t t)
1884 1884
1885 (message "Malformed MIME quoted-printable message")) 1885 (message "Malformed MIME quoted-printable message"))
1886 ;; Change "quoted-printable" to "8bit", 1886 ;; Change "quoted-printable" to "8bit",
@@ -1917,7 +1917,10 @@ It returns t if it got any new messages."
1917 (goto-char (point-min)) 1917 (goto-char (point-min))
1918 (while (search-forward "\n\^_" nil t); single char 1918 (while (search-forward "\n\^_" nil t); single char
1919 (replace-match "\n^_")))); 2 chars: "^" and "_" 1919 (replace-match "\n^_")))); 2 chars: "^" and "_"
1920 (or (bolp) (newline)) ; in case we lost the final newline. 1920 ;; This is for malformed messages that don't end in newline.
1921 ;; There shouldn't be any, but some users say occasionally
1922 ;; there are some.
1923 (or (bolp) (newline))
1921 (insert ?\^_) 1924 (insert ?\^_)
1922 (setq last-coding-system-used nil) 1925 (setq last-coding-system-used nil)
1923 (or rmail-enable-mime 1926 (or rmail-enable-mime
diff --git a/lisp/mail/sendmail.el b/lisp/mail/sendmail.el
index c44ea46243a..932f52204c5 100644
--- a/lisp/mail/sendmail.el
+++ b/lisp/mail/sendmail.el
@@ -1,6 +1,6 @@
1;;; sendmail.el --- mail sending commands for Emacs. -*- byte-compile-dynamic: t -*- 1;;; sendmail.el --- mail sending commands for Emacs. -*- byte-compile-dynamic: t -*-
2 2
3;; Copyright (C) 1985, 86, 92, 93, 94, 95, 96, 98, 2000, 2001, 2002, 2003 3;; Copyright (C) 1985, 86, 92, 93, 94, 95, 96, 98, 2000, 2001, 2002, 03, 2004
4;; Free Software Foundation, Inc. 4;; Free Software Foundation, Inc.
5 5
6;; Maintainer: FSF 6;; Maintainer: FSF
@@ -512,6 +512,9 @@ Turning on Mail mode runs the normal hooks `text-mode-hook' and
512 ;; Allow using comment commands to add/remove quoting (this only does 512 ;; Allow using comment commands to add/remove quoting (this only does
513 ;; anything if mail-yank-prefix is set to a non-nil value). 513 ;; anything if mail-yank-prefix is set to a non-nil value).
514 (set (make-local-variable 'comment-start) mail-yank-prefix) 514 (set (make-local-variable 'comment-start) mail-yank-prefix)
515 (if mail-yank-prefix
516 (set (make-local-variable 'comment-start-skip)
517 (concat "^" (regexp-quote mail-yank-prefix) "[ \t]*")))
515 (make-local-variable 'adaptive-fill-regexp) 518 (make-local-variable 'adaptive-fill-regexp)
516 (setq adaptive-fill-regexp 519 (setq adaptive-fill-regexp
517 (concat "[ \t]*[-[:alnum:]]+>+[ \t]*\\|" 520 (concat "[ \t]*[-[:alnum:]]+>+[ \t]*\\|"
diff --git a/lisp/mouse-sel.el b/lisp/mouse-sel.el
index 92e837657f6..f9b90fbfc6a 100644
--- a/lisp/mouse-sel.el
+++ b/lisp/mouse-sel.el
@@ -196,6 +196,9 @@ If nil, point will always be placed at the beginning of the region."
196 196
197;;=== User Command ======================================================== 197;;=== User Command ========================================================
198 198
199(defvar mouse-sel-has-been-enabled nil
200 "Non-nil if Mouse Sel mode has been enabled at least once.")
201
199(defvar mouse-sel-original-bindings nil) 202(defvar mouse-sel-original-bindings nil)
200(defvar mouse-sel-original-interprogram-cut-function nil) 203(defvar mouse-sel-original-interprogram-cut-function nil)
201(defvar mouse-sel-original-interprogram-paste-function nil) 204(defvar mouse-sel-original-interprogram-paste-function nil)
@@ -252,7 +255,8 @@ primary selection and region."
252 (setq mouse-sel-original-interprogram-cut-function 255 (setq mouse-sel-original-interprogram-cut-function
253 interprogram-cut-function 256 interprogram-cut-function
254 mouse-sel-original-interprogram-paste-function 257 mouse-sel-original-interprogram-paste-function
255 interprogram-paste-function) 258 interprogram-paste-function
259 mouse-sel-has-been-enabled t)
256 (unless (eq mouse-sel-default-bindings 'interprogram-cut-paste) 260 (unless (eq mouse-sel-default-bindings 'interprogram-cut-paste)
257 (setq interprogram-cut-function nil 261 (setq interprogram-cut-function nil
258 interprogram-paste-function nil)))) 262 interprogram-paste-function nil))))
@@ -261,10 +265,13 @@ primary selection and region."
261 (remove-hook 'x-lost-selection-hooks 'mouse-sel-lost-selection-hook) 265 (remove-hook 'x-lost-selection-hooks 'mouse-sel-lost-selection-hook)
262 (dolist (binding mouse-sel-original-bindings) 266 (dolist (binding mouse-sel-original-bindings)
263 (global-set-key (car binding) (cdr binding))) 267 (global-set-key (car binding) (cdr binding)))
264 (setq interprogram-cut-function 268 ;; Restore the old values of these variables,
265 mouse-sel-original-interprogram-cut-function 269 ;; only if they were actually saved previously.
266 interprogram-paste-function 270 (if mouse-sel-has-been-enabled
267 mouse-sel-original-interprogram-paste-function))) 271 (setq interprogram-cut-function
272 mouse-sel-original-interprogram-cut-function
273 interprogram-paste-function
274 mouse-sel-original-interprogram-paste-function))))
268 275
269;;=== Internal Variables/Constants ======================================== 276;;=== Internal Variables/Constants ========================================
270 277
diff --git a/lisp/net/browse-url.el b/lisp/net/browse-url.el
index 5a25801458e..d590e8bb2a4 100644
--- a/lisp/net/browse-url.el
+++ b/lisp/net/browse-url.el
@@ -818,8 +818,8 @@ When called non-interactively, optional second argument NEW-WINDOW is
818used instead of `browse-url-new-window-flag'." 818used instead of `browse-url-new-window-flag'."
819 (interactive (browse-url-interactive-arg "URL: ")) 819 (interactive (browse-url-interactive-arg "URL: "))
820 ;; URL encode any `confusing' characters in the URL. This needs to 820 ;; URL encode any `confusing' characters in the URL. This needs to
821 ;; include at least commas; presumably also close parens. 821 ;; include at least commas; presumably also close parens and dollars.
822 (while (string-match "[,)]" url) 822 (while (string-match "[,)$]" url)
823 (setq url (replace-match 823 (setq url (replace-match
824 (format "%%%x" (string-to-char (match-string 0 url))) t t url))) 824 (format "%%%x" (string-to-char (match-string 0 url))) t t url)))
825 (let* ((process-environment (browse-url-process-environment)) 825 (let* ((process-environment (browse-url-process-environment))
@@ -889,8 +889,8 @@ When called non-interactively, optional second argument NEW-WINDOW is
889used instead of `browse-url-new-window-flag'." 889used instead of `browse-url-new-window-flag'."
890 (interactive (browse-url-interactive-arg "URL: ")) 890 (interactive (browse-url-interactive-arg "URL: "))
891 ;; URL encode any `confusing' characters in the URL. This needs to 891 ;; URL encode any `confusing' characters in the URL. This needs to
892 ;; include at least commas; presumably also close parens. 892 ;; include at least commas; presumably also close parens and dollars.
893 (while (string-match "[,)]" url) 893 (while (string-match "[,)$]" url)
894 (setq url (replace-match 894 (setq url (replace-match
895 (format "%%%x" (string-to-char (match-string 0 url))) t t url))) 895 (format "%%%x" (string-to-char (match-string 0 url))) t t url)))
896 (let* ((process-environment (browse-url-process-environment)) 896 (let* ((process-environment (browse-url-process-environment))
@@ -942,8 +942,8 @@ When called non-interactively, optional second argument NEW-WINDOW is
942used instead of `browse-url-new-window-flag'." 942used instead of `browse-url-new-window-flag'."
943 (interactive (browse-url-interactive-arg "URL: ")) 943 (interactive (browse-url-interactive-arg "URL: "))
944 ;; URL encode any `confusing' characters in the URL. This needs to 944 ;; URL encode any `confusing' characters in the URL. This needs to
945 ;; include at least commas; presumably also close parens. 945 ;; include at least commas; presumably also close parens and dollars.
946 (while (string-match "[,)]" url) 946 (while (string-match "[,)$]" url)
947 (setq url (replace-match 947 (setq url (replace-match
948 (format "%%%x" (string-to-char (match-string 0 url))) t t url))) 948 (format "%%%x" (string-to-char (match-string 0 url))) t t url)))
949 (let* ((process-environment (browse-url-process-environment)) 949 (let* ((process-environment (browse-url-process-environment))
@@ -991,8 +991,8 @@ When called non-interactively, optional second argument NEW-WINDOW is
991used instead of `browse-url-new-window-flag'." 991used instead of `browse-url-new-window-flag'."
992 (interactive (browse-url-interactive-arg "URL: ")) 992 (interactive (browse-url-interactive-arg "URL: "))
993 ;; URL encode any `confusing' characters in the URL. This needs to 993 ;; URL encode any `confusing' characters in the URL. This needs to
994 ;; include at least commas; presumably also close parens. 994 ;; include at least commas; presumably also close parens and dollars.
995 (while (string-match "[,)]" url) 995 (while (string-match "[,)$]" url)
996 (setq url (replace-match 996 (setq url (replace-match
997 (format "%%%x" (string-to-char (match-string 0 url))) t t url))) 997 (format "%%%x" (string-to-char (match-string 0 url))) t t url)))
998 (let* ((process-environment (browse-url-process-environment)) 998 (let* ((process-environment (browse-url-process-environment))
diff --git a/lisp/newcomment.el b/lisp/newcomment.el
index 91943503f5e..1c9c0dfd4b6 100644
--- a/lisp/newcomment.el
+++ b/lisp/newcomment.el
@@ -1,6 +1,6 @@
1;;; newcomment.el --- (un)comment regions of buffers 1;;; newcomment.el --- (un)comment regions of buffers
2 2
3;; Copyright (C) 1999,2000,2003 Free Software Foundation Inc. 3;; Copyright (C) 1999,2000,2003,2004 Free Software Foundation Inc.
4 4
5;; Author: code extracted from Emacs-20's simple.el 5;; Author: code extracted from Emacs-20's simple.el
6;; Maintainer: Stefan Monnier <monnier@cs.yale.edu> 6;; Maintainer: Stefan Monnier <monnier@cs.yale.edu>
@@ -251,8 +251,10 @@ this function before any other, so the rest of the code can assume that
251the variables are properly set." 251the variables are properly set."
252 (unless (and (not comment-start) noerror) 252 (unless (and (not comment-start) noerror)
253 (unless comment-start 253 (unless comment-start
254 (set (make-local-variable 'comment-start) 254 (let ((cs (read-string "No comment syntax is defined. Use: ")))
255 (read-string "No comment syntax is defined. Use: "))) 255 (if (zerop (length cs))
256 (error "No comment syntax defined")
257 (set (make-local-variable 'comment-start) cs))))
256 ;; comment-use-syntax 258 ;; comment-use-syntax
257 (when (eq comment-use-syntax 'undecided) 259 (when (eq comment-use-syntax 'undecided)
258 (set (make-local-variable 'comment-use-syntax) 260 (set (make-local-variable 'comment-use-syntax)
@@ -716,35 +718,9 @@ comment markers."
716 ;; Find the end of the comment. 718 ;; Find the end of the comment.
717 (ept (progn 719 (ept (progn
718 (goto-char spt) 720 (goto-char spt)
719 (unless 721 (unless (or (comment-forward)
720 (or 722 ;; Allow non-terminated comments.
721 (comment-forward) 723 (eobp))
722 ;; Allow eob as comment-end instead of \n.
723 (and
724 (eobp)
725 (let ((s1 (aref (syntax-table) (char-after spt)))
726 (s2 (aref (syntax-table)
727 (or (char-after (1+ spt)) 0)))
728 (sn (aref (syntax-table) ?\n))
729 (flag->b (car (string-to-syntax "> b")))
730 (flag-1b (car (string-to-syntax " 1b")))
731 (flag-2b (car (string-to-syntax " 2b"))))
732 (cond
733 ;; One-character comment-start terminated by
734 ;; \n.
735 ((and
736 (equal sn (string-to-syntax ">"))
737 (equal s1 (string-to-syntax "<")))
738 (insert-char ?\n 1)
739 t)
740 ;; Two-character type b comment-start
741 ;; terminated by \n.
742 ((and
743 (= (logand (car sn) flag->b) flag->b)
744 (= (logand (car s1) flag-1b) flag-1b)
745 (= (logand (car s2) flag-2b) flag-2b))
746 (insert-char ?\n 1)
747 t)))))
748 (error "Can't find the comment end")) 724 (error "Can't find the comment end"))
749 (point))) 725 (point)))
750 (box nil) 726 (box nil)
diff --git a/lisp/pcvs-info.el b/lisp/pcvs-info.el
index 6fa47b9e97c..52989e4c9c6 100644
--- a/lisp/pcvs-info.el
+++ b/lisp/pcvs-info.el
@@ -1,6 +1,7 @@
1;;; pcvs-info.el --- internal representation of a fileinfo entry 1;;; pcvs-info.el --- internal representation of a fileinfo entry
2 2
3;; Copyright (C) 1991, 92, 93, 94, 95, 96, 97, 98, 99, 2000 Free Software Foundation, Inc. 3;; Copyright (C) 1991, 92, 93, 94, 95, 96, 97, 98, 99, 2000, 2004
4;; Free Software Foundation, Inc.
4 5
5;; Author: Stefan Monnier <monnier@cs.yale.edu> 6;; Author: Stefan Monnier <monnier@cs.yale.edu>
6;; Keywords: pcl-cvs 7;; Keywords: pcl-cvs
@@ -219,8 +220,8 @@ to confuse some users sometimes."
219 (file (cvs-fileinfo->file fileinfo)) 220 (file (cvs-fileinfo->file fileinfo))
220 (default-directory (file-name-as-directory (expand-file-name dir))) 221 (default-directory (file-name-as-directory (expand-file-name dir)))
221 (files (directory-files "." nil 222 (files (directory-files "." nil
222 (concat "^" (regexp-quote cvs-bakprefix) 223 (concat "\\`" (regexp-quote cvs-bakprefix)
223 (regexp-quote file) "\\."))) 224 (regexp-quote file) "\\(\\.[0-9]+\\.[0-9]+\\)+\\'")))
224 bf) 225 bf)
225 (dolist (f files bf) 226 (dolist (f files bf)
226 (when (and (file-readable-p f) 227 (when (and (file-readable-p f)
diff --git a/lisp/printing.el b/lisp/printing.el
index a9c1a925c94..6694805fcbd 100644
--- a/lisp/printing.el
+++ b/lisp/printing.el
@@ -5,13 +5,13 @@
5 5
6;; Author: Vinicius Jose Latorre <vinicius@cpqd.com.br> 6;; Author: Vinicius Jose Latorre <vinicius@cpqd.com.br>
7;; Maintainer: Vinicius Jose Latorre <vinicius@cpqd.com.br> 7;; Maintainer: Vinicius Jose Latorre <vinicius@cpqd.com.br>
8;; Time-stamp: <2004/02/26 00:43:07 vinicius> 8;; Time-stamp: <2004/02/29 23:18:15 vinicius>
9;; Keywords: wp, print, PostScript 9;; Keywords: wp, print, PostScript
10;; Version: 6.7.2 10;; Version: 6.7.2
11;; X-URL: http://www.cpqd.com.br/~vinicius/emacs/ 11;; X-URL: http://www.cpqd.com.br/~vinicius/emacs/
12 12
13(defconst pr-version "6.7.2" 13(defconst pr-version "6.7.2"
14 "printing.el, v 6.7.2 <2004/02/26 vinicius> 14 "printing.el, v 6.7.2 <2004/02/29 vinicius>
15 15
16Please send all bug fixes and enhancements to 16Please send all bug fixes and enhancements to
17 Vinicius Jose Latorre <vinicius@cpqd.com.br> 17 Vinicius Jose Latorre <vinicius@cpqd.com.br>
@@ -517,7 +517,7 @@ Please send all bug fixes and enhancements to
517;; 5 | Print >|---\ | |Despool... | | 517;; 5 | Print >|---\ | |Despool... | |
518;; 6 | Text Printer: name >|-\ | | +-----------+ | 518;; 6 | Text Printer: name >|-\ | | +-----------+ |
519;; +-----------------------------+ | | | +---------+ +------------+ 519;; +-----------------------------+ | | | +---------+ +------------+
520;; III 7 |[ ]Landscape | | | \-|Directory| | As Is... | Ia 520;; III 7 |[ ]Landscape | | | \-|Directory| | No Prep... | Ia
521;; 8 |[ ]Print Header | | | |Buffer | +------------+ Ib 521;; 8 |[ ]Print Header | | | |Buffer | +------------+ Ib
522;; 9 |[ ]Print Header Frame | | | |Region | | name >|- C 522;; 9 |[ ]Print Header Frame | | | |Region | | name >|- C
523;; 10 |[ ]Line Number | | | +---------+ +------------+ 523;; 10 |[ ]Line Number | | | +---------+ +------------+
@@ -581,8 +581,8 @@ Please send all bug fixes and enhancements to
581;; 581;;
582;; NOTE 2: There are the following options for PostScript file 582;; NOTE 2: There are the following options for PostScript file
583;; processing: 583;; processing:
584;; Ia. Print the file *as is*, that is, send it directly to 584;; Ia. Print the file *No Preprocessing*, that is, send it
585;; PostScript printer. 585;; directly to PostScript printer.
586;; Ib. PostScript utility processing selection. 586;; Ib. PostScript utility processing selection.
587;; See `pr-ps-utility-alist' and `pr-setting-database' for 587;; See `pr-ps-utility-alist' and `pr-setting-database' for
588;; documentation. 588;; documentation.
@@ -2415,7 +2415,7 @@ See `pr-ps-printer-alist'.")
2415 ["Other..." (pr-ps-mode-preview nil t) 2415 ["Other..." (pr-ps-mode-preview nil t)
2416 :keys "\\[pr-ps-mode-preview]"]) 2416 :keys "\\[pr-ps-mode-preview]"])
2417 ("File" 2417 ("File"
2418 ["As Is..." (call-interactively 'pr-ps-file-preview) 2418 ["No Preprocessing..." (call-interactively 'pr-ps-file-preview)
2419 :keys "\\[pr-ps-file-preview]" 2419 :keys "\\[pr-ps-file-preview]"
2420 :help "Preview PostScript file"] 2420 :help "Preview PostScript file"]
2421 "--" 2421 "--"
@@ -2470,7 +2470,7 @@ See `pr-ps-printer-alist'.")
2470 ["Other..." (pr-ps-mode-ps-print nil t) 2470 ["Other..." (pr-ps-mode-ps-print nil t)
2471 :keys "\\[pr-ps-mode-ps-print]"]) 2471 :keys "\\[pr-ps-mode-ps-print]"])
2472 ("File" 2472 ("File"
2473 ["As Is..." (call-interactively 'pr-ps-file-ps-print) 2473 ["No Preprocessing..." (call-interactively 'pr-ps-file-ps-print)
2474 :keys "\\[pr-ps-file-ps-print]" 2474 :keys "\\[pr-ps-file-ps-print]"
2475 :help "Send PostScript file to printer"] 2475 :help "Send PostScript file to printer"]
2476 "--" 2476 "--"
@@ -2624,7 +2624,7 @@ See `pr-ps-printer-alist'.")
2624 ["Other..." (pr-ps-mode-preview nil t) 2624 ["Other..." (pr-ps-mode-preview nil t)
2625 :keys "\\[pr-ps-mode-preview]"]) 2625 :keys "\\[pr-ps-mode-preview]"])
2626 ("File" 2626 ("File"
2627 ["As Is..." (call-interactively 'pr-ps-file-preview) 2627 ["No Preprocessing..." (call-interactively 'pr-ps-file-preview)
2628 :keys "\\[pr-ps-file-preview]"] 2628 :keys "\\[pr-ps-file-preview]"]
2629 "--" 2629 "--"
2630 ["PostScript Utility" pr-update-menus :active pr-ps-utility-alist] 2630 ["PostScript Utility" pr-update-menus :active pr-ps-utility-alist]
@@ -2672,7 +2672,7 @@ See `pr-ps-printer-alist'.")
2672 ["Other..." (pr-ps-mode-ps-print nil t) 2672 ["Other..." (pr-ps-mode-ps-print nil t)
2673 :keys "\\[pr-ps-mode-ps-print]"]) 2673 :keys "\\[pr-ps-mode-ps-print]"])
2674 ("File" 2674 ("File"
2675 ["As Is..." (call-interactively 'pr-ps-file-ps-print) 2675 ["No Preprocessing..." (call-interactively 'pr-ps-file-ps-print)
2676 :keys "\\[pr-ps-file-ps-print]"] 2676 :keys "\\[pr-ps-file-ps-print]"]
2677 "--" 2677 "--"
2678 ["PostScript Utility" pr-update-menus :active pr-ps-utility-alist] 2678 ["PostScript Utility" pr-update-menus :active pr-ps-utility-alist]
@@ -2861,7 +2861,7 @@ II 4 | Printify >|-----\\ |File >|--\\ +--------+
2861 5 | Print >|---\\ | |Despool... | | 2861 5 | Print >|---\\ | |Despool... | |
2862 6 | Text Printer: name >|-\\ | | +-----------+ | 2862 6 | Text Printer: name >|-\\ | | +-----------+ |
2863 +-----------------------------+ | | | +---------+ +------------+ 2863 +-----------------------------+ | | | +---------+ +------------+
2864III 7 |[ ]Landscape | | | \\-|Directory| | As Is... | Ia 2864III 7 |[ ]Landscape | | | \\-|Directory| | No Prep... | Ia
2865 8 |[ ]Print Header | | | |Buffer | +------------+ Ib 2865 8 |[ ]Print Header | | | |Buffer | +------------+ Ib
2866 9 |[ ]Print Header Frame | | | |Region | | name >|- C 2866 9 |[ ]Print Header Frame | | | |Region | | name >|- C
2867 10 |[ ]Line Number | | | +---------+ +------------+ 2867 10 |[ ]Line Number | | | +---------+ +------------+
@@ -2923,8 +2923,8 @@ I. PostScript printing:
2923 switch from gnus *Summary* buffer first. 2923 switch from gnus *Summary* buffer first.
2924 2924
2925 NOTE 2: There are the following options for PostScript file processing: 2925 NOTE 2: There are the following options for PostScript file processing:
2926 Ia. Print the file *as is*, that is, send it directly to 2926 Ia. Print the file *No Preprocessing*, that is, send it
2927 PostScript printer. 2927 directly to PostScript printer.
2928 Ib. PostScript utility processing selection. 2928 Ib. PostScript utility processing selection.
2929 See `pr-ps-utility-alist' and `pr-setting-database' for 2929 See `pr-ps-utility-alist' and `pr-setting-database' for
2930 documentation. 2930 documentation.
@@ -3130,7 +3130,7 @@ The printing interface buffer has the following sections:
3130 NOTE 2: Don't forget to download and install the utilities declared on 3130 NOTE 2: Don't forget to download and install the utilities declared on
3131 `pr-ps-utility-alist'. 3131 `pr-ps-utility-alist'.
3132 3132
3133 * Use It AS-IS : 3133 * No Preprocessing:
3134 If it's turned on, don't use the PostScript utility to preprocess the 3134 If it's turned on, don't use the PostScript utility to preprocess the
3135 PostScript file before printing/previewing. 3135 PostScript file before printing/previewing.
3136 3136
@@ -5752,9 +5752,8 @@ COMMAND.exe, COMMAND.bat and COMMAND.com in this order."
5752 (pr-choice-alist pr-ps-utility-alist) 5752 (pr-choice-alist pr-ps-utility-alist)
5753 "\n PostScript Utility : " 5753 "\n PostScript Utility : "
5754 " ") 5754 " ")
5755 ;; 1c. PostScript File: Use It AS-IS 5755 ;; 1c. PostScript File: No Preprocessing
5756 (pr-insert-toggle 'pr-i-ps-as-is " Use It ") 5756 (pr-insert-toggle 'pr-i-ps-as-is " No Preprocessing"))
5757 (pr-insert-italic "AS-IS"))
5758 5757
5759 5758
5760(defun pr-insert-section-2 () 5759(defun pr-insert-section-2 ()
@@ -5882,7 +5881,8 @@ COMMAND.exe, COMMAND.bat and COMMAND.com in this order."
5882 (pr-insert-toggle 'pr-print-using-ghostscript " Print via Ghostscript\n ") 5881 (pr-insert-toggle 'pr-print-using-ghostscript " Print via Ghostscript\n ")
5883 5882
5884 ;; 4. Settings: Upside-Down Page Parity 5883 ;; 4. Settings: Upside-Down Page Parity
5885 (pr-insert-toggle 'ps-print-upside-down " Upside-Down ") 5884 (pr-insert-toggle 'ps-print-upside-down " Upside-Down")
5885 (pr-insert-italic "\n\nSelect Pages : " 2 14)
5886 (pr-insert-menu "Page Parity" 'ps-even-or-odd-pages 5886 (pr-insert-menu "Page Parity" 'ps-even-or-odd-pages
5887 (mapcar #'(lambda (alist) 5887 (mapcar #'(lambda (alist)
5888 (list 'quote 5888 (list 'quote
diff --git a/lisp/progmodes/ebnf-iso.el b/lisp/progmodes/ebnf-iso.el
index 148f23d2cab..0d9977d7084 100644
--- a/lisp/progmodes/ebnf-iso.el
+++ b/lisp/progmodes/ebnf-iso.el
@@ -5,7 +5,7 @@
5 5
6;; Author: Vinicius Jose Latorre <viniciusjl@ig.com.br> 6;; Author: Vinicius Jose Latorre <viniciusjl@ig.com.br>
7;; Maintainer: Vinicius Jose Latorre <viniciusjl@ig.com.br> 7;; Maintainer: Vinicius Jose Latorre <viniciusjl@ig.com.br>
8;; Time-stamp: <2004/02/22 14:24:55 vinicius> 8;; Time-stamp: <2004/02/29 18:31:33 vinicius>
9;; Keywords: wp, ebnf, PostScript 9;; Keywords: wp, ebnf, PostScript
10;; Version: 1.7 10;; Version: 1.7
11 11
@@ -113,7 +113,8 @@
113;; ISO EBNF accepts the characters given by <character> production above, 113;; ISO EBNF accepts the characters given by <character> production above,
114;; HORIZONTAL TAB (^I), VERTICAL TAB (^K), NEWLINE (^J or ^M) and FORM FEED 114;; HORIZONTAL TAB (^I), VERTICAL TAB (^K), NEWLINE (^J or ^M) and FORM FEED
115;; (^L), any other characters are illegal. But ebnf2ps accepts also the 115;; (^L), any other characters are illegal. But ebnf2ps accepts also the
116;; european 8-bit accentuated characters (from \240 to \377) and underscore. 116;; european 8-bit accentuated characters (from \240 to \377) and underscore
117;; (_).
117;; 118;;
118;; 119;;
119;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 120;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
diff --git a/lisp/progmodes/ebnf-otz.el b/lisp/progmodes/ebnf-otz.el
index aae8906c384..5c98677c334 100644
--- a/lisp/progmodes/ebnf-otz.el
+++ b/lisp/progmodes/ebnf-otz.el
@@ -5,7 +5,7 @@
5 5
6;; Author: Vinicius Jose Latorre <viniciusjl@ig.com.br> 6;; Author: Vinicius Jose Latorre <viniciusjl@ig.com.br>
7;; Maintainer: Vinicius Jose Latorre <viniciusjl@ig.com.br> 7;; Maintainer: Vinicius Jose Latorre <viniciusjl@ig.com.br>
8;; Time-stamp: <2004/02/22 14:24:37 vinicius> 8;; Time-stamp: <2004/02/29 18:40:14 vinicius>
9;; Keywords: wp, ebnf, PostScript 9;; Keywords: wp, ebnf, PostScript
10;; Version: 1.0 10;; Version: 1.0
11 11
@@ -38,6 +38,46 @@
38;; See ebnf2ps.el for documentation. 38;; See ebnf2ps.el for documentation.
39;; 39;;
40;; 40;;
41;; Optimizations
42;; -------------
43;;
44;;
45;; *To be implemented*:
46;; left recursion:
47;; A = B | A C B | A C D. ==> A = B {C (B | D)}*.
48;;
49;; right recursion:
50;; A = B | C A. ==> A = {C}* B.
51;; A = B | D | C A | E A. ==> A = { C | E }* ( B | D ).
52;;
53;; optional:
54;; A = B | C B. ==> A = [C] B.
55;; A = B | B C. ==> A = B [C].
56;; A = D | B D | B C D. ==> A = [B [C]] D.
57;;
58;;
59;; *Already implemented*:
60;; left recursion:
61;; A = B | A C. ==> A = B {C}*.
62;; A = B | A B. ==> A = {B}+.
63;; A = | A B. ==> A = {B}*.
64;; A = B | A C B. ==> A = {B || C}+.
65;; A = B | D | A C | A E. ==> A = ( B | D ) { C | E }*.
66;;
67;; optional:
68;; A = B | . ==> A = [B].
69;; A = | B . ==> A = [B].
70;;
71;; factoration:
72;; A = B C | B D. ==> A = B (C | D).
73;; A = C B | D B. ==> A = (C | D) B.
74;; A = B C E | B D E. ==> A = B (C | D) E.
75;;
76;; none:
77;; A = B | C | . ==> A = B | C | .
78;; A = B | C A D. ==> A = B | C A D.
79;;
80;;
41;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 81;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
42 82
43;;; Code: 83;;; Code:
diff --git a/lisp/progmodes/ebnf-yac.el b/lisp/progmodes/ebnf-yac.el
index 199e076ad61..ff097b5195d 100644
--- a/lisp/progmodes/ebnf-yac.el
+++ b/lisp/progmodes/ebnf-yac.el
@@ -5,7 +5,7 @@
5 5
6;; Author: Vinicius Jose Latorre <viniciusjl@ig.com.br> 6;; Author: Vinicius Jose Latorre <viniciusjl@ig.com.br>
7;; Maintainer: Vinicius Jose Latorre <viniciusjl@ig.com.br> 7;; Maintainer: Vinicius Jose Latorre <viniciusjl@ig.com.br>
8;; Time-stamp: <2004/02/22 14:24:17 vinicius> 8;; Time-stamp: <2004/02/29 20:23:29 vinicius>
9;; Keywords: wp, ebnf, PostScript 9;; Keywords: wp, ebnf, PostScript
10;; Version: 1.2.1 10;; Version: 1.2.1
11 11
@@ -68,7 +68,7 @@
68;; Name = "[A-Za-z][A-Za-z0-9_.]*". 68;; Name = "[A-Za-z][A-Za-z0-9_.]*".
69;; 69;;
70;; Comment = "/*" "any character, but the sequence \"*/\"" "*/" 70;; Comment = "/*" "any character, but the sequence \"*/\"" "*/"
71;; | "//" "any character" "\\n". 71;; | "//" "any character, but the newline \"\\n\"" "\\n".
72;; 72;;
73;; 73;;
74;; In other words, a valid Name begins with a letter (upper or lower case) 74;; In other words, a valid Name begins with a letter (upper or lower case)
diff --git a/lisp/progmodes/sh-script.el b/lisp/progmodes/sh-script.el
index f765b37c76a..5635a1b17f7 100644
--- a/lisp/progmodes/sh-script.el
+++ b/lisp/progmodes/sh-script.el
@@ -1,6 +1,6 @@
1;;; sh-script.el --- shell-script editing commands for Emacs 1;;; sh-script.el --- shell-script editing commands for Emacs
2 2
3;; Copyright (C) 1993, 94, 95, 96, 97, 1999, 2001, 2003 3;; Copyright (C) 1993, 94, 95, 96, 97, 1999, 2001, 03, 2004
4;; Free Software Foundation, Inc. 4;; Free Software Foundation, Inc.
5 5
6;; Author: Daniel Pfeiffer <occitan@esperanto.org> 6;; Author: Daniel Pfeiffer <occitan@esperanto.org>
@@ -917,7 +917,7 @@ be indented (i.e. a <<- was used rather than just <<)."
917 ;; Skip through one pattern 917 ;; Skip through one pattern
918 (while 918 (while
919 (or (/= 0 (skip-syntax-backward "w_")) 919 (or (/= 0 (skip-syntax-backward "w_"))
920 (/= 0 (skip-chars-backward "?[]*/\\")) 920 (/= 0 (skip-chars-backward "?[]*@/\\"))
921 (and (sh-is-quoted-p (1- (point))) 921 (and (sh-is-quoted-p (1- (point)))
922 (goto-char (- (point) 2))) 922 (goto-char (- (point) 2)))
923 (when (memq (char-before) '(?\" ?\')) 923 (when (memq (char-before) '(?\" ?\'))
diff --git a/lisp/ps-print.el b/lisp/ps-print.el
index e49d5f5d251..7cf9ec86f4a 100644
--- a/lisp/ps-print.el
+++ b/lisp/ps-print.el
@@ -1,7 +1,7 @@
1;;; ps-print.el --- print text from the buffer as PostScript 1;;; ps-print.el --- print text from the buffer as PostScript
2 2
3;; Copyright (C) 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 3;; Copyright (C) 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
4;; 2003 Free Software Foundation, Inc. 4;; 2003, 2004 Free Software Foundation, Inc.
5 5
6;; Author: Jim Thompson (was <thompson@wg2.waii.com>) 6;; Author: Jim Thompson (was <thompson@wg2.waii.com>)
7;; Jacques Duthen (was <duthen@cegelec-red.fr>) 7;; Jacques Duthen (was <duthen@cegelec-red.fr>)
@@ -10,12 +10,12 @@
10;; Maintainer: Kenichi Handa <handa@etl.go.jp> (multi-byte characters) 10;; Maintainer: Kenichi Handa <handa@etl.go.jp> (multi-byte characters)
11;; Vinicius Jose Latorre <viniciusjl@ig.com.br> 11;; Vinicius Jose Latorre <viniciusjl@ig.com.br>
12;; Keywords: wp, print, PostScript 12;; Keywords: wp, print, PostScript
13;; Time-stamp: <2003/07/10 19:19:12 vinicius> 13;; Time-stamp: <2004/02/29 00:07:55 vinicius>
14;; Version: 6.6.2 14;; Version: 6.6.3
15;; X-URL: http://www.cpqd.com.br/~vinicius/emacs/ 15;; X-URL: http://www.cpqd.com.br/~vinicius/emacs/
16 16
17(defconst ps-print-version "6.6.2" 17(defconst ps-print-version "6.6.3"
18 "ps-print.el, v 6.6.2 <2003/07/10 vinicius> 18 "ps-print.el, v 6.6.3 <2004/02/29 vinicius>
19 19
20Vinicius's last change version -- this file may have been edited as part of 20Vinicius's last change version -- this file may have been edited as part of
21Emacs without changes to the version number. When reporting bugs, please also 21Emacs without changes to the version number. When reporting bugs, please also
@@ -1213,6 +1213,9 @@ Please send all bug fixes and enhancements to
1213;; 1213;;
1214;; [vinicius] Vinicius Jose Latorre <viniciusjl@ig.com.br> 1214;; [vinicius] Vinicius Jose Latorre <viniciusjl@ig.com.br>
1215;; 1215;;
1216;; 20040229
1217;; `ps-time-stamp-yyyy-mm-dd', `ps-time-stamp-iso8601'
1218;;
1216;; 20010619 1219;; 20010619
1217;; `ps-time-stamp-locale-default' 1220;; `ps-time-stamp-locale-default'
1218;; 1221;;
@@ -1261,7 +1264,7 @@ Please send all bug fixes and enhancements to
1261;; 1264;;
1262;; [keinichi] 19990509 Kein'ichi Handa <handa@etl.go.jp> 1265;; [keinichi] 19990509 Kein'ichi Handa <handa@etl.go.jp>
1263;; 1266;;
1264;; `ps-print-region-function' 1267;; `ps-print-region-function'
1265;; 1268;;
1266;; [vinicius] Vinicius Jose Latorre <viniciusjl@ig.com.br> 1269;; [vinicius] Vinicius Jose Latorre <viniciusjl@ig.com.br>
1267;; 1270;;
@@ -1274,7 +1277,7 @@ Please send all bug fixes and enhancements to
1274;; 1277;;
1275;; [keinichi] 19980819 Kein'ichi Handa <handa@etl.go.jp> 1278;; [keinichi] 19980819 Kein'ichi Handa <handa@etl.go.jp>
1276;; 1279;;
1277;; Multi-byte buffer handling. 1280;; Multi-byte buffer handling.
1278;; 1281;;
1279;; [vinicius] Vinicius Jose Latorre <viniciusjl@ig.com.br> 1282;; [vinicius] Vinicius Jose Latorre <viniciusjl@ig.com.br>
1280;; 1283;;
@@ -1370,9 +1373,11 @@ Please send all bug fixes and enhancements to
1370;; Thanks to David X Callaway <dxc@xprt.net> for helping debugging PostScript 1373;; Thanks to David X Callaway <dxc@xprt.net> for helping debugging PostScript
1371;; level 1 compatibility. 1374;; level 1 compatibility.
1372;; 1375;;
1373;; Thanks to Colin Marquardt <colin.marquardt@usa.alcatel.com> for upside-down, 1376;; Thanks to Colin Marquardt <colin.marquardt@usa.alcatel.com> for:
1374;; line number step, line number start and zebra stripe follow suggestions, and 1377;; - upside-down, line number step, line number start and zebra stripe
1375;; for XEmacs beta-tests. 1378;; follow suggestions.
1379;; - `ps-time-stamp-yyyy-mm-dd' and `ps-time-stamp-iso8601' suggestion.
1380;; - and for XEmacs beta-tests.
1376;; 1381;;
1377;; Thanks to Klaus Berndl <klaus.berndl@sdm.de> for user defined PostScript 1382;; Thanks to Klaus Berndl <klaus.berndl@sdm.de> for user defined PostScript
1378;; prologue code suggestion, for odd/even printing suggestion and for 1383;; prologue code suggestion, for odd/even printing suggestion and for
@@ -3111,7 +3116,9 @@ delimiters '(' and ')'.
3111For symbols with bound functions, the function is called and should return a 3116For symbols with bound functions, the function is called and should return a
3112string to be inserted into the array. For symbols with bound values, the value 3117string to be inserted into the array. For symbols with bound values, the value
3113should be a string to be inserted into the array. In either case, function or 3118should be a string to be inserted into the array. In either case, function or
3114variable, the string value has PostScript string delimiters added to it." 3119variable, the string value has PostScript string delimiters added to it.
3120
3121If symbols are unbounded, they are silently ignored."
3115 :type '(repeat (choice :menu-tag "Left Header" 3122 :type '(repeat (choice :menu-tag "Left Header"
3116 :tag "Left Header" 3123 :tag "Left Header"
3117 string symbol)) 3124 string symbol))
@@ -3135,6 +3142,11 @@ There are the following basic functions implemented:
3135 3142
3136 `ps-time-stamp-mon-dd-yyyy' Return date as \"Jun 18 2001\". 3143 `ps-time-stamp-mon-dd-yyyy' Return date as \"Jun 18 2001\".
3137 3144
3145 `ps-time-stamp-yyyy-mm-dd' Return date as \"2001-06-18\" (ISO
3146 date).
3147
3148 `ps-time-stamp-iso8601' Alias for `ps-time-stamp-yyyy-mm-dd'.
3149
3138You can also create your own time stamp function by using `format-time-string' 3150You can also create your own time stamp function by using `format-time-string'
3139\(which see)." 3151\(which see)."
3140 :type '(repeat (choice :menu-tag "Right Header" 3152 :type '(repeat (choice :menu-tag "Right Header"
@@ -3157,7 +3169,9 @@ string literals should be delimited with PostScript string delimiters '(' and
3157For symbols with bound functions, the function is called and should return a 3169For symbols with bound functions, the function is called and should return a
3158string to be inserted into the array. For symbols with bound values, the value 3170string to be inserted into the array. For symbols with bound values, the value
3159should be a string to be inserted into the array. In either case, function or 3171should be a string to be inserted into the array. In either case, function or
3160variable, the string value has PostScript string delimiters added to it." 3172variable, the string value has PostScript string delimiters added to it.
3173
3174If symbols are unbounded, they are silently ignored."
3161 :version "21.1" 3175 :version "21.1"
3162 :type '(repeat (choice :menu-tag "Left Footer" 3176 :type '(repeat (choice :menu-tag "Left Footer"
3163 :tag "Left Footer" 3177 :tag "Left Footer"
@@ -3182,6 +3196,11 @@ There are the following basic functions implemented:
3182 3196
3183 `ps-time-stamp-mon-dd-yyyy' Return date as \"Jun 18 2001\". 3197 `ps-time-stamp-mon-dd-yyyy' Return date as \"Jun 18 2001\".
3184 3198
3199 `ps-time-stamp-yyyy-mm-dd' Return date as \"2001-06-18\" (ISO
3200 date).
3201
3202 `ps-time-stamp-iso8601' Alias for `ps-time-stamp-yyyy-mm-dd'.
3203
3185You can also create your own time stamp function by using `format-time-string' 3204You can also create your own time stamp function by using `format-time-string'
3186\(which see)." 3205\(which see)."
3187 :version "21.1" 3206 :version "21.1"
@@ -3694,6 +3713,15 @@ It can be retrieved with `(ps-get ALIST-SYM KEY)'."
3694 (format-time-string "%b %d %Y")) 3713 (format-time-string "%b %d %Y"))
3695 3714
3696 3715
3716(defun ps-time-stamp-yyyy-mm-dd ()
3717 "Return date as \"2001-06-18\" (ISO date)."
3718 (format-time-string "%Y-%m-%d"))
3719
3720
3721(defalias 'ps-time-stamp-iso8601 'ps-time-stamp-yyyy-mm-dd
3722 "Alias for `ps-time-stamp-yyyy-mm-dd' (which see).")
3723
3724
3697(defun ps-time-stamp-hh:mm:ss () 3725(defun ps-time-stamp-hh:mm:ss ()
3698 "Return time as \"17:28:31\"." 3726 "Return time as \"17:28:31\"."
3699 (format-time-string "%T")) 3727 (format-time-string "%T"))
@@ -6608,10 +6636,12 @@ If FACE is not a valid face name, it is used default face."
6608(defun ps-kill-emacs-check () 6636(defun ps-kill-emacs-check ()
6609 (let (ps-buffer) 6637 (let (ps-buffer)
6610 (and (setq ps-buffer (get-buffer ps-spool-buffer-name)) 6638 (and (setq ps-buffer (get-buffer ps-spool-buffer-name))
6639 (buffer-name ps-buffer) ; check if it's not killed
6611 (buffer-modified-p ps-buffer) 6640 (buffer-modified-p ps-buffer)
6612 (y-or-n-p "Unprinted PostScript waiting; print now? ") 6641 (y-or-n-p "Unprinted PostScript waiting; print now? ")
6613 (ps-despool)) 6642 (ps-despool))
6614 (and (setq ps-buffer (get-buffer ps-spool-buffer-name)) 6643 (and (setq ps-buffer (get-buffer ps-spool-buffer-name))
6644 (buffer-name ps-buffer) ; check if it's not killed
6615 (buffer-modified-p ps-buffer) 6645 (buffer-modified-p ps-buffer)
6616 (not (yes-or-no-p "Unprinted PostScript waiting; exit anyway? ")) 6646 (not (yes-or-no-p "Unprinted PostScript waiting; exit anyway? "))
6617 (error "Unprinted PostScript")))) 6647 (error "Unprinted PostScript"))))
diff --git a/lisp/simple.el b/lisp/simple.el
index d3e189dbe13..1f710576fa9 100644
--- a/lisp/simple.el
+++ b/lisp/simple.el
@@ -739,11 +739,11 @@ to get different commands to edit and resubmit."
739This is used for all minibuffer input 739This is used for all minibuffer input
740except when an alternate history list is specified.") 740except when an alternate history list is specified.")
741(defvar minibuffer-history-sexp-flag nil 741(defvar minibuffer-history-sexp-flag nil
742 "Non-nil when doing history operations on the variable `command-history'. 742 "Control whether history list elements are expressions or strings.
743More generally, indicates that the history list being acted on 743If the value of this variable equals current minibuffer depth,
744contains expressions rather than strings. 744they are expressions; otherwise they are strings.
745It is only valid if its value equals the current minibuffer depth, 745\(That convention is designed to do the right thing fora
746to handle recursive uses of the minibuffer.") 746recursive uses of the minibuffer.)")
747(setq minibuffer-history-variable 'minibuffer-history) 747(setq minibuffer-history-variable 'minibuffer-history)
748(setq minibuffer-history-position nil) 748(setq minibuffer-history-position nil)
749(defvar minibuffer-history-search-history nil) 749(defvar minibuffer-history-search-history nil)
@@ -972,9 +972,13 @@ as an argument limits undo to changes within the current region."
972 ;; another undo command will find the undo history empty 972 ;; another undo command will find the undo history empty
973 ;; and will get another error. To begin undoing the undos, 973 ;; and will get another error. To begin undoing the undos,
974 ;; you must type some other command. 974 ;; you must type some other command.
975 (setq this-command 'undo)
976 (let ((modified (buffer-modified-p)) 975 (let ((modified (buffer-modified-p))
977 (recent-save (recent-auto-save-p))) 976 (recent-save (recent-auto-save-p)))
977 ;; If we get an error in undo-start,
978 ;; the next command should not be a "consecutive undo".
979 ;; So set `this-command' to something other than `undo'.
980 (setq this-command 'undo-start)
981
978 (unless (eq last-command 'undo) 982 (unless (eq last-command 'undo)
979 (setq undo-in-region 983 (setq undo-in-region
980 (if transient-mark-mode mark-active (and arg (not (numberp arg))))) 984 (if transient-mark-mode mark-active (and arg (not (numberp arg)))))
@@ -983,6 +987,8 @@ as an argument limits undo to changes within the current region."
983 (undo-start)) 987 (undo-start))
984 ;; get rid of initial undo boundary 988 ;; get rid of initial undo boundary
985 (undo-more 1)) 989 (undo-more 1))
990 ;; If we got this far, the next command should be a consecutive undo.
991 (setq this-command 'undo)
986 ;; Check to see whether we're hitting a redo record, and if 992 ;; Check to see whether we're hitting a redo record, and if
987 ;; so, ask the user whether she wants to skip the redo/undo pair. 993 ;; so, ask the user whether she wants to skip the redo/undo pair.
988 (let ((equiv (gethash pending-undo-list undo-equiv-table))) 994 (let ((equiv (gethash pending-undo-list undo-equiv-table)))
@@ -2239,7 +2245,10 @@ even beep.)"
2239 (save-excursion 2245 (save-excursion
2240 (end-of-visible-line) (point)))) 2246 (end-of-visible-line) (point))))
2241 (if (or (save-excursion 2247 (if (or (save-excursion
2242 (skip-chars-forward " \t" end) 2248 ;; If trailing whitespace is visible,
2249 ;; don't treat it as nothing.
2250 (unless show-trailing-whitespace
2251 (skip-chars-forward " \t" end))
2243 (= (point) end)) 2252 (= (point) end))
2244 (and kill-whole-line (bolp))) 2253 (and kill-whole-line (bolp)))
2245 (forward-visible-line 1) 2254 (forward-visible-line 1)
diff --git a/lisp/sort.el b/lisp/sort.el
index 541f598e7a5..76559f17288 100644
--- a/lisp/sort.el
+++ b/lisp/sort.el
@@ -480,19 +480,30 @@ Use \\[untabify] to convert tabs to spaces before sorting."
480 (setq col-end (max col-beg1 col-end1)) 480 (setq col-end (max col-beg1 col-end1))
481 (if (search-backward "\t" beg1 t) 481 (if (search-backward "\t" beg1 t)
482 (error "sort-columns does not work with tabs -- use M-x untabify")) 482 (error "sort-columns does not work with tabs -- use M-x untabify"))
483 (if (not (or (eq system-type 'vax-vms) 483 (if (not (or (memq system-type '(vax-vms windows-nt ms-dos))
484 (text-properties-at beg1) 484 (let ((pos beg1) plist fontified)
485 (< (next-property-change beg1 nil end1) end1))) 485 (catch 'found
486 (while (< pos end1)
487 (setq plist (text-properties-at pos))
488 (setq fontified (plist-get plist 'fontified))
489 (while (consp plist)
490 (unless (or (eq (car plist) 'fontified)
491 (and (eq (car plist) 'face)
492 fontified))
493 (throw 'found t))
494 (setq plist (cddr plist)))
495 (setq pos (next-property-change pos nil end1)))))))
486 ;; Use the sort utility if we can; it is 4 times as fast. 496 ;; Use the sort utility if we can; it is 4 times as fast.
487 ;; Do not use it if there are any properties in the region, 497 ;; Do not use it if there are any non-font-lock properties
488 ;; since the sort utility would lose the properties. 498 ;; in the region, since the sort utility would lose the
499 ;; properties.
489 (let ((sort-args (list (if reverse "-rt\n" "-t\n") 500 (let ((sort-args (list (if reverse "-rt\n" "-t\n")
490 (concat "+0." (int-to-string col-start)) 501 (concat "+0." (int-to-string col-start))
491 (concat "-0." (int-to-string col-end))))) 502 (concat "-0." (int-to-string col-end)))))
492 (when sort-fold-case 503 (when sort-fold-case
493 (push "-f" sort-args)) 504 (push "-f" sort-args))
494 (apply #'call-process-region beg1 end1 "sort" t t nil sort-args)) 505 (apply #'call-process-region beg1 end1 "sort" t t nil sort-args))
495 ;; On VMS, use Emacs's own facilities. 506 ;; On VMS and ms-windows, use Emacs's own facilities.
496 (save-excursion 507 (save-excursion
497 (save-restriction 508 (save-restriction
498 (narrow-to-region beg1 end1) 509 (narrow-to-region beg1 end1)
diff --git a/lisp/startup.el b/lisp/startup.el
index e79ea4407b1..3186c8a3c27 100644
--- a/lisp/startup.el
+++ b/lisp/startup.el
@@ -83,8 +83,8 @@ the startup message unless he personally acts to inhibit it."
83(defvar command-switch-alist nil 83(defvar command-switch-alist nil
84 "Alist of command-line switches. 84 "Alist of command-line switches.
85Elements look like (SWITCH-STRING . HANDLER-FUNCTION). 85Elements look like (SWITCH-STRING . HANDLER-FUNCTION).
86HANDLER-FUNCTION receives switch name as sole arg; 86HANDLER-FUNCTION receives the switch string as its sole argument;
87remaining command-line args are in the variable `command-line-args-left'.") 87the remaining command-line args are in the variable `command-line-args-left'.")
88 88
89(defvar command-line-args-left nil 89(defvar command-line-args-left nil
90 "List of command-line args not yet processed.") 90 "List of command-line args not yet processed.")
diff --git a/lisp/textmodes/fill.el b/lisp/textmodes/fill.el
index 5aded4a85e8..7a794d67c5e 100644
--- a/lisp/textmodes/fill.el
+++ b/lisp/textmodes/fill.el
@@ -1,6 +1,6 @@
1;;; fill.el --- fill commands for Emacs 1;;; fill.el --- fill commands for Emacs
2 2
3;; Copyright (C) 1985,86,92,94,95,96,97,1999,2001,02,2003 3;; Copyright (C) 1985,86,92,94,95,96,97,1999,2001,02,03,2004
4;; Free Software Foundation, Inc. 4;; Free Software Foundation, Inc.
5 5
6;; Maintainer: FSF 6;; Maintainer: FSF
@@ -732,7 +732,7 @@ If `fill-paragraph-function' is nil, return the `fill-prefix' used for filling."
732 ;; Then try our syntax-aware filling code. 732 ;; Then try our syntax-aware filling code.
733 (and fill-paragraph-handle-comment 733 (and fill-paragraph-handle-comment
734 ;; Our code only handles \n-terminated comments right now. 734 ;; Our code only handles \n-terminated comments right now.
735 comment-start comment-start-skip (equal comment-end "") 735 comment-start (equal comment-end "")
736 (let ((fill-paragraph-handle-comment nil)) 736 (let ((fill-paragraph-handle-comment nil))
737 (fill-comment-paragraph arg))) 737 (fill-comment-paragraph arg)))
738 ;; If it all fails, default to the good ol' text paragraph filling. 738 ;; If it all fails, default to the good ol' text paragraph filling.
@@ -822,7 +822,11 @@ can take care of filling. JUSTIFY is used as in `fill-paragraph'."
822 (looking-at comment-re))) 822 (looking-at comment-re)))
823 ;; We may have gone too far. Go forward again. 823 ;; We may have gone too far. Go forward again.
824 (line-beginning-position 824 (line-beginning-position
825 (if (looking-at (concat ".*\\(?:" comment-start-skip "\\)")) 825 (if (progn
826 (goto-char
827 (or (comment-search-forward (line-end-position) t)
828 (point)))
829 (looking-at comment-re))
826 1 2)))) 830 1 2))))
827 ;; Find the beginning of the first line past the region to fill. 831 ;; Find the beginning of the first line past the region to fill.
828 (save-excursion 832 (save-excursion
diff --git a/lisp/xml.el b/lisp/xml.el
index dbd991f5583..61a79b37104 100644
--- a/lisp/xml.el
+++ b/lisp/xml.el
@@ -1,6 +1,6 @@
1;;; xml.el --- XML parser 1;;; xml.el --- XML parser
2 2
3;; Copyright (C) 2000, 2001, 2003 Free Software Foundation, Inc. 3;; Copyright (C) 2000, 01, 03, 2004 Free Software Foundation, Inc.
4 4
5;; Author: Emmanuel Briot <briot@gnat.com> 5;; Author: Emmanuel Briot <briot@gnat.com>
6;; Maintainer: Mark A. Hershberger <mah@everybody.org> 6;; Maintainer: Mark A. Hershberger <mah@everybody.org>
@@ -109,10 +109,7 @@ CHILD-NAME should be a lower case symbol."
109Return `nil' if the attribute was not found. 109Return `nil' if the attribute was not found.
110 110
111See also `xml-get-attribute'." 111See also `xml-get-attribute'."
112 (when (xml-node-attributes node) 112 (cdr (assoc attribute (xml-node-attributes node))))
113 (let ((value (assoc attribute (xml-node-attributes node))))
114 (when value
115 (cdr value)))))
116 113
117(defsubst xml-get-attribute (node attribute) 114(defsubst xml-get-attribute (node attribute)
118 "Get from NODE the value of ATTRIBUTE. 115 "Get from NODE the value of ATTRIBUTE.