diff options
| author | Karoly Lorentey | 2004-03-07 15:30:22 +0000 |
|---|---|---|
| committer | Karoly Lorentey | 2004-03-07 15:30:22 +0000 |
| commit | 54e81dc64794f315efdf418518a5e00f419cbcbd (patch) | |
| tree | 4c2dc33f0c1e697b810298ba5e9972341c0d4240 /lisp | |
| parent | 4388f1016b80bd33a75481b28352ae6c456e386a (diff) | |
| parent | ee96c8385cf436bf308665e5d6c8fb16c761e8e1 (diff) | |
| download | emacs-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/ChangeLog | 213 | ||||
| -rw-r--r-- | lisp/Makefile.in | 22 | ||||
| -rw-r--r-- | lisp/allout.el | 8 | ||||
| -rw-r--r-- | lisp/desktop.el | 47 | ||||
| -rw-r--r-- | lisp/emulation/tpu-edt.el | 2 | ||||
| -rw-r--r-- | lisp/eshell/em-smart.el | 2 | ||||
| -rw-r--r-- | lisp/files.el | 7 | ||||
| -rw-r--r-- | lisp/font-lock.el | 20 | ||||
| -rw-r--r-- | lisp/gdb-ui.el | 43 | ||||
| -rw-r--r-- | lisp/gnus/ChangeLog | 11 | ||||
| -rw-r--r-- | lisp/gnus/message.el | 7 | ||||
| -rw-r--r-- | lisp/help-at-pt.el | 2 | ||||
| -rw-r--r-- | lisp/hexl.el | 17 | ||||
| -rw-r--r-- | lisp/isearch.el | 16 | ||||
| -rw-r--r-- | lisp/mail/mail-utils.el | 25 | ||||
| -rw-r--r-- | lisp/mail/rmail.el | 9 | ||||
| -rw-r--r-- | lisp/mail/sendmail.el | 5 | ||||
| -rw-r--r-- | lisp/mouse-sel.el | 17 | ||||
| -rw-r--r-- | lisp/net/browse-url.el | 16 | ||||
| -rw-r--r-- | lisp/newcomment.el | 40 | ||||
| -rw-r--r-- | lisp/pcvs-info.el | 7 | ||||
| -rw-r--r-- | lisp/printing.el | 34 | ||||
| -rw-r--r-- | lisp/progmodes/ebnf-iso.el | 5 | ||||
| -rw-r--r-- | lisp/progmodes/ebnf-otz.el | 42 | ||||
| -rw-r--r-- | lisp/progmodes/ebnf-yac.el | 4 | ||||
| -rw-r--r-- | lisp/progmodes/sh-script.el | 4 | ||||
| -rw-r--r-- | lisp/ps-print.el | 54 | ||||
| -rw-r--r-- | lisp/simple.el | 23 | ||||
| -rw-r--r-- | lisp/sort.el | 23 | ||||
| -rw-r--r-- | lisp/startup.el | 4 | ||||
| -rw-r--r-- | lisp/textmodes/fill.el | 10 | ||||
| -rw-r--r-- | lisp/xml.el | 7 |
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 @@ | |||
| 1 | 2004-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 | |||
| 8 | 2004-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 | |||
| 15 | 2004-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 | |||
| 21 | 2004-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 | |||
| 29 | 2004-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 | |||
| 63 | 2004-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 | |||
| 68 | 2004-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 | |||
| 80 | 2004-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 | |||
| 87 | 2004-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 | |||
| 98 | 2004-03-02 Kim F. Storm <storm@cua.dk> | ||
| 99 | |||
| 100 | * gdb-ui.el (gdb-mouse-toggle-breakpoint): Remove debug message. | ||
| 101 | |||
| 102 | 2004-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 | |||
| 118 | 2004-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 | |||
| 1 | 2004-02-29 Kai Grossjohann <kai.grossjohann@gmx.net> | 125 | 2004-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 | ||
| 17 | 2004-02-29 Michael Albinus <Michael.Albinus@alcatel.de> | 139 | 2004-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 | ||
| 126 | 2004-02-28 Kim F. Storm <storm@cua.dk> | 245 | 2004-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 @@ | |||
| 152 | 2004-02-27 Kevin Ryde <user42@zip.com.au> | 271 | 2004-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 | ||
| 157 | 2004-02-27 Markus Rost <rost@mathematik.uni-bielefeld.de> | 276 | 2004-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 | ||
| 179 | 2004-02-25 Vinicius Jose Latorre <viniciusjl@ig.com.br> | 297 | 2004-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 @@ | |||
| 260 | 2004-02-21 Stephen Compall <s11@member.fsf.org> | 377 | 2004-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 | ||
| 294 | 2004-02-20 John Wiegley <johnw@newartisans.com> | 410 | 2004-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 | ||
| 318 | 2004-02-19 Simon Josefsson <jas@extundo.com> | 434 | 2004-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 | ||
| 575 | 2004-02-10 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> | 692 | 2004-02-10 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> |
| 576 | 693 | ||
| @@ -3061,7 +3178,7 @@ | |||
| 3061 | 3178 | ||
| 3062 | 2003-08-26 Glenn Morris <gmorris@ast.cam.ac.uk> | 3179 | 2003-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. | ||
| 114 | AUTOGENEL = 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 | ||
| 132 | setwins=subdirs=`find $$wd -type d -print`; \ | 139 | setwins=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 | ||
| 139 | setwins_almost=subdirs=`find $$wd -type d -print`; \ | 146 | setwins_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 | ||
| 301 | bootstrap-clean: | 305 | bootstrap-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 | |
| 314 | maintainer-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 | |||
| 3015 | numbered form. It has effect only if `allout-numbered-bullet' is | 3015 | numbered form. It has effect only if `allout-numbered-bullet' is |
| 3016 | non-nil and soliciting was not explicitly invoked (via first arg). | 3016 | non-nil and soliciting was not explicitly invoked (via first arg). |
| 3017 | Its effect, numbering or denumbering, then depends on the setting | 3017 | Its effect, numbering or denumbering, then depends on the setting |
| 3018 | of the forth arg, INDEX. | 3018 | of the fourth arg, INDEX. |
| 3019 | 3019 | ||
| 3020 | If NUMBER-CONTROL is non-nil and forth arg INDEX is nil, then the | 3020 | If NUMBER-CONTROL is non-nil and fourth arg INDEX is nil, then the |
| 3021 | prefix of the topic is forced to be non-numbered. Null index and | 3021 | prefix of the topic is forced to be non-numbered. Null index and |
| 3022 | non-nil NUMBER-CONTROL forces denumbering. Non-nil INDEX (and | 3022 | non-nil NUMBER-CONTROL forces denumbering. Non-nil INDEX (and |
| 3023 | non-nil NUMBER-CONTROL) forces a numbered-prefix form. If non-nil | 3023 | non-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. |
| 94 | Written into the desktop file and used at desktop read to provide | 94 | Written into the desktop file and used at desktop read to provide |
| 95 | backward compatibility.") | 95 | backward 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'. |
| 167 | May e.g. be used to show a buffer list." | 167 | May 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. |
| 215 | This variable is maintained for backward compatibility only. Use | 215 | This 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. |
| 429 | TXT is a string that when read and evaluated yields value. | 428 | TXT is a string that when read and evaluated yields value. |
| 430 | QUOTE may be `may' (value may be quoted), | 429 | QUOTE 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. |
| 509 | Not all types of values are supported." | 508 | Not 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. |
| 555 | Sets the mark at POS and activates the region according to the | 555 | Sets the mark at POS and activates the region according to the |
| 556 | current version of Emacs." | 556 | current 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. |
| 245 | This is done whenever a command exits sucessfully and both the command | 245 | This is done whenever a command exits successfully and both the command |
| 246 | and the end of the buffer are still visible." | 246 | and 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. | |||
| 855 | This uses the function `display-buffer' as a subroutine; see its | 855 | This uses the function `display-buffer' as a subroutine; see its |
| 856 | documentation for additional customization information." | 856 | documentation 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. | |||
| 866 | This uses the function `display-buffer' as a subroutine; see its | 868 | This uses the function `display-buffer' as a subroutine; see its |
| 867 | documentation for additional customization information." | 869 | documentation 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 | ||
| 1813 | in the current buffer. PUTSTRING is displayed by putting an | ||
| 1814 | overlay into the current buffer with a `before-string' | ||
| 1815 | \"gdb-arrow\" that has a `display' property whose value is | ||
| 1816 | PUTSTRING. 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. | ||
| 1827 | Remove only images that were put in BUFFER with calls to `put-arrow'. | ||
| 1828 | BUFFER 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 @@ | |||
| 1 | 2004-03-04 Stefan Monnier <monnier@iro.umontreal.ca> | ||
| 2 | |||
| 3 | * message.el (message-mode): Set comment-start-skip. | ||
| 4 | |||
| 1 | 2004-02-08 Andreas Schwab <schwab@suse.de> | 5 | 2004-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 | ||
| 31 | 2003-05-06 Jesper Harder <harder@ifa.au.dk> | 35 | 2003-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 | ||
| 48 | 2003-02-18 Juanma Barranquero <lektu@terra.es> | 52 | 2003-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 | ||
| 53 | 2003-02-14 Juanma Barranquero <lektu@terra.es> | 56 | 2003-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. | |||
| 101 | If a timer is already active, there are two ways to make the new | 101 | If a timer is already active, there are two ways to make the new |
| 102 | value take effect immediately. After setting the value, you can | 102 | value take effect immediately. After setting the value, you can |
| 103 | first call `help-at-pt-cancel-timer' and then set a new timer | 103 | first call `help-at-pt-cancel-timer' and then set a new timer |
| 104 | with `help-at-pt-set-timer' . Alternatively, you can set this | 104 | with `help-at-pt-set-timer'. Alternatively, you can set this |
| 105 | variable through Custom. This will not set a timer if none is | 105 | variable through Custom. This will not set a timer if none is |
| 106 | active, but if one is already active, Custom will make it use the | 106 | active, but if one is already active, Custom will make it use the |
| 107 | new value." | 107 | new 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. | ||
| 378 | This 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. |
| 1203 | When 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. |
| 113 | If the optional argument WRAPPER is non-nil, | 114 | If the optional argument WRAPPER is non-nil, |
| 114 | we expect to find and remove the wrapper characters =?ISO-8859-1?Q?....?=. | 115 | we expect to find and remove the wrapper characters =?ISO-8859-1?Q?....?=. |
| 115 | If NOERROR is non-nil, return t if successful." | 116 | If NOERROR is non-nil, return t if successful. |
| 117 | If UNIBYTE is non-nil, insert converted characters as unibyte. | ||
| 118 | That is useful if you are going to character code decoding afterward, | ||
| 119 | as 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 | |||
| 818 | used instead of `browse-url-new-window-flag'." | 818 | used 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 | |||
| 889 | used instead of `browse-url-new-window-flag'." | 889 | used 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 | |||
| 942 | used instead of `browse-url-new-window-flag'." | 942 | used 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 | |||
| 991 | used instead of `browse-url-new-window-flag'." | 991 | used 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 | |||
| 251 | the variables are properly set." | 251 | the 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 | ||
| 16 | Please send all bug fixes and enhancements to | 16 | Please 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 | +-----------------------------+ | | | +---------+ +------------+ |
| 2864 | III 7 |[ ]Landscape | | | \\-|Directory| | As Is... | Ia | 2864 | III 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 | ||
| 20 | Vinicius's last change version -- this file may have been edited as part of | 20 | Vinicius's last change version -- this file may have been edited as part of |
| 21 | Emacs without changes to the version number. When reporting bugs, please also | 21 | Emacs 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 ')'. | |||
| 3111 | For symbols with bound functions, the function is called and should return a | 3116 | For symbols with bound functions, the function is called and should return a |
| 3112 | string to be inserted into the array. For symbols with bound values, the value | 3117 | string to be inserted into the array. For symbols with bound values, the value |
| 3113 | should be a string to be inserted into the array. In either case, function or | 3118 | should be a string to be inserted into the array. In either case, function or |
| 3114 | variable, the string value has PostScript string delimiters added to it." | 3119 | variable, the string value has PostScript string delimiters added to it. |
| 3120 | |||
| 3121 | If 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 | |||
| 3138 | You can also create your own time stamp function by using `format-time-string' | 3150 | You 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 | |||
| 3157 | For symbols with bound functions, the function is called and should return a | 3169 | For symbols with bound functions, the function is called and should return a |
| 3158 | string to be inserted into the array. For symbols with bound values, the value | 3170 | string to be inserted into the array. For symbols with bound values, the value |
| 3159 | should be a string to be inserted into the array. In either case, function or | 3171 | should be a string to be inserted into the array. In either case, function or |
| 3160 | variable, the string value has PostScript string delimiters added to it." | 3172 | variable, the string value has PostScript string delimiters added to it. |
| 3173 | |||
| 3174 | If 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 | |||
| 3185 | You can also create your own time stamp function by using `format-time-string' | 3204 | You 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." | |||
| 739 | This is used for all minibuffer input | 739 | This is used for all minibuffer input |
| 740 | except when an alternate history list is specified.") | 740 | except 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. |
| 743 | More generally, indicates that the history list being acted on | 743 | If the value of this variable equals current minibuffer depth, |
| 744 | contains expressions rather than strings. | 744 | they are expressions; otherwise they are strings. |
| 745 | It is only valid if its value equals the current minibuffer depth, | 745 | \(That convention is designed to do the right thing fora |
| 746 | to handle recursive uses of the minibuffer.") | 746 | recursive 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. |
| 85 | Elements look like (SWITCH-STRING . HANDLER-FUNCTION). | 85 | Elements look like (SWITCH-STRING . HANDLER-FUNCTION). |
| 86 | HANDLER-FUNCTION receives switch name as sole arg; | 86 | HANDLER-FUNCTION receives the switch string as its sole argument; |
| 87 | remaining command-line args are in the variable `command-line-args-left'.") | 87 | the 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." | |||
| 109 | Return `nil' if the attribute was not found. | 109 | Return `nil' if the attribute was not found. |
| 110 | 110 | ||
| 111 | See also `xml-get-attribute'." | 111 | See 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. |