diff options
| author | Karoly Lorentey | 2005-02-28 15:15:44 +0000 |
|---|---|---|
| committer | Karoly Lorentey | 2005-02-28 15:15:44 +0000 |
| commit | ab455350da7728b0f8e1daf92c084092d8a04c29 (patch) | |
| tree | a954961cc3edbabe78e45503a82645ebd5210d7f /lisp | |
| parent | 047ba4c2fb052fb5187226fe5589a1be9d36b687 (diff) | |
| parent | dbaba2d2955aee0f475ad92fab2755314aa3f48a (diff) | |
| download | emacs-ab455350da7728b0f8e1daf92c084092d8a04c29.tar.gz emacs-ab455350da7728b0f8e1daf92c084092d8a04c29.zip | |
Merged from miles@gnu.org--gnu-2005 (patch 31-33, 129-141)
Patches applied:
* miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-129
Update from CVS
* miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-130
Update from CVS
* miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-131
Update from CVS
* miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-132
Update from CVS
* miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-133
Merge from gnus--rel--5.10
* miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-134
Update from CVS
* miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-135
Update from CVS
* miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-136
Update from CVS
* miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-137
Update from CVS
* miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-138
Update from CVS
* miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-139
Merge from gnus--rel--5.10
* miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-140
Update from CVS
* miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-141
Update from CVS
* miles@gnu.org--gnu-2005/gnus--rel--5.10--patch-31
Merge from emacs--cvs-trunk--0
* miles@gnu.org--gnu-2005/gnus--rel--5.10--patch-32
Merge from emacs--cvs-trunk--0
* miles@gnu.org--gnu-2005/gnus--rel--5.10--patch-33
Update from CVS
git-archimport-id: lorentey@elte.hu--2004/emacs--multi-tty--0--patch-302
Diffstat (limited to 'lisp')
| -rw-r--r-- | lisp/ChangeLog | 139 | ||||
| -rw-r--r-- | lisp/calendar/calendar.el | 59 | ||||
| -rw-r--r-- | lisp/calendar/diary-lib.el | 6 | ||||
| -rw-r--r-- | lisp/cus-edit.el | 165 | ||||
| -rw-r--r-- | lisp/emacs-lisp/debug.el | 94 | ||||
| -rw-r--r-- | lisp/emacs-lisp/re-builder.el | 8 | ||||
| -rw-r--r-- | lisp/emacs-lisp/trace.el | 86 | ||||
| -rw-r--r-- | lisp/gnus/ChangeLog | 25 | ||||
| -rw-r--r-- | lisp/gnus/gnus-sum.el | 8 | ||||
| -rw-r--r-- | lisp/gnus/mm-decode.el | 15 | ||||
| -rw-r--r-- | lisp/international/utf-16.el | 8 | ||||
| -rw-r--r-- | lisp/mouse.el | 49 | ||||
| -rw-r--r-- | lisp/net/tramp.el | 2 | ||||
| -rw-r--r-- | lisp/progmodes/perl-mode.el | 28 | ||||
| -rw-r--r-- | lisp/register.el | 6 | ||||
| -rw-r--r-- | lisp/replace.el | 8 | ||||
| -rw-r--r-- | lisp/reveal.el | 34 | ||||
| -rw-r--r-- | lisp/speedbar.el | 10 | ||||
| -rw-r--r-- | lisp/textmodes/flyspell.el | 5 | ||||
| -rw-r--r-- | lisp/textmodes/ispell.el | 5 | ||||
| -rw-r--r-- | lisp/url/ChangeLog | 5 | ||||
| -rw-r--r-- | lisp/url/url-history.el | 3 | ||||
| -rw-r--r-- | lisp/vc.el | 3 |
23 files changed, 495 insertions, 276 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 7d48d8704eb..7c3842ea3a5 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog | |||
| @@ -1,11 +1,109 @@ | |||
| 1 | 2005-02-28 Chong Yidong" <cyd@stupidchicken.com> (tiny change) | ||
| 2 | |||
| 3 | * international/utf-16.el (ccl-encode-mule-utf-16le): Fix | ||
| 4 | BUFFER_MAGNIFICATION to 2. | ||
| 5 | (ccl-encode-mule-utf-16be): Likewise. | ||
| 6 | |||
| 7 | 2005-02-28 Kenichi Handa <handa@m17n.org> | ||
| 8 | |||
| 9 | * international/utf-16.el (ccl-encode-mule-utf-16le-with-signature): | ||
| 10 | Fix BUFFER_MAGNIFICATION to 4. | ||
| 11 | (ccl-encode-mule-utf-16be-with-signature): Likewise. | ||
| 12 | |||
| 13 | 2005-02-28 Nick Roberts <nickrob@snap.net.nz> | ||
| 14 | |||
| 15 | * speedbar.el (speedbar-update-flag): Doc fix. | ||
| 16 | (speedbar-show-info-under-mouse): Give set-mouse-position the right | ||
| 17 | argument. | ||
| 18 | |||
| 19 | 2005-02-27 Stefan Monnier <monnier@iro.umontreal.ca> | ||
| 20 | |||
| 21 | * reveal.el (reveal-post-command): Don't try to reveal overlays which | ||
| 22 | have a non-nil `invisible' property but are actually visible. | ||
| 23 | |||
| 24 | * progmodes/perl-mode.el (perl-imenu-generic-expression): Add entries | ||
| 25 | for perldoc sections. | ||
| 26 | (perl-outline-regexp, perl-outline-level): New var and function. | ||
| 27 | (perl-mode): Use them. | ||
| 28 | |||
| 29 | 2005-02-27 Glenn Morris <gmorris@ast.cam.ac.uk> | ||
| 30 | |||
| 31 | * calendar/diary-lib.el (diary-remind): Discard any mark portion | ||
| 32 | from diary-entry. Reported by Andrew Kemp <ajwk@pell.uklinux.net>. | ||
| 33 | |||
| 34 | 2005-02-27 Luc Teirlinck <teirllm@auburn.edu> | ||
| 35 | |||
| 36 | * cus-edit.el: Comment change. | ||
| 37 | (custom-buffer-create-internal): Slightly reword text at top of | ||
| 38 | Custom buffers. Mention there that saving an option edits the | ||
| 39 | init file. Add link to Emacs manual node on `custom-file'. | ||
| 40 | (custom-magic-alist): Rewrite individual State messages to use | ||
| 41 | capitalized keywords. Doc fix. | ||
| 42 | |||
| 43 | 2005-02-27 Matt Hodges <MPHodges@member.fsf.org> | ||
| 44 | |||
| 45 | * calendar/calendar.el (calendar-buffer): Move above | ||
| 46 | calendar-week-start-day. | ||
| 47 | (calendar-week-start-day): Doc fix. Add :set function. | ||
| 48 | (calendar-minimum-window-height): New variable. | ||
| 49 | (generate-calendar-window): Only resize window if selected-window | ||
| 50 | is displaying the calendar buffer. Use new variable | ||
| 51 | calendar-minimum-window-height. | ||
| 52 | (generate-calendar): Reword error message. | ||
| 53 | (calendar-mode-map): Bind DEL to scroll-other-window-down. | ||
| 54 | |||
| 55 | 2005-02-27 Andreas Schwab <schwab@suse.de> | ||
| 56 | |||
| 57 | * vc.el (vc-do-command): Don't run command asynchronously when | ||
| 58 | operating in a remote directory. | ||
| 59 | |||
| 60 | * net/tramp.el (tramp-file-name-for-operation): Fix misapplied | ||
| 61 | change from sync with Tramp 2.0.47. | ||
| 62 | |||
| 63 | 2005-02-27 Richard M. Stallman <rms@gnu.org> | ||
| 64 | |||
| 65 | * textmodes/ispell.el (ispell-change-dictionary): Doc fix. | ||
| 66 | |||
| 67 | * textmodes/flyspell.el (flyspell-mode-on): | ||
| 68 | Call ispell-change-dictionary only if necessary. | ||
| 69 | |||
| 70 | * emacs-lisp/re-builder.el (regexp-builder): New function. | ||
| 71 | |||
| 72 | * register.el (describe-register-1): Explicitly handle | ||
| 73 | yank-excluded-properties = t. | ||
| 74 | |||
| 75 | * cus-edit.el (custom-buffer-create-internal): Improve progress msgs. | ||
| 76 | (custom-magic-alist): Change the status descriptions again. | ||
| 77 | (face widget-type): Total rewrite based on `restricted-sexp' | ||
| 78 | to eliminate the confusing double hiding levels. | ||
| 79 | |||
| 80 | * emacs-lisp/debug.el (debug-on-entry-1): | ||
| 81 | If function body is empty, add nil as body form. | ||
| 82 | |||
| 83 | 2005-02-26 Stefan Monnier <monnier@iro.umontreal.ca> | ||
| 84 | |||
| 85 | * emacs-lisp/trace.el (inhibit-trace): New var. | ||
| 86 | (trace-make-advice): Use it. | ||
| 87 | |||
| 88 | * emacs-lisp/debug.el (debug): Put back the inhibit-trace. | ||
| 89 | |||
| 90 | 2005-02-26 Kim F. Storm <storm@cua.dk> | ||
| 91 | |||
| 92 | * mouse.el (mouse-1-click-in-non-selected-windows): New defcustom. | ||
| 93 | (mouse-on-link-p, mouse-drag-region-1): Use it. | ||
| 94 | |||
| 95 | 2005-02-25 Lute Kamstra <lute@gnu.org> | ||
| 96 | |||
| 97 | * replace.el (query-replace-read-from): Fix 2005-02-19 change. | ||
| 98 | |||
| 1 | 2005-02-24 Luc Teirlinck <teirllm@auburn.edu> | 99 | 2005-02-24 Luc Teirlinck <teirllm@auburn.edu> |
| 2 | 100 | ||
| 3 | * frame.el (blink-cursor-mode): Add :group keyword. | 101 | * frame.el (blink-cursor-mode): Add :group keyword. |
| 4 | 102 | ||
| 5 | 2005-02-24 Ulf Jasper <ulf.jasper@web.de> | 103 | 2005-02-24 Ulf Jasper <ulf.jasper@web.de> |
| 6 | 104 | ||
| 7 | * calendar/icalendar.el (icalendar--decode-isodatetime): New | 105 | * calendar/icalendar.el (icalendar--decode-isodatetime): |
| 8 | optional argument DAY-SHIFT. | 106 | New optional argument DAY-SHIFT. |
| 9 | (icalendar-export-region): Fix coding-system-for-write. | 107 | (icalendar-export-region): Fix coding-system-for-write. |
| 10 | (icalendar--convert-ical-to-diary): Shift end-day of all-day | 108 | (icalendar--convert-ical-to-diary): Shift end-day of all-day |
| 11 | events by one. | 109 | events by one. |
| @@ -20,6 +118,13 @@ | |||
| 20 | during redisplay. Call force-window-update after read-event | 118 | during redisplay. Call force-window-update after read-event |
| 21 | and delete-region to signal that window is not accurate. | 119 | and delete-region to signal that window is not accurate. |
| 22 | 120 | ||
| 121 | 2005-02-23 Stefan Monnier <monnier@iro.umontreal.ca> | ||
| 122 | |||
| 123 | * emacs-lisp/debug.el (debug): Hide the buffer if it's not killed. | ||
| 124 | Remove unused and inexistent var `inhibit-trace'. | ||
| 125 | (debugger-mode): Use run-mode-hooks. | ||
| 126 | (debugger-list-functions): Add buttons; setup xref stack. | ||
| 127 | |||
| 23 | 2005-02-23 Richard M. Stallman <rms@gnu.org> | 128 | 2005-02-23 Richard M. Stallman <rms@gnu.org> |
| 24 | 129 | ||
| 25 | * calendar/appt.el (appt-time-msg-list): 3rd elt of each | 130 | * calendar/appt.el (appt-time-msg-list): 3rd elt of each |
| @@ -152,8 +257,8 @@ | |||
| 152 | * viper-util.el (viper-glob-unix-files): Fix shell status check. | 257 | * viper-util.el (viper-glob-unix-files): Fix shell status check. |
| 153 | (viper-file-remote-p): Make equivalent to file-remote-p. | 258 | (viper-file-remote-p): Make equivalent to file-remote-p. |
| 154 | 259 | ||
| 155 | * viper.el (viper-major-mode-modifier-list): Use | 260 | * viper.el (viper-major-mode-modifier-list): |
| 156 | viper-gnus-modifier-map. | 261 | Use viper-gnus-modifier-map. |
| 157 | 262 | ||
| 158 | 2005-02-19 David Kastrup <dak@gnu.org> | 263 | 2005-02-19 David Kastrup <dak@gnu.org> |
| 159 | 264 | ||
| @@ -163,7 +268,7 @@ | |||
| 163 | 2005-02-19 Jay Belanger <belanger@truman.edu> | 268 | 2005-02-19 Jay Belanger <belanger@truman.edu> |
| 164 | 269 | ||
| 165 | * calc/calc-math.el (calc-arctan, calc-tanh, calc-arctanh): | 270 | * calc/calc-math.el (calc-arctan, calc-tanh, calc-arctanh): |
| 166 | Removed extra definitions. | 271 | Remove extra definitions. |
| 167 | (calc-coth): New function. | 272 | (calc-coth): New function. |
| 168 | (calcFunc-cot): Fix `let'. | 273 | (calcFunc-cot): Fix `let'. |
| 169 | 274 | ||
| @@ -180,8 +285,8 @@ | |||
| 180 | query-replace-from-history-variable to handle the case of an empty | 285 | query-replace-from-history-variable to handle the case of an empty |
| 181 | string entered to accept the suggested default. | 286 | string entered to accept the suggested default. |
| 182 | 287 | ||
| 183 | * net/tramp.el (tramp-file-name-for-operation): Use | 288 | * net/tramp.el (tramp-file-name-for-operation): |
| 184 | dired-call-process instead of dired-call-process-command. | 289 | Use dired-call-process instead of dired-call-process-command. |
| 185 | 290 | ||
| 186 | 2005-02-19 Jay Belanger <belanger@truman.edu> | 291 | 2005-02-19 Jay Belanger <belanger@truman.edu> |
| 187 | 292 | ||
| @@ -202,22 +307,22 @@ | |||
| 202 | 307 | ||
| 203 | 2005-02-19 Michael Kifer <kifer@cs.stonybrook.edu> | 308 | 2005-02-19 Michael Kifer <kifer@cs.stonybrook.edu> |
| 204 | 309 | ||
| 205 | * ediff.el (ediff-set-diff-overlays-in-one-buffer, | 310 | * ediff.el (ediff-set-diff-overlays-in-one-buffer) |
| 206 | ediff-set-fine-overlays-in-one-buffer,ediff-goto-word) make sure | 311 | (ediff-set-fine-overlays-in-one-buffer,ediff-goto-word): Make sure |
| 207 | we use the syntax table of the correct buffer. | 312 | we use the syntax table of the correct buffer. |
| 208 | (ediff-same-file-contents,ediff-same-contents): enhancements thanks to | 313 | (ediff-same-file-contents,ediff-same-contents): Enhancements thanks to |
| 209 | Felix Gatzemeier. | 314 | Felix Gatzemeier. |
| 210 | 315 | ||
| 211 | * ediff-init.el (ediff-hide-face): checks for definedness of functions. | 316 | * ediff-init.el (ediff-hide-face): Check for definedness of functions. |
| 212 | (ediff-file-remote-p): make synonymous with file-remote-p. | 317 | (ediff-file-remote-p): Make synonymous with file-remote-p. |
| 213 | In all deffaces ediff-*-face-*, use min-colors. | 318 | In all deffaces ediff-*-face-*, use min-colors. |
| 214 | 319 | ||
| 215 | * ediff-mult.el (ediff-meta-mark-equal-files): make use of | 320 | * ediff-mult.el (ediff-meta-mark-equal-files): Make use of |
| 216 | ediff-recurse-to-subdirectories. | 321 | ediff-recurse-to-subdirectories. |
| 217 | (ediff-mark-if-equal): check that the arguments are strings, use | 322 | (ediff-mark-if-equal): Check that the arguments are strings, use |
| 218 | ediff-same-contents (after to Felix Gatzemeier). | 323 | ediff-same-contents (after to Felix Gatzemeier). |
| 219 | 324 | ||
| 220 | * ediff.el (ediff-merge-on-startup): don't set buffer-modified-p to | 325 | * ediff.el (ediff-merge-on-startup): Don't set buffer-modified-p to |
| 221 | nil. | 326 | nil. |
| 222 | 327 | ||
| 223 | 2005-02-18 Stefan Monnier <monnier@iro.umontreal.ca> | 328 | 2005-02-18 Stefan Monnier <monnier@iro.umontreal.ca> |
| @@ -287,7 +392,7 @@ | |||
| 287 | 2005-02-15 Jay Belanger <belanger@truman.edu> | 392 | 2005-02-15 Jay Belanger <belanger@truman.edu> |
| 288 | 393 | ||
| 289 | * calc/calc-alg.el: Add simplification rules for calcFunc-sec, | 394 | * calc/calc-alg.el: Add simplification rules for calcFunc-sec, |
| 290 | calcFunc-csc, calcFunc-cot, calcFunc-sech, calcFunc-csch and | 395 | calcFunc-csc, calcFunc-cot, calcFunc-sech, calcFunc-csch, and |
| 291 | calcFunc-coth. | 396 | calcFunc-coth. |
| 292 | (math-simplify-sqrt): Add simplifications. | 397 | (math-simplify-sqrt): Add simplifications. |
| 293 | 398 | ||
diff --git a/lisp/calendar/calendar.el b/lisp/calendar/calendar.el index 88d6aee513f..291452db080 100644 --- a/lisp/calendar/calendar.el +++ b/lisp/calendar/calendar.el | |||
| @@ -1,7 +1,7 @@ | |||
| 1 | ;;; calendar.el --- calendar functions | 1 | ;;; calendar.el --- calendar functions |
| 2 | 2 | ||
| 3 | ;; Copyright (C) 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1997, | 3 | ;; Copyright (C) 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1997, |
| 4 | ;; 2000, 2001, 2003, 2004 Free Software Foundation, Inc. | 4 | ;; 2000, 2001, 2003, 2004, 2005 Free Software Foundation, Inc. |
| 5 | 5 | ||
| 6 | ;; Author: Edward M. Reingold <reingold@cs.uiuc.edu> | 6 | ;; Author: Edward M. Reingold <reingold@cs.uiuc.edu> |
| 7 | ;; Maintainer: Glenn Morris <gmorris@ast.cam.ac.uk> | 7 | ;; Maintainer: Glenn Morris <gmorris@ast.cam.ac.uk> |
| @@ -141,11 +141,25 @@ | |||
| 141 | :group 'calendar) | 141 | :group 'calendar) |
| 142 | 142 | ||
| 143 | 143 | ||
| 144 | (defconst calendar-buffer "*Calendar*" | ||
| 145 | "Name of the buffer used for the calendar.") | ||
| 146 | |||
| 144 | ;;;###autoload | 147 | ;;;###autoload |
| 145 | (defcustom calendar-week-start-day 0 | 148 | (defcustom calendar-week-start-day 0 |
| 146 | "*The day of the week on which a week in the calendar begins. | 149 | "*The day of the week on which a week in the calendar begins. |
| 147 | 0 means Sunday (default), 1 means Monday, and so on." | 150 | 0 means Sunday (default), 1 means Monday, and so on. |
| 151 | |||
| 152 | If you change this variable directly (without using customize) | ||
| 153 | after starting `calendar', you should call `redraw-calendar' to | ||
| 154 | update the calendar display to reflect the change, otherwise | ||
| 155 | movement commands will not work correctly." | ||
| 148 | :type 'integer | 156 | :type 'integer |
| 157 | :set (lambda (sym val) | ||
| 158 | (set sym val) | ||
| 159 | (let ((buffer (get-buffer calendar-buffer))) | ||
| 160 | (when (buffer-live-p buffer) | ||
| 161 | (with-current-buffer buffer | ||
| 162 | (redraw-calendar))))) | ||
| 149 | :group 'calendar) | 163 | :group 'calendar) |
| 150 | 164 | ||
| 151 | ;;;###autoload | 165 | ;;;###autoload |
| @@ -1303,9 +1317,6 @@ with descriptive strings such as | |||
| 1303 | :type 'sexp | 1317 | :type 'sexp |
| 1304 | :group 'holidays) | 1318 | :group 'holidays) |
| 1305 | 1319 | ||
| 1306 | (defconst calendar-buffer "*Calendar*" | ||
| 1307 | "Name of the buffer used for the calendar.") | ||
| 1308 | |||
| 1309 | (defconst holiday-buffer "*Holidays*" | 1320 | (defconst holiday-buffer "*Holidays*" |
| 1310 | "Name of the buffer used for the displaying the holidays.") | 1321 | "Name of the buffer used for the displaying the holidays.") |
| 1311 | 1322 | ||
| @@ -1563,7 +1574,7 @@ return negative results." | |||
| 1563 | The choices are: `one-frame' (calendar and diary together in one separate, | 1574 | The choices are: `one-frame' (calendar and diary together in one separate, |
| 1564 | dedicated frame); `two-frames' (calendar and diary in separate, dedicated | 1575 | dedicated frame); `two-frames' (calendar and diary in separate, dedicated |
| 1565 | frames); `calendar-only' (calendar in a separate, dedicated frame); with | 1576 | frames); `calendar-only' (calendar in a separate, dedicated frame); with |
| 1566 | any other value the current frame is used. Using any of the first | 1577 | any other value the current frame is used. Using any of the first |
| 1567 | three options overrides the value of `view-diary-entries-initially'." | 1578 | three options overrides the value of `view-diary-entries-initially'." |
| 1568 | :type '(choice | 1579 | :type '(choice |
| 1569 | (const :tag "calendar and diary in separate frame" one-frame) | 1580 | (const :tag "calendar and diary in separate frame" one-frame) |
| @@ -1572,6 +1583,12 @@ three options overrides the value of `view-diary-entries-initially'." | |||
| 1572 | (const :tag "use current frame" nil)) | 1583 | (const :tag "use current frame" nil)) |
| 1573 | :group 'calendar) | 1584 | :group 'calendar) |
| 1574 | 1585 | ||
| 1586 | (defcustom calendar-minimum-window-height 8 | ||
| 1587 | "Minimum height `generate-calendar-window' should use for calendar window." | ||
| 1588 | :type 'integer | ||
| 1589 | :version "22.1" | ||
| 1590 | :group 'calendar) | ||
| 1591 | |||
| 1575 | ;;;###autoload | 1592 | ;;;###autoload |
| 1576 | (defun calendar (&optional arg) | 1593 | (defun calendar (&optional arg) |
| 1577 | "Choose between the one frame, two frame, or basic calendar displays. | 1594 | "Choose between the one frame, two frame, or basic calendar displays. |
| @@ -2039,28 +2056,33 @@ Or, for optional MON, YR." | |||
| 2039 | (or (not mon) | 2056 | (or (not mon) |
| 2040 | (let ((offset (calendar-interval mon yr month year))) | 2057 | (let ((offset (calendar-interval mon yr month year))) |
| 2041 | (and (<= offset 1) (>= offset -1))))) | 2058 | (and (<= offset 1) (>= offset -1))))) |
| 2042 | (day-in-week (calendar-day-of-week today))) | 2059 | (day-in-week (calendar-day-of-week today)) |
| 2060 | (in-calendar-window (eq (window-buffer (selected-window)) | ||
| 2061 | (get-buffer calendar-buffer)))) | ||
| 2043 | (update-calendar-mode-line) | 2062 | (update-calendar-mode-line) |
| 2044 | (if mon | 2063 | (if mon |
| 2045 | (generate-calendar mon yr) | 2064 | (generate-calendar mon yr) |
| 2046 | (generate-calendar month year)) | 2065 | (generate-calendar month year)) |
| 2047 | (calendar-cursor-to-visible-date | 2066 | (calendar-cursor-to-visible-date |
| 2048 | (if today-visible today (list displayed-month 1 displayed-year))) | 2067 | (if today-visible today (list displayed-month 1 displayed-year))) |
| 2049 | (set-buffer-modified-p nil) | 2068 | (set-buffer-modified-p nil) |
| 2050 | (if (or (one-window-p t) (/= (frame-width) (window-width))) | 2069 | ;; Don't do any window-related stuff if we weren't called from a |
| 2051 | ;; Don't mess with the window size, but ensure that the first | 2070 | ;; window displaying the calendar |
| 2052 | ;; line is fully visible | 2071 | (when in-calendar-window |
| 2053 | (set-window-vscroll nil 0) | 2072 | (if (or (one-window-p t) (/= (frame-width) (window-width))) |
| 2054 | ;; Adjust the window to exactly fit the displayed calendar | 2073 | ;; Don't mess with the window size, but ensure that the first |
| 2055 | (fit-window-to-buffer)) | 2074 | ;; line is fully visible |
| 2056 | (sit-for 0) | 2075 | (set-window-vscroll nil 0) |
| 2076 | ;; Adjust the window to exactly fit the displayed calendar | ||
| 2077 | (fit-window-to-buffer nil nil calendar-minimum-window-height)) | ||
| 2078 | (sit-for 0)) | ||
| 2057 | (if (and (boundp 'font-lock-mode) | 2079 | (if (and (boundp 'font-lock-mode) |
| 2058 | font-lock-mode) | 2080 | font-lock-mode) |
| 2059 | (font-lock-fontify-buffer)) | 2081 | (font-lock-fontify-buffer)) |
| 2060 | (and mark-holidays-in-calendar | 2082 | (and mark-holidays-in-calendar |
| 2061 | ;;; (calendar-date-is-legal-p today) ; useful for BC dates | 2083 | ;;; (calendar-date-is-legal-p today) ; useful for BC dates |
| 2062 | (mark-calendar-holidays) | 2084 | (mark-calendar-holidays) |
| 2063 | (sit-for 0)) | 2085 | (and in-calendar-window (sit-for 0))) |
| 2064 | (unwind-protect | 2086 | (unwind-protect |
| 2065 | (if mark-diary-entries-in-calendar (mark-diary-entries)) | 2087 | (if mark-diary-entries-in-calendar (mark-diary-entries)) |
| 2066 | (if today-visible | 2088 | (if today-visible |
| @@ -2071,10 +2093,10 @@ Or, for optional MON, YR." | |||
| 2071 | "Generate a three-month Gregorian calendar centered around MONTH, YEAR." | 2093 | "Generate a three-month Gregorian calendar centered around MONTH, YEAR." |
| 2072 | ;;; A negative YEAR is interpreted as BC; -1 being 1 BC, and so on. | 2094 | ;;; A negative YEAR is interpreted as BC; -1 being 1 BC, and so on. |
| 2073 | ;;; Note that while calendars for years BC could be displayed as it | 2095 | ;;; Note that while calendars for years BC could be displayed as it |
| 2074 | ;;; stands, almost all other calendar functions (eg holidays) would | 2096 | ;;; stands, almost all other calendar functions (eg holidays) would |
| 2075 | ;;; at best have unpredictable results for such dates. | 2097 | ;;; at best have unpredictable results for such dates. |
| 2076 | (if (< (+ month (* 12 (1- year))) 2) | 2098 | (if (< (+ month (* 12 (1- year))) 2) |
| 2077 | (error "Months before February, 1 AD are not available")) | 2099 | (error "Months before January, 1 AD cannot be displayed")) |
| 2078 | (setq displayed-month month | 2100 | (setq displayed-month month |
| 2079 | displayed-year year) | 2101 | displayed-year year) |
| 2080 | (erase-buffer) | 2102 | (erase-buffer) |
| @@ -2229,6 +2251,7 @@ the inserted text. Value is always t." | |||
| 2229 | (define-key calendar-mode-map "S" 'calendar-sunrise-sunset) | 2251 | (define-key calendar-mode-map "S" 'calendar-sunrise-sunset) |
| 2230 | (define-key calendar-mode-map "M" 'calendar-phases-of-moon) | 2252 | (define-key calendar-mode-map "M" 'calendar-phases-of-moon) |
| 2231 | (define-key calendar-mode-map " " 'scroll-other-window) | 2253 | (define-key calendar-mode-map " " 'scroll-other-window) |
| 2254 | (define-key calendar-mode-map (kbd "DEL") 'scroll-other-window-down) | ||
| 2232 | (define-key calendar-mode-map "\C-c\C-l" 'redraw-calendar) | 2255 | (define-key calendar-mode-map "\C-c\C-l" 'redraw-calendar) |
| 2233 | (define-key calendar-mode-map "." 'calendar-goto-today) | 2256 | (define-key calendar-mode-map "." 'calendar-goto-today) |
| 2234 | (define-key calendar-mode-map "o" 'calendar-other-month) | 2257 | (define-key calendar-mode-map "o" 'calendar-other-month) |
diff --git a/lisp/calendar/diary-lib.el b/lisp/calendar/diary-lib.el index ecbafd24430..5fbae2500d7 100644 --- a/lisp/calendar/diary-lib.el +++ b/lisp/calendar/diary-lib.el | |||
| @@ -1625,8 +1625,10 @@ marked on the calendar." | |||
| 1625 | (or (not marking-diary-entries) marking)) | 1625 | (or (not marking-diary-entries) marking)) |
| 1626 | (let ((date (calendar-gregorian-from-absolute | 1626 | (let ((date (calendar-gregorian-from-absolute |
| 1627 | (+ (calendar-absolute-from-gregorian date) days)))) | 1627 | (+ (calendar-absolute-from-gregorian date) days)))) |
| 1628 | (if (setq diary-entry (eval sexp)) | 1628 | (when (setq diary-entry (eval sexp)) ; re-evaluate with adjusted date |
| 1629 | (mapconcat 'eval diary-remind-message "")))) | 1629 | ;; Discard any mark portion from diary-anniversary, etc. |
| 1630 | (if (consp diary-entry) (setq diary-entry (cdr diary-entry))) | ||
| 1631 | (mapconcat 'eval diary-remind-message "")))) | ||
| 1630 | ;; Diary entry may apply to one of a list of days before date | 1632 | ;; Diary entry may apply to one of a list of days before date |
| 1631 | ((and (listp days) days) | 1633 | ((and (listp days) days) |
| 1632 | (or (diary-remind sexp (car days) marking) | 1634 | (or (diary-remind sexp (car days) marking) |
diff --git a/lisp/cus-edit.el b/lisp/cus-edit.el index 85772094c9a..fb76aa6c3d8 100644 --- a/lisp/cus-edit.el +++ b/lisp/cus-edit.el | |||
| @@ -121,10 +121,11 @@ | |||
| 121 | ;; 6. rogue | 121 | ;; 6. rogue |
| 122 | 122 | ||
| 123 | ;; There is no standard value. This means that the variable was | 123 | ;; There is no standard value. This means that the variable was |
| 124 | ;; not defined with defcustom. You can not create a Custom buffer | 124 | ;; not defined with defcustom, nor handled in cus-start.el. You |
| 125 | ;; for such variables using the normal interactive Custom commands. | 125 | ;; can not create a Custom buffer for such variables using the |
| 126 | ;; However, such Custom buffers can be created in other ways, for | 126 | ;; normal interactive Custom commands. However, such Custom |
| 127 | ;; instance, by calling `customize-option' non-interactively. | 127 | ;; buffers can be created in other ways, for instance, by calling |
| 128 | ;; `customize-option' non-interactively. | ||
| 128 | 129 | ||
| 129 | ;; 7. hidden | 130 | ;; 7. hidden |
| 130 | 131 | ||
| @@ -1367,7 +1368,6 @@ Otherwise use brackets." | |||
| 1367 | :group 'custom-buffer) | 1368 | :group 'custom-buffer) |
| 1368 | 1369 | ||
| 1369 | (defun custom-buffer-create-internal (options &optional description) | 1370 | (defun custom-buffer-create-internal (options &optional description) |
| 1370 | (message "Creating customization buffer...") | ||
| 1371 | (custom-mode) | 1371 | (custom-mode) |
| 1372 | (if custom-buffer-verbose-help | 1372 | (if custom-buffer-verbose-help |
| 1373 | (progn | 1373 | (progn |
| @@ -1377,17 +1377,23 @@ Otherwise use brackets." | |||
| 1377 | (widget-insert (format ". | 1377 | (widget-insert (format ". |
| 1378 | %s show active fields; type RET or click mouse-1 | 1378 | %s show active fields; type RET or click mouse-1 |
| 1379 | on an active field to invoke its action. Editing an option value | 1379 | on an active field to invoke its action. Editing an option value |
| 1380 | changes the text in the buffer; invoke the State button and | 1380 | changes only the text in the buffer. Invoke the State button to set or |
| 1381 | choose the Set operation to set the option value. | 1381 | save the option value. Saving an option normally edits your init file. |
| 1382 | Invoke " (if custom-raised-buttons | 1382 | Invoke " |
| 1383 | "`Raised' buttons" | 1383 | (if custom-raised-buttons |
| 1384 | "Square brackets"))) | 1384 | "`Raised' buttons" |
| 1385 | "Square brackets"))) | ||
| 1386 | (widget-create 'info-link | ||
| 1387 | :tag "Custom file" | ||
| 1388 | "(emacs)Saving Customizations") | ||
| 1389 | (widget-insert | ||
| 1390 | " for information on how to save in a different file. | ||
| 1391 | Invoke ") | ||
| 1385 | (widget-create 'info-link | 1392 | (widget-create 'info-link |
| 1386 | :tag "Help" | 1393 | :tag "Help" |
| 1387 | :help-echo "Read the online help." | 1394 | :help-echo "Read the online help." |
| 1388 | "(emacs)Easy Customization") | 1395 | "(emacs)Easy Customization") |
| 1389 | (widget-insert " for more information.\n\n") | 1396 | (widget-insert " for general information.\n\n") |
| 1390 | (message "Creating customization buttons...") | ||
| 1391 | (widget-insert "Operate on everything in this buffer:\n ")) | 1397 | (widget-insert "Operate on everything in this buffer:\n ")) |
| 1392 | (widget-insert " ")) | 1398 | (widget-insert " ")) |
| 1393 | (widget-create 'push-button | 1399 | (widget-create 'push-button |
| @@ -1478,13 +1484,15 @@ Un-customize all values in this buffer. They get their standard settings." | |||
| 1478 | (unless (eq (preceding-char) ?\n) | 1484 | (unless (eq (preceding-char) ?\n) |
| 1479 | (widget-insert "\n")) | 1485 | (widget-insert "\n")) |
| 1480 | (message "Creating customization items ...done") | 1486 | (message "Creating customization items ...done") |
| 1487 | (message "Resetting customization items...") | ||
| 1481 | (unless (eq custom-buffer-style 'tree) | 1488 | (unless (eq custom-buffer-style 'tree) |
| 1482 | (mapc 'custom-magic-reset custom-options)) | 1489 | (mapc 'custom-magic-reset custom-options)) |
| 1490 | (message "Resetting customization items...done") | ||
| 1483 | (message "Creating customization setup...") | 1491 | (message "Creating customization setup...") |
| 1484 | (widget-setup) | 1492 | (widget-setup) |
| 1485 | (buffer-enable-undo) | 1493 | (buffer-enable-undo) |
| 1486 | (goto-char (point-min)) | 1494 | (goto-char (point-min)) |
| 1487 | (message "Creating customization buffer...done")) | 1495 | (message "Creating customization setup...done")) |
| 1488 | 1496 | ||
| 1489 | ;;; The Tree Browser. | 1497 | ;;; The Tree Browser. |
| 1490 | 1498 | ||
| @@ -1665,31 +1673,31 @@ item in another window.\n\n")) | |||
| 1665 | 1673 | ||
| 1666 | (defconst custom-magic-alist | 1674 | (defconst custom-magic-alist |
| 1667 | '((nil "#" underline "\ | 1675 | '((nil "#" underline "\ |
| 1668 | uninitialized, you should not see this.") | 1676 | UNINITIALIZED, you should not see this.") |
| 1669 | (unknown "?" italic "\ | 1677 | (unknown "?" italic "\ |
| 1670 | unknown, you should not see this.") | 1678 | UNKNOWN, you should not see this.") |
| 1671 | (hidden "-" default "\ | 1679 | (hidden "-" default "\ |
| 1672 | hidden, invoke \"Show\" in the previous line to show." "\ | 1680 | HIDDEN, invoke \"Show\" in the previous line to show." "\ |
| 1673 | group now hidden, invoke \"Show\", above, to show contents.") | 1681 | group now hidden, invoke \"Show\", above, to show contents.") |
| 1674 | (invalid "x" custom-invalid-face "\ | 1682 | (invalid "x" custom-invalid-face "\ |
| 1675 | the value displayed for this %c is invalid and cannot be set.") | 1683 | INVALID, the displayed value cannot be set.") |
| 1676 | (modified "*" custom-modified-face "\ | 1684 | (modified "*" custom-modified-face "\ |
| 1677 | you have edited the value as text, but you have not set the %c." "\ | 1685 | EDITED, shown value does not take effect until you set or save it." "\ |
| 1678 | you have edited something in this group, but not set anything yet.") | 1686 | something in this group has been edited but not set.") |
| 1679 | (set "+" custom-set-face "\ | 1687 | (set "+" custom-set-face "\ |
| 1680 | you have set this %c, but not saved it for future sessions." "\ | 1688 | SET for current session only." "\ |
| 1681 | you have set something in this group, but not saved anything yet.") | 1689 | something in this group has been set but not saved.") |
| 1682 | (changed ":" custom-changed-face "\ | 1690 | (changed ":" custom-changed-face "\ |
| 1683 | this %c has been changed outside the customize buffer." "\ | 1691 | CHANGED outside Customize; operating on it here may be unreliable." "\ |
| 1684 | something in this group has been changed outside customize.") | 1692 | something in this group has been changed outside customize.") |
| 1685 | (saved "!" custom-saved-face "\ | 1693 | (saved "!" custom-saved-face "\ |
| 1686 | You have set this %c and saved it through Customize in your init file." "\ | 1694 | SAVED and set." "\ |
| 1687 | something in this group has been set and saved.") | 1695 | something in this group has been set and saved.") |
| 1688 | (rogue "@" custom-rogue-face "\ | 1696 | (rogue "@" custom-rogue-face "\ |
| 1689 | this %c has not been changed with customize." "\ | 1697 | NO CUSTOMIZATION DATA; you should not see this." "\ |
| 1690 | something in this group is not prepared for customization.") | 1698 | something in this group is not prepared for customization.") |
| 1691 | (standard " " nil "\ | 1699 | (standard " " nil "\ |
| 1692 | this %c is unchanged from its standard setting." "\ | 1700 | STANDARD." "\ |
| 1693 | visible group members are all at standard settings.")) | 1701 | visible group members are all at standard settings.")) |
| 1694 | "Alist of customize option states. | 1702 | "Alist of customize option states. |
| 1695 | Each entry is of the form (STATE MAGIC FACE ITEM-DESC [ GROUP-DESC ]), where | 1703 | Each entry is of the form (STATE MAGIC FACE ITEM-DESC [ GROUP-DESC ]), where |
| @@ -1709,7 +1717,7 @@ STATE is one of the following symbols: | |||
| 1709 | `set' | 1717 | `set' |
| 1710 | This item has been set but not saved. | 1718 | This item has been set but not saved. |
| 1711 | `changed' | 1719 | `changed' |
| 1712 | The current value of this item has been changed temporarily. | 1720 | The current value of this item has been changed outside Customize. |
| 1713 | `saved' | 1721 | `saved' |
| 1714 | This item is marked for saving. | 1722 | This item is marked for saving. |
| 1715 | `rogue' | 1723 | `rogue' |
| @@ -3285,54 +3293,69 @@ restoring it to the state of a face that has never been customized." | |||
| 3285 | 3293 | ||
| 3286 | ;;; The `face' Widget. | 3294 | ;;; The `face' Widget. |
| 3287 | 3295 | ||
| 3288 | (define-widget 'face 'default | 3296 | (defvar widget-face-prompt-value-history nil |
| 3289 | "Select and customize a face." | 3297 | "History of input to `widget-face-prompt-value'.") |
| 3290 | :convert-widget 'widget-value-convert-widget | 3298 | |
| 3291 | :button-prefix 'widget-push-button-prefix | 3299 | (define-widget 'face 'restricted-sexp |
| 3292 | :button-suffix 'widget-push-button-suffix | 3300 | "A Lisp face name." |
| 3293 | :format "%{%t%}: %[select face%] %v" | 3301 | :complete-function (lambda () |
| 3294 | :tag "Face" | 3302 | (interactive) |
| 3295 | :value 'default | 3303 | (lisp-complete-symbol 'facep)) |
| 3304 | :prompt-value 'widget-field-prompt-value | ||
| 3305 | :prompt-internal 'widget-symbol-prompt-internal | ||
| 3306 | :prompt-match 'facep | ||
| 3307 | :prompt-history 'widget-face-prompt-value-history | ||
| 3296 | :value-create 'widget-face-value-create | 3308 | :value-create 'widget-face-value-create |
| 3297 | :value-delete 'widget-face-value-delete | 3309 | :action 'widget-field-action |
| 3298 | :value-get 'widget-value-value-get | 3310 | :match-alternatives '(facep) |
| 3299 | :validate 'widget-children-validate | 3311 | :validate (lambda (widget) |
| 3300 | :action 'widget-face-action | 3312 | (unless (facep (widget-value widget)) |
| 3301 | :match (lambda (widget value) (symbolp value))) | 3313 | (widget-put widget :error (format "Invalid face: %S" |
| 3314 | (widget-value widget))) | ||
| 3315 | widget)) | ||
| 3316 | :value 'ignore | ||
| 3317 | :tag "Function") | ||
| 3318 | |||
| 3319 | |||
| 3320 | ;;; There is a bug here: the sample doesn't get redisplayed | ||
| 3321 | ;;; in the new font when you specify one. Does anyone know how to | ||
| 3322 | ;;; make that work? -- rms. | ||
| 3302 | 3323 | ||
| 3303 | (defun widget-face-value-create (widget) | 3324 | (defun widget-face-value-create (widget) |
| 3304 | "Create a `custom-face' child." | 3325 | "Create an editable face name field." |
| 3305 | (let* ((symbol (widget-value widget)) | 3326 | (let ((buttons (widget-get widget :buttons)) |
| 3306 | (custom-buffer-style 'face) | 3327 | (symbol (widget-get widget :value))) |
| 3307 | (child (widget-create-child-and-convert | 3328 | ;; Sample. |
| 3308 | widget 'custom-face | 3329 | (push (widget-create-child-and-convert widget 'item |
| 3309 | :custom-level nil | 3330 | :format "(%{%t%})" |
| 3310 | :value symbol))) | 3331 | :sample-face symbol |
| 3311 | (custom-magic-reset child) | 3332 | :tag "sample") |
| 3312 | (setq custom-options (cons child custom-options)) | 3333 | buttons) |
| 3313 | (widget-put widget :children (list child)))) | 3334 | (insert " ") |
| 3314 | 3335 | ;; Update buttons. | |
| 3315 | (defun widget-face-value-delete (widget) | 3336 | (widget-put widget :buttons buttons)) |
| 3316 | "Remove the child from the options." | 3337 | |
| 3317 | (let ((child (car (widget-get widget :children)))) | 3338 | (let ((size (widget-get widget :size)) |
| 3318 | (setq custom-options (delq child custom-options)) | 3339 | (value (widget-get widget :value)) |
| 3319 | (widget-children-value-delete widget))) | 3340 | (from (point)) |
| 3320 | 3341 | ;; This is changed to a real overlay in `widget-setup'. We | |
| 3321 | (defvar face-history nil | 3342 | ;; need the end points to behave differently until |
| 3322 | "History of entered face names.") | 3343 | ;; `widget-setup' is called. |
| 3323 | 3344 | (overlay (cons (make-marker) (make-marker)))) | |
| 3324 | (defun widget-face-action (widget &optional event) | 3345 | (widget-put widget :field-overlay overlay) |
| 3325 | "Prompt for a face." | 3346 | (insert value) |
| 3326 | (let ((answer (completing-read "Face: " | 3347 | (and size |
| 3327 | (mapcar (lambda (face) | 3348 | (< (length value) size) |
| 3328 | (list (symbol-name face))) | 3349 | (insert-char ?\ (- size (length value)))) |
| 3329 | (face-list)) | 3350 | (unless (memq widget widget-field-list) |
| 3330 | nil nil nil | 3351 | (setq widget-field-new (cons widget widget-field-new))) |
| 3331 | 'face-history))) | 3352 | (move-marker (cdr overlay) (point)) |
| 3332 | (unless (zerop (length answer)) | 3353 | (set-marker-insertion-type (cdr overlay) nil) |
| 3333 | (widget-value-set widget (intern answer)) | 3354 | (when (null size) |
| 3334 | (widget-apply widget :notify widget event) | 3355 | (insert ?\n)) |
| 3335 | (widget-setup)))) | 3356 | (move-marker (car overlay) from) |
| 3357 | (set-marker-insertion-type (car overlay) t))) | ||
| 3358 | |||
| 3336 | 3359 | ||
| 3337 | ;;; The `hook' Widget. | 3360 | ;;; The `hook' Widget. |
| 3338 | 3361 | ||
diff --git a/lisp/emacs-lisp/debug.el b/lisp/emacs-lisp/debug.el index a84a7aca52c..58fb3b4a1b8 100644 --- a/lisp/emacs-lisp/debug.el +++ b/lisp/emacs-lisp/debug.el | |||
| @@ -1,6 +1,7 @@ | |||
| 1 | ;;; debug.el --- debuggers and related commands for Emacs | 1 | ;;; debug.el --- debuggers and related commands for Emacs |
| 2 | 2 | ||
| 3 | ;; Copyright (C) 1985, 1986, 1994, 2001, 2003 Free Software Foundation, Inc. | 3 | ;; Copyright (C) 1985, 1986, 1994, 2001, 2003, 2005 |
| 4 | ;; Free Software Foundation, Inc. | ||
| 4 | 5 | ||
| 5 | ;; Maintainer: FSF | 6 | ;; Maintainer: FSF |
| 6 | ;; Keywords: lisp, tools, maint | 7 | ;; Keywords: lisp, tools, maint |
| @@ -197,15 +198,16 @@ first will be printed into the backtrace buffer." | |||
| 197 | (recursive-edit))))) | 198 | (recursive-edit))))) |
| 198 | ;; Kill or at least neuter the backtrace buffer, so that users | 199 | ;; Kill or at least neuter the backtrace buffer, so that users |
| 199 | ;; don't try to execute debugger commands in an invalid context. | 200 | ;; don't try to execute debugger commands in an invalid context. |
| 200 | (if (get-buffer-window debugger-buffer 'visible) | 201 | (if (get-buffer-window debugger-buffer 0) |
| 201 | ;; Still visible despite the save-window-excursion? Maybe it | 202 | ;; Still visible despite the save-window-excursion? Maybe it |
| 202 | ;; it's in a pop-up frame. It would be annoying to delete and | 203 | ;; it's in a pop-up frame. It would be annoying to delete and |
| 203 | ;; recreate it every time the debugger stops, so instead we'll | 204 | ;; recreate it every time the debugger stops, so instead we'll |
| 204 | ;; erase it but leave it visible. | 205 | ;; erase it and hide it but keep it alive. |
| 205 | (save-excursion | 206 | (with-current-buffer debugger-buffer |
| 206 | (set-buffer debugger-buffer) | ||
| 207 | (erase-buffer) | 207 | (erase-buffer) |
| 208 | (fundamental-mode)) | 208 | (fundamental-mode) |
| 209 | (with-selected-window (get-buffer-window debugger-buffer 0) | ||
| 210 | (bury-buffer))) | ||
| 209 | (kill-buffer debugger-buffer)) | 211 | (kill-buffer debugger-buffer)) |
| 210 | (set-match-data debugger-outer-match-data))) | 212 | (set-match-data debugger-outer-match-data))) |
| 211 | ;; Put into effect the modified values of these variables | 213 | ;; Put into effect the modified values of these variables |
| @@ -543,29 +545,26 @@ Applies to the frame whose line point is on in the backtrace." | |||
| 543 | 'read-expression-history))) | 545 | 'read-expression-history))) |
| 544 | (debugger-env-macro (eval-expression exp))) | 546 | (debugger-env-macro (eval-expression exp))) |
| 545 | 547 | ||
| 546 | (defvar debugger-mode-map nil) | 548 | (defvar debugger-mode-map |
| 547 | (unless debugger-mode-map | 549 | (let ((map (make-keymap))) |
| 548 | (let ((loop ? )) | 550 | (set-keymap-parent map button-buffer-map) |
| 549 | (setq debugger-mode-map (make-keymap)) | 551 | (suppress-keymap map) |
| 550 | (set-keymap-parent debugger-mode-map button-buffer-map) | 552 | (define-key map "-" 'negative-argument) |
| 551 | (suppress-keymap debugger-mode-map) | 553 | (define-key map "b" 'debugger-frame) |
| 552 | (define-key debugger-mode-map "-" 'negative-argument) | 554 | (define-key map "c" 'debugger-continue) |
| 553 | (define-key debugger-mode-map "b" 'debugger-frame) | 555 | (define-key map "j" 'debugger-jump) |
| 554 | (define-key debugger-mode-map "c" 'debugger-continue) | 556 | (define-key map "r" 'debugger-return-value) |
| 555 | (define-key debugger-mode-map "j" 'debugger-jump) | 557 | (define-key map "u" 'debugger-frame-clear) |
| 556 | (define-key debugger-mode-map "r" 'debugger-return-value) | 558 | (define-key map "d" 'debugger-step-through) |
| 557 | (define-key debugger-mode-map "u" 'debugger-frame-clear) | 559 | (define-key map "l" 'debugger-list-functions) |
| 558 | (define-key debugger-mode-map "d" 'debugger-step-through) | 560 | (define-key map "h" 'describe-mode) |
| 559 | (define-key debugger-mode-map "l" 'debugger-list-functions) | 561 | (define-key map "q" 'top-level) |
| 560 | (define-key debugger-mode-map "h" 'describe-mode) | 562 | (define-key map "e" 'debugger-eval-expression) |
| 561 | (define-key debugger-mode-map "q" 'top-level) | 563 | (define-key map " " 'next-line) |
| 562 | (define-key debugger-mode-map "e" 'debugger-eval-expression) | 564 | (define-key map "R" 'debugger-record-expression) |
| 563 | (define-key debugger-mode-map " " 'next-line) | 565 | (define-key map "\C-m" 'help-follow) |
| 564 | (define-key debugger-mode-map "R" 'debugger-record-expression) | 566 | (define-key map [mouse-2] 'push-button) |
| 565 | (define-key debugger-mode-map "\C-m" 'help-follow) | 567 | map)) |
| 566 | (define-key debugger-mode-map [mouse-2] 'push-button) | ||
| 567 | )) | ||
| 568 | |||
| 569 | 568 | ||
| 570 | (defcustom debugger-record-buffer "*Debugger-record*" | 569 | (defcustom debugger-record-buffer "*Debugger-record*" |
| 571 | "*Buffer name for expression values, for \\[debugger-record-expression]." | 570 | "*Buffer name for expression values, for \\[debugger-record-expression]." |
| @@ -616,7 +615,7 @@ Complete list of commands: | |||
| 616 | (setq truncate-lines t) | 615 | (setq truncate-lines t) |
| 617 | (set-syntax-table emacs-lisp-mode-syntax-table) | 616 | (set-syntax-table emacs-lisp-mode-syntax-table) |
| 618 | (use-local-map debugger-mode-map) | 617 | (use-local-map debugger-mode-map) |
| 619 | (run-hooks 'debugger-mode-hook)) | 618 | (run-mode-hooks 'debugger-mode-hook)) |
| 620 | 619 | ||
| 621 | ;;;###autoload | 620 | ;;;###autoload |
| 622 | (defun debug-on-entry (function) | 621 | (defun debug-on-entry (function) |
| @@ -705,6 +704,10 @@ If argument is nil or an empty string, cancel for all functions." | |||
| 705 | ;; Skip the interactive form. | 704 | ;; Skip the interactive form. |
| 706 | (if (eq 'interactive (car-safe (car tail))) (setq tail (cdr tail))) | 705 | (if (eq 'interactive (car-safe (car tail))) (setq tail (cdr tail))) |
| 707 | (unless (eq flag (equal (car tail) '(debug 'debug))) | 706 | (unless (eq flag (equal (car tail) '(debug 'debug))) |
| 707 | ;; If the function has no body, add nil as a body element. | ||
| 708 | (when (null tail) | ||
| 709 | (setq tail (list nil)) | ||
| 710 | (nconc defn tail)) | ||
| 708 | ;; Add/remove debug statement as needed. | 711 | ;; Add/remove debug statement as needed. |
| 709 | (if (not flag) | 712 | (if (not flag) |
| 710 | (progn (setcar tail (cadr tail)) | 713 | (progn (setcar tail (cadr tail)) |
| @@ -716,22 +719,23 @@ If argument is nil or an empty string, cancel for all functions." | |||
| 716 | (defun debugger-list-functions () | 719 | (defun debugger-list-functions () |
| 717 | "Display a list of all the functions now set to debug on entry." | 720 | "Display a list of all the functions now set to debug on entry." |
| 718 | (interactive) | 721 | (interactive) |
| 719 | (with-output-to-temp-buffer "*Help*" | 722 | (require 'help-mode) |
| 720 | (if (null debug-function-list) | 723 | (help-setup-xref '(debugger-list-functions) (interactive-p)) |
| 721 | (princ "No debug-on-entry functions now\n") | 724 | (with-output-to-temp-buffer (help-buffer) |
| 722 | (princ "Functions set to debug on entry:\n\n") | 725 | (with-current-buffer standard-output |
| 723 | (let ((list debug-function-list)) | 726 | (if (null debug-function-list) |
| 724 | (while list | 727 | (princ "No debug-on-entry functions now\n") |
| 725 | (prin1 (car list)) | 728 | (princ "Functions set to debug on entry:\n\n") |
| 726 | (terpri) | 729 | (dolist (fun debug-function-list) |
| 727 | (setq list (cdr list)))) | 730 | (make-text-button (point) (progn (prin1 fun) (point)) |
| 728 | (princ "Note: if you have redefined a function, then it may no longer\n") | 731 | 'type 'help-function |
| 729 | (princ "be set to debug on entry, even if it is in the list.")) | 732 | 'help-args (list fun)) |
| 730 | (save-excursion | 733 | (terpri)) |
| 731 | (set-buffer standard-output) | 734 | (terpri) |
| 732 | (help-mode)))) | 735 | (princ "Note: if you have redefined a function, then it may no longer\n") |
| 736 | (princ "be set to debug on entry, even if it is in the list."))))) | ||
| 733 | 737 | ||
| 734 | (provide 'debug) | 738 | (provide 'debug) |
| 735 | 739 | ||
| 736 | ;;; arch-tag: b6ec7047-f801-4103-9c63-d69322db9d3b | 740 | ;; arch-tag: b6ec7047-f801-4103-9c63-d69322db9d3b |
| 737 | ;;; debug.el ends here | 741 | ;;; debug.el ends here |
diff --git a/lisp/emacs-lisp/re-builder.el b/lisp/emacs-lisp/re-builder.el index 019a45213c8..d26a0ae5f38 100644 --- a/lisp/emacs-lisp/re-builder.el +++ b/lisp/emacs-lisp/re-builder.el | |||
| @@ -327,10 +327,16 @@ Except for Lisp syntax this is the same as `reb-regexp'.") | |||
| 327 | "Return binding for SYMBOL in the RE Builder target buffer." | 327 | "Return binding for SYMBOL in the RE Builder target buffer." |
| 328 | `(with-current-buffer reb-target-buffer ,symbol)) | 328 | `(with-current-buffer reb-target-buffer ,symbol)) |
| 329 | 329 | ||
| 330 | ;;; This is to help people find this in Apropos. | ||
| 331 | ;;;###autoload | ||
| 332 | (defun regexp-builder () | ||
| 333 | "Alias for `re-builder': Construct a regexp interactively." | ||
| 334 | (interactive) | ||
| 335 | (re-builder)) | ||
| 330 | 336 | ||
| 331 | ;;;###autoload | 337 | ;;;###autoload |
| 332 | (defun re-builder () | 338 | (defun re-builder () |
| 333 | "Call up the RE Builder for the current window." | 339 | "Construct a regexp interactively." |
| 334 | (interactive) | 340 | (interactive) |
| 335 | 341 | ||
| 336 | (if (and (string= (buffer-name) reb-buffer) | 342 | (if (and (string= (buffer-name) reb-buffer) |
diff --git a/lisp/emacs-lisp/trace.el b/lisp/emacs-lisp/trace.el index a6ff9b15286..e3d3e9e645e 100644 --- a/lisp/emacs-lisp/trace.el +++ b/lisp/emacs-lisp/trace.el | |||
| @@ -1,6 +1,6 @@ | |||
| 1 | ;;; trace.el --- tracing facility for Emacs Lisp functions | 1 | ;;; trace.el --- tracing facility for Emacs Lisp functions |
| 2 | 2 | ||
| 3 | ;; Copyright (C) 1993 Free Software Foundation, Inc. | 3 | ;; Copyright (C) 1993, 1998, 2000, 2005 Free Software Foundation, Inc. |
| 4 | 4 | ||
| 5 | ;; Author: Hans Chalupsky <hans@cs.buffalo.edu> | 5 | ;; Author: Hans Chalupsky <hans@cs.buffalo.edu> |
| 6 | ;; Maintainer: FSF | 6 | ;; Maintainer: FSF |
| @@ -175,6 +175,9 @@ | |||
| 175 | ;; Used to separate new trace output from previous traced runs: | 175 | ;; Used to separate new trace output from previous traced runs: |
| 176 | (defvar trace-separator (format "%s\n" (make-string 70 ?=))) | 176 | (defvar trace-separator (format "%s\n" (make-string 70 ?=))) |
| 177 | 177 | ||
| 178 | (defvar inhibit-trace nil | ||
| 179 | "If non-nil, all tracing is temporarily inhibited.") | ||
| 180 | |||
| 178 | (defun trace-entry-message (function level argument-bindings) | 181 | (defun trace-entry-message (function level argument-bindings) |
| 179 | ;; Generates a string that describes that FUNCTION has been entered at | 182 | ;; Generates a string that describes that FUNCTION has been entered at |
| 180 | ;; trace LEVEL with ARGUMENT-BINDINGS. | 183 | ;; trace LEVEL with ARGUMENT-BINDINGS. |
| @@ -183,14 +186,13 @@ | |||
| 183 | (if (> level 1) " " "") | 186 | (if (> level 1) " " "") |
| 184 | level | 187 | level |
| 185 | function | 188 | function |
| 186 | (mapconcat (function | 189 | (mapconcat (lambda (binding) |
| 187 | (lambda (binding) | 190 | (concat |
| 188 | (concat | 191 | (symbol-name (ad-arg-binding-field binding 'name)) |
| 189 | (symbol-name (ad-arg-binding-field binding 'name)) | 192 | "=" |
| 190 | "=" | 193 | ;; do this so we'll see strings: |
| 191 | ;; do this so we'll see strings: | 194 | (prin1-to-string |
| 192 | (prin1-to-string | 195 | (ad-arg-binding-field binding 'value)))) |
| 193 | (ad-arg-binding-field binding 'value))))) | ||
| 194 | argument-bindings | 196 | argument-bindings |
| 195 | " "))) | 197 | " "))) |
| 196 | 198 | ||
| @@ -211,43 +213,27 @@ | |||
| 211 | ;; (quietly if BACKGROUND is t). | 213 | ;; (quietly if BACKGROUND is t). |
| 212 | (ad-make-advice | 214 | (ad-make-advice |
| 213 | trace-advice-name nil t | 215 | trace-advice-name nil t |
| 214 | (cond (background | 216 | `(advice |
| 215 | `(advice | 217 | lambda () |
| 216 | lambda () | 218 | (let ((trace-level (1+ trace-level)) |
| 217 | (let ((trace-level (1+ trace-level)) | 219 | (trace-buffer (get-buffer-create ,buffer))) |
| 218 | (trace-buffer (get-buffer-create ,buffer))) | 220 | (unless inhibit-trace |
| 219 | (save-excursion | 221 | (with-current-buffer trace-buffer |
| 220 | (set-buffer trace-buffer) | 222 | ,(unless background '(pop-to-buffer trace-buffer)) |
| 221 | (goto-char (point-max)) | 223 | (goto-char (point-max)) |
| 222 | ;; Insert a separator from previous trace output: | 224 | ;; Insert a separator from previous trace output: |
| 223 | (if (= trace-level 1) (insert trace-separator)) | 225 | (if (= trace-level 1) (insert trace-separator)) |
| 224 | (insert | 226 | (insert |
| 225 | (trace-entry-message | 227 | (trace-entry-message |
| 226 | ',function trace-level ad-arg-bindings))) | 228 | ',function trace-level ad-arg-bindings)))) |
| 227 | ad-do-it | 229 | ad-do-it |
| 228 | (save-excursion | 230 | (unless inhibit-trace |
| 229 | (set-buffer trace-buffer) | 231 | (with-current-buffer trace-buffer |
| 230 | (goto-char (point-max)) | 232 | ,(unless background '(pop-to-buffer trace-buffer)) |
| 231 | (insert | 233 | (goto-char (point-max)) |
| 232 | (trace-exit-message | 234 | (insert |
| 233 | ',function trace-level ad-return-value)))))) | 235 | (trace-exit-message |
| 234 | (t `(advice | 236 | ',function trace-level ad-return-value)))))))) |
| 235 | lambda () | ||
| 236 | (let ((trace-level (1+ trace-level)) | ||
| 237 | (trace-buffer (get-buffer-create ,buffer))) | ||
| 238 | (pop-to-buffer trace-buffer) | ||
| 239 | (goto-char (point-max)) | ||
| 240 | ;; Insert a separator from previous trace output: | ||
| 241 | (if (= trace-level 1) (insert trace-separator)) | ||
| 242 | (insert | ||
| 243 | (trace-entry-message | ||
| 244 | ',function trace-level ad-arg-bindings)) | ||
| 245 | ad-do-it | ||
| 246 | (pop-to-buffer trace-buffer) | ||
| 247 | (goto-char (point-max)) | ||
| 248 | (insert | ||
| 249 | (trace-exit-message | ||
| 250 | ',function trace-level ad-return-value)))))))) | ||
| 251 | 237 | ||
| 252 | (defun trace-function-internal (function buffer background) | 238 | (defun trace-function-internal (function buffer background) |
| 253 | ;; Adds trace advice for FUNCTION and activates it. | 239 | ;; Adds trace advice for FUNCTION and activates it. |
| @@ -297,9 +283,9 @@ activated only if the advice of FUNCTION is currently active. If FUNCTION | |||
| 297 | was not traced this is a noop." | 283 | was not traced this is a noop." |
| 298 | (interactive | 284 | (interactive |
| 299 | (list (ad-read-advised-function "Untrace function: " 'trace-is-traced))) | 285 | (list (ad-read-advised-function "Untrace function: " 'trace-is-traced))) |
| 300 | (cond ((trace-is-traced function) | 286 | (when (trace-is-traced function) |
| 301 | (ad-remove-advice function 'around trace-advice-name) | 287 | (ad-remove-advice function 'around trace-advice-name) |
| 302 | (ad-update function)))) | 288 | (ad-update function))) |
| 303 | 289 | ||
| 304 | (defun untrace-all () | 290 | (defun untrace-all () |
| 305 | "Untraces all currently traced functions." | 291 | "Untraces all currently traced functions." |
| @@ -309,5 +295,5 @@ was not traced this is a noop." | |||
| 309 | 295 | ||
| 310 | (provide 'trace) | 296 | (provide 'trace) |
| 311 | 297 | ||
| 312 | ;;; arch-tag: cfd170a7-4932-4331-8c8b-b7151942e5a1 | 298 | ;; arch-tag: cfd170a7-4932-4331-8c8b-b7151942e5a1 |
| 313 | ;;; trace.el ends here | 299 | ;;; trace.el ends here |
diff --git a/lisp/gnus/ChangeLog b/lisp/gnus/ChangeLog index b994e6520db..7ade8548764 100644 --- a/lisp/gnus/ChangeLog +++ b/lisp/gnus/ChangeLog | |||
| @@ -1,13 +1,26 @@ | |||
| 1 | 2005-02-27 Arne J,Ax(Brgensen <arne@arnested.dk> | ||
| 2 | |||
| 3 | * mm-decode.el (mm-dissect-buffer): Pass the from field on to | ||
| 4 | `mm-dissect-multipart' and receive the from field as an (optional) | ||
| 5 | argument from `mm-dissect-multipart'. | ||
| 6 | (mm-dissect-multipart): Receive the from field as an argument and | ||
| 7 | pass it on when we call `mm-dissect-buffer' on MIME parts. Fixes | ||
| 8 | verification/decryption of signed/encrypted MIME parts. | ||
| 9 | |||
| 10 | 2005-02-26 Stefan Monnier <monnier@iro.umontreal.ca> | ||
| 11 | |||
| 12 | * gnus-sum.el (gnus-summary-exit): Move point after displaying the | ||
| 13 | buffer, so it moves the window's cursor. | ||
| 14 | |||
| 1 | 2005-02-24 Reiner Steib <Reiner.Steib@gmx.de> | 15 | 2005-02-24 Reiner Steib <Reiner.Steib@gmx.de> |
| 2 | 16 | ||
| 3 | * nnheader.el (nnheader-find-file-noselect): Added doc string. | 17 | * nnheader.el (nnheader-find-file-noselect): Add doc string. |
| 4 | 18 | ||
| 5 | * nnfolder.el (nnfolder-read-folder): Use RAWFILE for | 19 | * nnfolder.el (nnfolder-read-folder): Use RAWFILE for |
| 6 | `nnheader-find-file-noselect' to avoid | 20 | `nnheader-find-file-noselect' to avoid `large-file-warning-threshold'. |
| 7 | `large-file-warning-threshold'. | ||
| 8 | 21 | ||
| 9 | * gnus-sum.el (gnus-summary-caesar-message): Apply | 22 | * gnus-sum.el (gnus-summary-caesar-message): |
| 10 | `gnus-treat-article' after rotation. | 23 | Apply `gnus-treat-article' after rotation. |
| 11 | 24 | ||
| 12 | * gnus-group.el (gnus-group-clear-data): Mention process/prefix in | 25 | * gnus-group.el (gnus-group-clear-data): Mention process/prefix in |
| 13 | doc string. | 26 | doc string. |
| @@ -41,7 +54,7 @@ | |||
| 41 | 54 | ||
| 42 | 2005-02-16 Teodor Zlatanov <tzz@lifelogs.com> | 55 | 2005-02-16 Teodor Zlatanov <tzz@lifelogs.com> |
| 43 | 56 | ||
| 44 | * gnus-registry.el (gnus-registry-delete-group): minor bug fix | 57 | * gnus-registry.el (gnus-registry-delete-group): Minor bug fix. |
| 45 | 58 | ||
| 46 | * gnus.el (gnus-install-group-spam-parameters): Doc fix. | 59 | * gnus.el (gnus-install-group-spam-parameters): Doc fix. |
| 47 | 60 | ||
diff --git a/lisp/gnus/gnus-sum.el b/lisp/gnus/gnus-sum.el index 7748a3529fa..73ac963bd3b 100644 --- a/lisp/gnus/gnus-sum.el +++ b/lisp/gnus/gnus-sum.el | |||
| @@ -1,5 +1,5 @@ | |||
| 1 | ;;; gnus-sum.el --- summary mode commands for Gnus | 1 | ;;; gnus-sum.el --- summary mode commands for Gnus |
| 2 | ;; Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004 | 2 | ;; Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005 |
| 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> |
| @@ -6680,9 +6680,11 @@ If FORCE (the prefix), also save the .newsrc file(s)." | |||
| 6680 | (set-buffer gnus-group-buffer) | 6680 | (set-buffer gnus-group-buffer) |
| 6681 | (if quit-config | 6681 | (if quit-config |
| 6682 | (gnus-handle-ephemeral-exit quit-config) | 6682 | (gnus-handle-ephemeral-exit quit-config) |
| 6683 | (goto-char group-point) | ||
| 6684 | (unless leave-hidden | 6683 | (unless leave-hidden |
| 6685 | (gnus-configure-windows 'group 'force))) | 6684 | (gnus-configure-windows 'group 'force)) |
| 6685 | ;; Move point after calling gnus-configure-windows to make sure it | ||
| 6686 | ;; moves the window's point as well. | ||
| 6687 | (goto-char group-point)) | ||
| 6686 | ;; Clear the current group name. | 6688 | ;; Clear the current group name. |
| 6687 | (unless quit-config | 6689 | (unless quit-config |
| 6688 | (setq gnus-newsgroup-name nil))))) | 6690 | (setq gnus-newsgroup-name nil))))) |
diff --git a/lisp/gnus/mm-decode.el b/lisp/gnus/mm-decode.el index 579571e16aa..10c7ea16db4 100644 --- a/lisp/gnus/mm-decode.el +++ b/lisp/gnus/mm-decode.el | |||
| @@ -509,10 +509,10 @@ Postpone undisplaying of viewers for types in | |||
| 509 | (message "Destroying external MIME viewers") | 509 | (message "Destroying external MIME viewers") |
| 510 | (mm-destroy-parts mm-postponed-undisplay-list))) | 510 | (mm-destroy-parts mm-postponed-undisplay-list))) |
| 511 | 511 | ||
| 512 | (defun mm-dissect-buffer (&optional no-strict-mime loose-mime) | 512 | (defun mm-dissect-buffer (&optional no-strict-mime loose-mime from) |
| 513 | "Dissect the current buffer and return a list of MIME handles." | 513 | "Dissect the current buffer and return a list of MIME handles." |
| 514 | (save-excursion | 514 | (save-excursion |
| 515 | (let (ct ctl type subtype cte cd description id result from) | 515 | (let (ct ctl type subtype cte cd description id result) |
| 516 | (save-restriction | 516 | (save-restriction |
| 517 | (mail-narrow-to-head) | 517 | (mail-narrow-to-head) |
| 518 | (when (or no-strict-mime | 518 | (when (or no-strict-mime |
| @@ -523,8 +523,9 @@ Postpone undisplaying of viewers for types in | |||
| 523 | cte (mail-fetch-field "content-transfer-encoding") | 523 | cte (mail-fetch-field "content-transfer-encoding") |
| 524 | cd (mail-fetch-field "content-disposition") | 524 | cd (mail-fetch-field "content-disposition") |
| 525 | description (mail-fetch-field "content-description") | 525 | description (mail-fetch-field "content-description") |
| 526 | from (mail-fetch-field "from") | ||
| 527 | id (mail-fetch-field "content-id")) | 526 | id (mail-fetch-field "content-id")) |
| 527 | (unless from | ||
| 528 | (setq from (mail-fetch-field "from"))) | ||
| 528 | ;; FIXME: In some circumstances, this code is running within | 529 | ;; FIXME: In some circumstances, this code is running within |
| 529 | ;; an unibyte macro. mail-extract-address-components | 530 | ;; an unibyte macro. mail-extract-address-components |
| 530 | ;; creates unibyte buffers. This `if', though not a perfect | 531 | ;; creates unibyte buffers. This `if', though not a perfect |
| @@ -567,7 +568,7 @@ Postpone undisplaying of viewers for types in | |||
| 567 | 'from from | 568 | 'from from |
| 568 | 'start start) | 569 | 'start start) |
| 569 | (car ctl)) | 570 | (car ctl)) |
| 570 | (cons (car ctl) (mm-dissect-multipart ctl)))) | 571 | (cons (car ctl) (mm-dissect-multipart ctl from)))) |
| 571 | (t | 572 | (t |
| 572 | (mm-possibly-verify-or-decrypt | 573 | (mm-possibly-verify-or-decrypt |
| 573 | (mm-dissect-singlepart | 574 | (mm-dissect-singlepart |
| @@ -594,7 +595,7 @@ Postpone undisplaying of viewers for types in | |||
| 594 | (mm-make-handle | 595 | (mm-make-handle |
| 595 | (mm-copy-to-buffer) ctl cte nil cdl description nil id))) | 596 | (mm-copy-to-buffer) ctl cte nil cdl description nil id))) |
| 596 | 597 | ||
| 597 | (defun mm-dissect-multipart (ctl) | 598 | (defun mm-dissect-multipart (ctl from) |
| 598 | (goto-char (point-min)) | 599 | (goto-char (point-min)) |
| 599 | (let* ((boundary (concat "\n--" (mail-content-type-get ctl 'boundary))) | 600 | (let* ((boundary (concat "\n--" (mail-content-type-get ctl 'boundary))) |
| 600 | (close-delimiter (concat (regexp-quote boundary) "--[ \t]*$")) | 601 | (close-delimiter (concat (regexp-quote boundary) "--[ \t]*$")) |
| @@ -611,7 +612,7 @@ Postpone undisplaying of viewers for types in | |||
| 611 | (save-excursion | 612 | (save-excursion |
| 612 | (save-restriction | 613 | (save-restriction |
| 613 | (narrow-to-region start (point)) | 614 | (narrow-to-region start (point)) |
| 614 | (setq parts (nconc (list (mm-dissect-buffer t)) parts))))) | 615 | (setq parts (nconc (list (mm-dissect-buffer t nil from)) parts))))) |
| 615 | (end-of-line 2) | 616 | (end-of-line 2) |
| 616 | (or (looking-at boundary) | 617 | (or (looking-at boundary) |
| 617 | (forward-line 1)) | 618 | (forward-line 1)) |
| @@ -620,7 +621,7 @@ Postpone undisplaying of viewers for types in | |||
| 620 | (save-excursion | 621 | (save-excursion |
| 621 | (save-restriction | 622 | (save-restriction |
| 622 | (narrow-to-region start end) | 623 | (narrow-to-region start end) |
| 623 | (setq parts (nconc (list (mm-dissect-buffer t)) parts))))) | 624 | (setq parts (nconc (list (mm-dissect-buffer t nil from)) parts))))) |
| 624 | (mm-possibly-verify-or-decrypt (nreverse parts) ctl))) | 625 | (mm-possibly-verify-or-decrypt (nreverse parts) ctl))) |
| 625 | 626 | ||
| 626 | (defun mm-copy-to-buffer () | 627 | (defun mm-copy-to-buffer () |
diff --git a/lisp/international/utf-16.el b/lisp/international/utf-16.el index 477cccc2bf9..04c9f682139 100644 --- a/lisp/international/utf-16.el +++ b/lisp/international/utf-16.el | |||
| @@ -391,7 +391,7 @@ name `utf-translation-table-for-decode'.") | |||
| 391 | 391 | ||
| 392 | 392 | ||
| 393 | (define-ccl-program ccl-encode-mule-utf-16le | 393 | (define-ccl-program ccl-encode-mule-utf-16le |
| 394 | `(1 | 394 | `(2 |
| 395 | ,utf-16le-encode-loop) | 395 | ,utf-16le-encode-loop) |
| 396 | "Encode to UTF-16LE (little endian without signature). | 396 | "Encode to UTF-16LE (little endian without signature). |
| 397 | Characters from the charsets ascii, eight-bit-control, | 397 | Characters from the charsets ascii, eight-bit-control, |
| @@ -401,7 +401,7 @@ after translation through the translation-table of name | |||
| 401 | Others are encoded as U+FFFD.") | 401 | Others are encoded as U+FFFD.") |
| 402 | 402 | ||
| 403 | (define-ccl-program ccl-encode-mule-utf-16be | 403 | (define-ccl-program ccl-encode-mule-utf-16be |
| 404 | `(1 | 404 | `(2 |
| 405 | ,utf-16be-encode-loop) | 405 | ,utf-16be-encode-loop) |
| 406 | "Encode to UTF-16BE (big endian without signature). | 406 | "Encode to UTF-16BE (big endian without signature). |
| 407 | Characters from the charsets ascii, eight-bit-control, | 407 | Characters from the charsets ascii, eight-bit-control, |
| @@ -411,7 +411,7 @@ after translation through the translation-table named | |||
| 411 | Others are encoded as U+FFFD.") | 411 | Others are encoded as U+FFFD.") |
| 412 | 412 | ||
| 413 | (define-ccl-program ccl-encode-mule-utf-16le-with-signature | 413 | (define-ccl-program ccl-encode-mule-utf-16le-with-signature |
| 414 | `(1 | 414 | `(4 |
| 415 | ((write #xFF) | 415 | ((write #xFF) |
| 416 | (write #xFE) | 416 | (write #xFE) |
| 417 | ,@utf-16le-encode-loop)) | 417 | ,@utf-16le-encode-loop)) |
| @@ -423,7 +423,7 @@ after translation through the translation-table of name | |||
| 423 | Others are encoded as U+FFFD.") | 423 | Others are encoded as U+FFFD.") |
| 424 | 424 | ||
| 425 | (define-ccl-program ccl-encode-mule-utf-16be-with-signature | 425 | (define-ccl-program ccl-encode-mule-utf-16be-with-signature |
| 426 | `(1 | 426 | `(4 |
| 427 | ((write #xFE) | 427 | ((write #xFE) |
| 428 | (write #xFF) | 428 | (write #xFF) |
| 429 | ,@utf-16be-encode-loop)) | 429 | ,@utf-16be-encode-loop)) |
diff --git a/lisp/mouse.el b/lisp/mouse.el index 5efcca1bd5e..fdc99205780 100644 --- a/lisp/mouse.el +++ b/lisp/mouse.el | |||
| @@ -82,6 +82,17 @@ packages. See `mouse-on-link-p' for details." | |||
| 82 | (other :tag "Single click" t)) | 82 | (other :tag "Single click" t)) |
| 83 | :group 'mouse) | 83 | :group 'mouse) |
| 84 | 84 | ||
| 85 | (defcustom mouse-1-click-in-non-selected-windows t | ||
| 86 | "*If non-nil, a Mouse-1 click also follows links in non-selected windows. | ||
| 87 | |||
| 88 | If nil, a Mouse-1 click on a link in a non-selected window performs | ||
| 89 | the normal mouse-1 binding, typically selects the window and sets | ||
| 90 | point at the click position." | ||
| 91 | :type 'boolean | ||
| 92 | :version "22.1" | ||
| 93 | :group 'mouse) | ||
| 94 | |||
| 95 | |||
| 85 | 96 | ||
| 86 | ;; Provide a mode-specific menu on a mouse button. | 97 | ;; Provide a mode-specific menu on a mouse button. |
| 87 | 98 | ||
| @@ -771,6 +782,8 @@ If the click is in the echo area, display the `*Messages*' buffer." | |||
| 771 | "Return non-nil if POS is on a link in the current buffer. | 782 | "Return non-nil if POS is on a link in the current buffer. |
| 772 | POS must be a buffer position in the current buffer or an mouse | 783 | POS must be a buffer position in the current buffer or an mouse |
| 773 | event location in the selected window, see `event-start'. | 784 | event location in the selected window, see `event-start'. |
| 785 | However, if `mouse-1-click-in-non-selected-windows' is non-nil, | ||
| 786 | POS may be a mouse event location in any window. | ||
| 774 | 787 | ||
| 775 | A clickable link is identified by one of the following methods: | 788 | A clickable link is identified by one of the following methods: |
| 776 | 789 | ||
| @@ -805,21 +818,24 @@ click is the local or global binding of that event. | |||
| 805 | 818 | ||
| 806 | - Otherwise, the mouse-1 event is translated into a mouse-2 event | 819 | - Otherwise, the mouse-1 event is translated into a mouse-2 event |
| 807 | at the same position." | 820 | at the same position." |
| 808 | (if (consp pos) | 821 | (let ((w (and (consp pos) (posn-window pos)))) |
| 809 | (setq pos (and (eq (selected-window) (posn-window pos)) | 822 | (if (consp pos) |
| 810 | (posn-point pos)))) | 823 | (setq pos (and (or mouse-1-click-in-non-selected-windows |
| 811 | (when pos | 824 | (eq (selected-window) w)) |
| 812 | (let ((action | 825 | (posn-point pos)))) |
| 813 | (or (get-char-property pos 'follow-link) | 826 | (when pos |
| 814 | (save-excursion | 827 | (with-current-buffer (window-buffer w) |
| 815 | (goto-char pos) | 828 | (let ((action |
| 816 | (key-binding [follow-link] nil t))))) | 829 | (or (get-char-property pos 'follow-link) |
| 817 | (cond | 830 | (save-excursion |
| 818 | ((eq action 'mouse-face) | 831 | (goto-char pos) |
| 819 | (and (get-char-property pos 'mouse-face) t)) | 832 | (key-binding [follow-link] nil t))))) |
| 820 | ((functionp action) | 833 | (cond |
| 821 | (funcall action pos)) | 834 | ((eq action 'mouse-face) |
| 822 | (t action))))) | 835 | (and (get-char-property pos 'mouse-face) t)) |
| 836 | ((functionp action) | ||
| 837 | (funcall action pos)) | ||
| 838 | (t action))))))) | ||
| 823 | 839 | ||
| 824 | 840 | ||
| 825 | (defun mouse-drag-region-1 (start-event) | 841 | (defun mouse-drag-region-1 (start-event) |
| @@ -839,7 +855,8 @@ at the same position." | |||
| 839 | ;; Don't count the mode line. | 855 | ;; Don't count the mode line. |
| 840 | (1- (nth 3 bounds)))) | 856 | (1- (nth 3 bounds)))) |
| 841 | (on-link (and mouse-1-click-follows-link | 857 | (on-link (and mouse-1-click-follows-link |
| 842 | (eq start-window (selected-window)))) | 858 | (or mouse-1-click-in-non-selected-windows |
| 859 | (eq start-window (selected-window))))) | ||
| 843 | remap-double-click | 860 | remap-double-click |
| 844 | (click-count (1- (event-click-count start-event)))) | 861 | (click-count (1- (event-click-count start-event)))) |
| 845 | (setq mouse-selection-click-count click-count) | 862 | (setq mouse-selection-click-count click-count) |
diff --git a/lisp/net/tramp.el b/lisp/net/tramp.el index 0fee809789e..14682975fe9 100644 --- a/lisp/net/tramp.el +++ b/lisp/net/tramp.el | |||
| @@ -4107,7 +4107,7 @@ ARGS are the arguments OPERATION has been called with." | |||
| 4107 | ((member operation | 4107 | ((member operation |
| 4108 | (list 'dired-call-process | 4108 | (list 'dired-call-process |
| 4109 | ; Emacs only | 4109 | ; Emacs only |
| 4110 | 'shell | 4110 | 'shell-command |
| 4111 | ; Post Emacs 21.3 only | 4111 | ; Post Emacs 21.3 only |
| 4112 | 'process-file | 4112 | 'process-file |
| 4113 | ; XEmacs only | 4113 | ; XEmacs only |
diff --git a/lisp/progmodes/perl-mode.el b/lisp/progmodes/perl-mode.el index eb630c2ed54..ad4633e20eb 100644 --- a/lisp/progmodes/perl-mode.el +++ b/lisp/progmodes/perl-mode.el | |||
| @@ -161,10 +161,11 @@ The expansion is entirely correct because it uses the C preprocessor." | |||
| 161 | 161 | ||
| 162 | (defvar perl-imenu-generic-expression | 162 | (defvar perl-imenu-generic-expression |
| 163 | '(;; Functions | 163 | '(;; Functions |
| 164 | (nil "^sub\\s-+\\([-A-Za-z0-9+_:]+\\)\\(\\s-\\|\n\\)*{" 1 ) | 164 | (nil "^sub\\s-+\\([-A-Za-z0-9+_:]+\\)" 1) |
| 165 | ;;Variables | 165 | ;;Variables |
| 166 | ("Variables" "^\\([$@%][-A-Za-z0-9+_:]+\\)\\s-*=" 1 ) | 166 | ("Variables" "^\\([$@%][-A-Za-z0-9+_:]+\\)\\s-*=" 1) |
| 167 | ("Packages" "^package\\s-+\\([-A-Za-z0-9+_:]+\\);" 1 )) | 167 | ("Packages" "^package\\s-+\\([-A-Za-z0-9+_:]+\\);" 1) |
| 168 | ("Doc sections" "^=head[0-9][ \t]+\\(.*\\)" 1)) | ||
| 168 | "Imenu generic expression for Perl mode. See `imenu-generic-expression'.") | 169 | "Imenu generic expression for Perl mode. See `imenu-generic-expression'.") |
| 169 | 170 | ||
| 170 | ;; Regexps updated with help from Tom Tromey <tromey@cambric.colorado.edu> and | 171 | ;; Regexps updated with help from Tom Tromey <tromey@cambric.colorado.edu> and |
| @@ -411,6 +412,20 @@ create a new comment." | |||
| 411 | (defcustom perl-nochange ";?#\\|\f\\|\\s(\\|\\(\\w\\|\\s_\\)+:[^:]" | 412 | (defcustom perl-nochange ";?#\\|\f\\|\\s(\\|\\(\\w\\|\\s_\\)+:[^:]" |
| 412 | "*Lines starting with this regular expression are not auto-indented." | 413 | "*Lines starting with this regular expression are not auto-indented." |
| 413 | :type 'regexp) | 414 | :type 'regexp) |
| 415 | |||
| 416 | ;; Outline support | ||
| 417 | |||
| 418 | (defvar perl-outline-regexp | ||
| 419 | (concat (mapconcat 'cadr perl-imenu-generic-expression "\\|") | ||
| 420 | "\\|^=cut\\>")) | ||
| 421 | |||
| 422 | (defun perl-outline-level () | ||
| 423 | (cond | ||
| 424 | ((looking-at "package\\s-") 0) | ||
| 425 | ((looking-at "sub\\s-") 1) | ||
| 426 | ((looking-at "=head[0-9]") (- (char-before (match-end 0)) ?0)) | ||
| 427 | ((looking-at "=cut") 1) | ||
| 428 | (t 3))) | ||
| 414 | 429 | ||
| 415 | ;;;###autoload | 430 | ;;;###autoload |
| 416 | (defun perl-mode () | 431 | (defun perl-mode () |
| @@ -498,9 +513,12 @@ Turning on Perl mode runs the normal hook `perl-mode-hook'." | |||
| 498 | . perl-font-lock-syntactic-face-function) | 513 | . perl-font-lock-syntactic-face-function) |
| 499 | (parse-sexp-lookup-properties . t))) | 514 | (parse-sexp-lookup-properties . t))) |
| 500 | ;; Tell imenu how to handle Perl. | 515 | ;; Tell imenu how to handle Perl. |
| 501 | (make-local-variable 'imenu-generic-expression) | 516 | (set (make-local-variable 'imenu-generic-expression) |
| 502 | (setq imenu-generic-expression perl-imenu-generic-expression) | 517 | perl-imenu-generic-expression) |
| 503 | (setq imenu-case-fold-search nil) | 518 | (setq imenu-case-fold-search nil) |
| 519 | ;; Setup outline-minor-mode. | ||
| 520 | (set (make-local-variable 'outline-regexp) perl-outline-regexp) | ||
| 521 | (set (make-local-variable 'outline-level) 'perl-outline-level) | ||
| 504 | (run-hooks 'perl-mode-hook)) | 522 | (run-hooks 'perl-mode-hook)) |
| 505 | 523 | ||
| 506 | ;; This is used by indent-for-comment | 524 | ;; This is used by indent-for-comment |
diff --git a/lisp/register.el b/lisp/register.el index bab9d01edf2..253207c3140 100644 --- a/lisp/register.el +++ b/lisp/register.el | |||
| @@ -227,8 +227,10 @@ The Lisp value REGISTER is a character." | |||
| 227 | (princ (car val)))) | 227 | (princ (car val)))) |
| 228 | 228 | ||
| 229 | ((stringp val) | 229 | ((stringp val) |
| 230 | (remove-list-of-text-properties 0 (length val) | 230 | (if (eq yank-excluded-properties t) |
| 231 | yank-excluded-properties val) | 231 | (set-text-properties 0 (length val) nil val) |
| 232 | (remove-list-of-text-properties 0 (length val) | ||
| 233 | yank-excluded-properties val)) | ||
| 232 | (if verbose | 234 | (if verbose |
| 233 | (progn | 235 | (progn |
| 234 | (princ "the text:\n") | 236 | (princ "the text:\n") |
diff --git a/lisp/replace.el b/lisp/replace.el index 2c60cd006f1..d2a0370f93e 100644 --- a/lisp/replace.el +++ b/lisp/replace.el | |||
| @@ -1,7 +1,7 @@ | |||
| 1 | ;;; replace.el --- replace commands for Emacs | 1 | ;;; replace.el --- replace commands for Emacs |
| 2 | 2 | ||
| 3 | ;; Copyright (C) 1985, 1986, 1987, 1992, 1994, 1996, 1997, 2000, 2001, 2002, | 3 | ;; Copyright (C) 1985, 1986, 1987, 1992, 1994, 1996, 1997, 2000, 2001, 2002, |
| 4 | ;; 2003, 2004 Free Software Foundation, Inc. | 4 | ;; 2003, 2004, 2005 Free Software Foundation, Inc. |
| 5 | 5 | ||
| 6 | ;; Maintainer: FSF | 6 | ;; Maintainer: FSF |
| 7 | 7 | ||
| @@ -116,10 +116,10 @@ wants to replace FROM with TO." | |||
| 116 | nil t t)))) | 116 | nil t t)))) |
| 117 | (if (and (zerop (length from)) lastto lastfrom) | 117 | (if (and (zerop (length from)) lastto lastfrom) |
| 118 | (progn | 118 | (progn |
| 119 | (cons lastfrom | ||
| 120 | (query-replace-compile-replacement lastto regexp-flag)) | ||
| 121 | (set query-replace-from-history-variable | 119 | (set query-replace-from-history-variable |
| 122 | (cdr (symbol-value query-replace-from-history-variable)))) | 120 | (cdr (symbol-value query-replace-from-history-variable))) |
| 121 | (cons lastfrom | ||
| 122 | (query-replace-compile-replacement lastto regexp-flag))) | ||
| 123 | ;; Warn if user types \n or \t, but don't reject the input. | 123 | ;; Warn if user types \n or \t, but don't reject the input. |
| 124 | (and regexp-flag | 124 | (and regexp-flag |
| 125 | (string-match "\\(\\`\\|[^\\]\\)\\(\\\\\\\\\\)*\\(\\\\[nt]\\)" from) | 125 | (string-match "\\(\\`\\|[^\\]\\)\\(\\\\\\\\\\)*\\(\\\\[nt]\\)" from) |
diff --git a/lisp/reveal.el b/lisp/reveal.el index 04cc58893c9..4d2742a4810 100644 --- a/lisp/reveal.el +++ b/lisp/reveal.el | |||
| @@ -1,6 +1,6 @@ | |||
| 1 | ;;; reveal.el --- Automatically reveal hidden text at point | 1 | ;;; reveal.el --- Automatically reveal hidden text at point |
| 2 | 2 | ||
| 3 | ;; Copyright (C) 2000, 2001, 2004 Free Software Foundation, Inc. | 3 | ;; Copyright (C) 2000, 2001, 2004, 2005 Free Software Foundation, Inc. |
| 4 | 4 | ||
| 5 | ;; Author: Stefan Monnier <monnier@cs.yale.edu> | 5 | ;; Author: Stefan Monnier <monnier@cs.yale.edu> |
| 6 | ;; Keywords: outlines | 6 | ;; Keywords: outlines |
| @@ -93,16 +93,22 @@ | |||
| 93 | (overlays-at (point)))) | 93 | (overlays-at (point)))) |
| 94 | (push (cons (selected-window) ol) reveal-open-spots) | 94 | (push (cons (selected-window) ol) reveal-open-spots) |
| 95 | (setq old-ols (delq ol old-ols)) | 95 | (setq old-ols (delq ol old-ols)) |
| 96 | (let ((open (overlay-get ol 'reveal-toggle-invisible)) inv) | 96 | (let ((inv (overlay-get ol 'invisible)) open) |
| 97 | (when (or open | 97 | (when (and inv |
| 98 | (and (setq inv (overlay-get ol 'invisible)) | 98 | ;; There's an `invisible' property. Make sure it's |
| 99 | (symbolp inv) | 99 | ;; actually invisible. |
| 100 | (or (setq open (or (get inv 'reveal-toggle-invisible) | 100 | (or (not (listp buffer-invisibility-spec)) |
| 101 | (overlay-get ol 'isearch-open-invisible-temporary))) | 101 | (memq inv buffer-invisibility-spec) |
| 102 | (overlay-get ol 'isearch-open-invisible) | 102 | (assq inv buffer-invisibility-spec)) |
| 103 | (and (consp buffer-invisibility-spec) | 103 | (or (setq open |
| 104 | (assq inv buffer-invisibility-spec))) | 104 | (or (overlay-get ol 'reveal-toggle-invisible) |
| 105 | (overlay-put ol 'reveal-invisible inv))) | 105 | (and (symbolp inv) |
| 106 | (get inv 'reveal-toggle-invisible)) | ||
| 107 | (overlay-get ol 'isearch-open-invisible-temporary))) | ||
| 108 | (overlay-get ol 'isearch-open-invisible) | ||
| 109 | (and (consp buffer-invisibility-spec) | ||
| 110 | (cdr (assq inv buffer-invisibility-spec)))) | ||
| 111 | (overlay-put ol 'reveal-invisible inv)) | ||
| 106 | (if (null open) | 112 | (if (null open) |
| 107 | (overlay-put ol 'invisible nil) | 113 | (overlay-put ol 'invisible nil) |
| 108 | ;; Use the provided opening function and repeat (since the | 114 | ;; Use the provided opening function and repeat (since the |
| @@ -110,7 +116,8 @@ | |||
| 110 | (setq repeat t) | 116 | (setq repeat t) |
| 111 | (condition-case err | 117 | (condition-case err |
| 112 | (funcall open ol nil) | 118 | (funcall open ol nil) |
| 113 | (error (message "!!Reveal-show: %s !!" err) | 119 | (error (message "!!Reveal-show (funcall %s %s nil): %s !!" |
| 120 | open ol err) | ||
| 114 | ;; Let's default to a meaningful behavior to avoid | 121 | ;; Let's default to a meaningful behavior to avoid |
| 115 | ;; getting stuck in an infinite loop. | 122 | ;; getting stuck in an infinite loop. |
| 116 | (setq repeat nil) | 123 | (setq repeat nil) |
| @@ -147,7 +154,8 @@ | |||
| 147 | (overlay-get ol 'isearch-open-invisible-temporary))))) | 154 | (overlay-get ol 'isearch-open-invisible-temporary))))) |
| 148 | (condition-case err | 155 | (condition-case err |
| 149 | (funcall open ol t) | 156 | (funcall open ol t) |
| 150 | (error (message "!!Reveal-hide: %s !!" err))) | 157 | (error (message "!!Reveal-hide (funcall %s %s t): %s !!" |
| 158 | open ol err))) | ||
| 151 | (overlay-put ol 'invisible inv)))))))) | 159 | (overlay-put ol 'invisible inv)))))))) |
| 152 | (error (message "Reveal: %s" err))))) | 160 | (error (message "Reveal: %s" err))))) |
| 153 | 161 | ||
diff --git a/lisp/speedbar.el b/lisp/speedbar.el index ecb213d52fd..7a6e01f2859 100644 --- a/lisp/speedbar.el +++ b/lisp/speedbar.el | |||
| @@ -761,11 +761,9 @@ PATH-EXPRESSION to `speedbar-ignored-path-expressions'." | |||
| 761 | (display-graphic-p) | 761 | (display-graphic-p) |
| 762 | window-system)) | 762 | window-system)) |
| 763 | "*Non-nil means to automatically update the display. | 763 | "*Non-nil means to automatically update the display. |
| 764 | When this is nil then speedbar will not follow the attached frame's path. | 764 | When this is nil then speedbar will not follow the attached |
| 765 | When speedbar is active, use: | 765 | frame's path. Type \ |
| 766 | 766 | \\<speedbar-key-map>\\[speedbar-toggle-updates] in the speedbar \ | |
| 767 | \\<speedbar-key-map> `\\[speedbar-toggle-updates]' | ||
| 768 | |||
| 769 | to toggle this value.") | 767 | to toggle this value.") |
| 770 | 768 | ||
| 771 | (defvar speedbar-syntax-table nil | 769 | (defvar speedbar-syntax-table nil |
| @@ -1344,7 +1342,7 @@ Optional EVENT is currently not used." | |||
| 1344 | (if (equal (car pos) speedbar-frame) | 1342 | (if (equal (car pos) speedbar-frame) |
| 1345 | (save-excursion | 1343 | (save-excursion |
| 1346 | (save-window-excursion | 1344 | (save-window-excursion |
| 1347 | (apply 'set-mouse-position pos) | 1345 | (apply 'set-mouse-position (list (car pos) (cadr pos) (cddr pos))) |
| 1348 | (speedbar-item-info)))))) | 1346 | (speedbar-item-info)))))) |
| 1349 | 1347 | ||
| 1350 | (defun speedbar-set-mode-line-format () | 1348 | (defun speedbar-set-mode-line-format () |
diff --git a/lisp/textmodes/flyspell.el b/lisp/textmodes/flyspell.el index 01db2d64b27..c224a970e01 100644 --- a/lisp/textmodes/flyspell.el +++ b/lisp/textmodes/flyspell.el | |||
| @@ -543,8 +543,9 @@ in your .emacs file. | |||
| 543 | "Turn Flyspell mode on. Do not use this; use `flyspell-mode' instead." | 543 | "Turn Flyspell mode on. Do not use this; use `flyspell-mode' instead." |
| 544 | (setq ispell-highlight-face 'flyspell-incorrect-face) | 544 | (setq ispell-highlight-face 'flyspell-incorrect-face) |
| 545 | ;; local dictionaries setup | 545 | ;; local dictionaries setup |
| 546 | (ispell-change-dictionary | 546 | (or ispell-local-dictionary ispell-dictionary |
| 547 | (or ispell-local-dictionary ispell-dictionary flyspell-default-dictionary)) | 547 | (if flyspell-default-dictionary |
| 548 | (ispell-change-dictionary flyspell-default-dictionary))) | ||
| 548 | ;; we have to force ispell to accept the local definition or | 549 | ;; we have to force ispell to accept the local definition or |
| 549 | ;; otherwise it could be too late, the local dictionary may | 550 | ;; otherwise it could be too late, the local dictionary may |
| 550 | ;; be forgotten! | 551 | ;; be forgotten! |
diff --git a/lisp/textmodes/ispell.el b/lisp/textmodes/ispell.el index a28764b54a1..2a84d584634 100644 --- a/lisp/textmodes/ispell.el +++ b/lisp/textmodes/ispell.el | |||
| @@ -2417,9 +2417,10 @@ With NO-ERROR, just return non-nil if there was no Ispell running." | |||
| 2417 | ;;;###autoload | 2417 | ;;;###autoload |
| 2418 | (defun ispell-change-dictionary (dict &optional arg) | 2418 | (defun ispell-change-dictionary (dict &optional arg) |
| 2419 | "Change to dictionary DICT for Ispell. | 2419 | "Change to dictionary DICT for Ispell. |
| 2420 | By just answering RET you can find out what the current dictionary is. | 2420 | With a prefix arg, set it \"globally\", for all buffers. |
| 2421 | Without a prefix arg, set it \"locally\", just for this buffer. | ||
| 2421 | 2422 | ||
| 2422 | With prefix argument, set the default dictionary." | 2423 | By just answering RET you can find out what the current dictionary is." |
| 2423 | (interactive | 2424 | (interactive |
| 2424 | (list (completing-read | 2425 | (list (completing-read |
| 2425 | "Use new dictionary (RET for current, SPC to complete): " | 2426 | "Use new dictionary (RET for current, SPC to complete): " |
diff --git a/lisp/url/ChangeLog b/lisp/url/ChangeLog index 8bc7209749f..5a3bf23529c 100644 --- a/lisp/url/ChangeLog +++ b/lisp/url/ChangeLog | |||
| @@ -1,3 +1,8 @@ | |||
| 1 | 2005-02-26 James Cloos <cloos@jhcloos.com> (tiny change) | ||
| 2 | |||
| 3 | * url-history.el (url-have-visited-url): Don't barf if | ||
| 4 | url-history-hash-table is nil. | ||
| 5 | |||
| 1 | 2005-02-14 Michael Welsh Duggan <md5i@cs.cmu.edu> | 6 | 2005-02-14 Michael Welsh Duggan <md5i@cs.cmu.edu> |
| 2 | 7 | ||
| 3 | * url-http.el (url-http-parse-headers): Test url-automatic-caching. | 8 | * url-http.el (url-http-parse-headers): Test url-automatic-caching. |
diff --git a/lisp/url/url-history.el b/lisp/url/url-history.el index 6a2d87cfbc1..e2bc9b17f69 100644 --- a/lisp/url/url-history.el +++ b/lisp/url/url-history.el | |||
| @@ -164,7 +164,8 @@ user for what type to save as." | |||
| 164 | 164 | ||
| 165 | (defun url-have-visited-url (url) | 165 | (defun url-have-visited-url (url) |
| 166 | (url-do-setup) | 166 | (url-do-setup) |
| 167 | (gethash url url-history-hash-table nil)) | 167 | (and url-history-hash-table |
| 168 | (gethash url url-history-hash-table nil))) | ||
| 168 | 169 | ||
| 169 | (defun url-completion-function (string predicate function) | 170 | (defun url-completion-function (string predicate function) |
| 170 | (url-do-setup) | 171 | (url-do-setup) |
diff --git a/lisp/vc.el b/lisp/vc.el index 2daf100ff57..2e241e67f48 100644 --- a/lisp/vc.el +++ b/lisp/vc.el | |||
| @@ -958,6 +958,9 @@ that is inserted into the command line before the filename." | |||
| 958 | (mapconcat 'identity vc-path path-separator)) | 958 | (mapconcat 'identity vc-path path-separator)) |
| 959 | process-environment)) | 959 | process-environment)) |
| 960 | (w32-quote-process-args t)) | 960 | (w32-quote-process-args t)) |
| 961 | (if (and (eq okstatus 'async) (file-remote-p default-directory)) | ||
| 962 | ;; start-process does not support remote execution | ||
| 963 | (setq okstatus nil)) | ||
| 961 | (if (eq okstatus 'async) | 964 | (if (eq okstatus 'async) |
| 962 | (let ((proc (apply 'start-process command (current-buffer) command | 965 | (let ((proc (apply 'start-process command (current-buffer) command |
| 963 | squeezed))) | 966 | squeezed))) |