diff options
| author | Miles Bader | 2006-03-10 23:46:54 +0000 |
|---|---|---|
| committer | Miles Bader | 2006-03-10 23:46:54 +0000 |
| commit | 57216976c5a20643ba59f8436e1177f66eb17cb7 (patch) | |
| tree | d8210e4d5d8e8502635922addf9355ccd6bf21e2 /lisp | |
| parent | d959f5123e8ac52035c899704954dfcf426529c9 (diff) | |
| parent | ea8ae7654a60bf4598a6b6269fe75fb859b91651 (diff) | |
| download | emacs-57216976c5a20643ba59f8436e1177f66eb17cb7.tar.gz emacs-57216976c5a20643ba59f8436e1177f66eb17cb7.zip | |
Revision: emacs@sv.gnu.org/emacs--unicode--0--patch-42
Merge from emacs--devo--0
Patches applied:
* emacs--devo--0 (patch 144-147)
- Update from CVS
- Merge from gnus--rel--5.10
* gnus--rel--5.10 (patch 56)
- Update from CVS
Diffstat (limited to 'lisp')
| -rw-r--r-- | lisp/ChangeLog | 29 | ||||
| -rw-r--r-- | lisp/calendar/calendar.el | 12 | ||||
| -rw-r--r-- | lisp/calendar/holidays.el | 8 | ||||
| -rw-r--r-- | lisp/gnus/ChangeLog | 24 | ||||
| -rw-r--r-- | lisp/gnus/gnus-group.el | 5 | ||||
| -rw-r--r-- | lisp/gnus/gnus-nocem.el | 18 | ||||
| -rw-r--r-- | lisp/gnus/gnus-start.el | 9 | ||||
| -rw-r--r-- | lisp/gnus/gnus.el | 18 | ||||
| -rw-r--r-- | lisp/gnus/smiley.el | 42 | ||||
| -rw-r--r-- | lisp/image.el | 74 | ||||
| -rw-r--r-- | lisp/mh-e/ChangeLog | 5 | ||||
| -rw-r--r-- | lisp/mh-e/mh-e.el | 4 | ||||
| -rw-r--r-- | lisp/progmodes/gdb-ui.el | 27 |
13 files changed, 236 insertions, 39 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 989f803b7fd..bb70c0820a3 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog | |||
| @@ -1,3 +1,32 @@ | |||
| 1 | 2006-03-10 Bill Wohler <wohler@newt.com> | ||
| 2 | |||
| 3 | * image.el (image-load-path-for-library): Merge at least three | ||
| 4 | functions from Gnus and MH-E into this one function that can now | ||
| 5 | be shared. | ||
| 6 | |||
| 7 | 2006-03-11 Nick Roberts <nickrob@snap.net.nz> | ||
| 8 | |||
| 9 | * progmodes/gdb-ui.el (gdb-remove-text-properties): Rename from | ||
| 10 | gdb-remove-mouse-face and remove help-echo too. | ||
| 11 | (gdb-enqueue-input): Correct conditional clause. | ||
| 12 | |||
| 13 | 2006-03-10 Glenn Morris <rgm@gnu.org> | ||
| 14 | |||
| 15 | * calendar/calendar.el (calendar-holidays): Doc fix. | ||
| 16 | * calendar/holidays.el (list-holidays): Doc fix. | ||
| 17 | |||
| 18 | 2006-03-10 Nick Roberts <nickrob@snap.net.nz> | ||
| 19 | |||
| 20 | * progmodes/gdb-ui.el (gdba): Don't call gdb-init-1 explicitly as | ||
| 21 | it gets called in gdb-prompt anyway. | ||
| 22 | (gdb-use-separate-io-buffer): Only restore window arrangement for | ||
| 23 | gdb-many-windows. | ||
| 24 | (gdb-enqueue-input): Make it harder to send GDB input when program | ||
| 25 | is running. | ||
| 26 | (gdb-buffer-list): New variable. | ||
| 27 | (gdb-remove-mouse-face): New function. | ||
| 28 | (gdb-starting): Use it when GDB input won't get sent. | ||
| 29 | |||
| 1 | 2006-03-08 Juanma Barranquero <lekktu@gmail.com> | 30 | 2006-03-08 Juanma Barranquero <lekktu@gmail.com> |
| 2 | 31 | ||
| 3 | * help.el (view-lossage): Remove trailing whitespace before | 32 | * help.el (view-lossage): Remove trailing whitespace before |
diff --git a/lisp/calendar/calendar.el b/lisp/calendar/calendar.el index 9516e02c5e1..1383b8bac16 100644 --- a/lisp/calendar/calendar.el +++ b/lisp/calendar/calendar.el | |||
| @@ -1192,10 +1192,14 @@ of `general-holidays', `local-holidays' `christian-holidays', | |||
| 1192 | `oriental-holidays', or `solar-holidays' to nil in your .emacs file, | 1192 | `oriental-holidays', or `solar-holidays' to nil in your .emacs file, |
| 1193 | you can eliminate unwanted categories of holidays. | 1193 | you can eliminate unwanted categories of holidays. |
| 1194 | 1194 | ||
| 1195 | Note that these variables are only used to initialize the default | 1195 | The aforementioned variables control the holiday choices offered |
| 1196 | value of `calendar-holidays'. In other words, they only have an | 1196 | by the function `list-holidays' when it is called interactively. |
| 1197 | effect on the displayed holidays if set before the calendar is | 1197 | |
| 1198 | loaded. After the calendar has been loaded, you must customize | 1198 | They also initialize the default value of `calendar-holidays', |
| 1199 | which is the default list of holidays used by the function | ||
| 1200 | `list-holidays' in the non-interactive case. Note that these | ||
| 1201 | variables have no effect on `calendar-holidays' after it has been | ||
| 1202 | set (e.g. after the calendar is loaded). In that case, customize | ||
| 1199 | `calendar-holidays' directly. | 1203 | `calendar-holidays' directly. |
| 1200 | 1204 | ||
| 1201 | The intention is that (in the US) `local-holidays' be set in | 1205 | The intention is that (in the US) `local-holidays' be set in |
diff --git a/lisp/calendar/holidays.el b/lisp/calendar/holidays.el index c9a1a0f17e5..1aaf226d21d 100644 --- a/lisp/calendar/holidays.el +++ b/lisp/calendar/holidays.el | |||
| @@ -119,8 +119,12 @@ This function is suitable for execution in a .emacs file." | |||
| 119 | (defun list-holidays (y1 y2 &optional l label) | 119 | (defun list-holidays (y1 y2 &optional l label) |
| 120 | "Display holidays for years Y1 to Y2 (inclusive). | 120 | "Display holidays for years Y1 to Y2 (inclusive). |
| 121 | 121 | ||
| 122 | The optional list of holidays L defaults to `calendar-holidays'. See the | 122 | The optional list of holidays L defaults to `calendar-holidays'. |
| 123 | documentation for that variable for a description of holiday lists. | 123 | When called interactively, this command offers a choice of |
| 124 | holidays, based on the variables `solar-holidays' etc. See the | ||
| 125 | documentation of `calendar-holidays' for a list of the variables | ||
| 126 | that control the choices, as well as a description of the format | ||
| 127 | of a holiday list. | ||
| 124 | 128 | ||
| 125 | The optional LABEL is used to label the buffer created." | 129 | The optional LABEL is used to label the buffer created." |
| 126 | (interactive | 130 | (interactive |
diff --git a/lisp/gnus/ChangeLog b/lisp/gnus/ChangeLog index 374c3da2994..8023af47bfd 100644 --- a/lisp/gnus/ChangeLog +++ b/lisp/gnus/ChangeLog | |||
| @@ -1,3 +1,27 @@ | |||
| 1 | 2006-03-10 Reiner Steib <Reiner.Steib@gmx.de> | ||
| 2 | |||
| 3 | * smiley.el: Add more test smileys. | ||
| 4 | (smiley-data-directory, smiley-regexp-alist) | ||
| 5 | (gnus-smiley-file-types): Fix doc strings. | ||
| 6 | (smiley-update-cache): Clear smiley-cached-regexp-alist before | ||
| 7 | adding new elements. | ||
| 8 | (smiley-mouse-map): Unused code. Make it a comment. | ||
| 9 | |||
| 10 | 2006-03-10 Katsumi Yamaoka <yamaoka@jpl.org> | ||
| 11 | |||
| 12 | * gnus-nocem.el (gnus-nocem-scan-groups): Add autoload cookie; | ||
| 13 | scan latest NoCeM messages instead of old ones. | ||
| 14 | (gnus-nocem-check-article): Fix regexps so as to match to PGP | ||
| 15 | delimiters that are recently used. | ||
| 16 | (gnus-nocem-load-cache): Add autoload cookie. | ||
| 17 | |||
| 18 | * gnus.el (gnus-use-nocem): Enable it to be set to also a number. | ||
| 19 | |||
| 20 | * gnus-start.el (gnus-setup-news): Scan NoCeM messages if a group | ||
| 21 | level which is larger than gnus-use-nocem is specified. | ||
| 22 | |||
| 23 | * gnus-group.el (gnus-group-get-new-news): Ditto. | ||
| 24 | |||
| 1 | 2006-03-08 Reiner Steib <Reiner.Steib@gmx.de> | 25 | 2006-03-08 Reiner Steib <Reiner.Steib@gmx.de> |
| 2 | 26 | ||
| 3 | * gnus-util.el (gnus-tool-bar-update): New function. | 27 | * gnus-util.el (gnus-tool-bar-update): New function. |
diff --git a/lisp/gnus/gnus-group.el b/lisp/gnus/gnus-group.el index 3d20af8b0df..0ed72433115 100644 --- a/lisp/gnus/gnus-group.el +++ b/lisp/gnus/gnus-group.el | |||
| @@ -3622,7 +3622,10 @@ re-scanning. If ARG is non-nil and not a number, this will force | |||
| 3622 | 3622 | ||
| 3623 | ;; We might read in new NoCeM messages here. | 3623 | ;; We might read in new NoCeM messages here. |
| 3624 | (when (and gnus-use-nocem | 3624 | (when (and gnus-use-nocem |
| 3625 | (null arg)) | 3625 | (or (and (numberp gnus-use-nocem) |
| 3626 | (numberp arg) | ||
| 3627 | (>= arg gnus-use-nocem)) | ||
| 3628 | (not arg))) | ||
| 3626 | (gnus-nocem-scan-groups)) | 3629 | (gnus-nocem-scan-groups)) |
| 3627 | ;; If ARG is not a number, then we read the active file. | 3630 | ;; If ARG is not a number, then we read the active file. |
| 3628 | (when (and arg (not (numberp arg))) | 3631 | (when (and arg (not (numberp arg))) |
diff --git a/lisp/gnus/gnus-nocem.el b/lisp/gnus/gnus-nocem.el index b17c33a5d7f..e75b25282b0 100644 --- a/lisp/gnus/gnus-nocem.el +++ b/lisp/gnus/gnus-nocem.el | |||
| @@ -136,6 +136,7 @@ valid issuer, which is much faster if you are selective about the issuers." | |||
| 136 | (gnus-sethash group t gnus-nocem-real-group-hashtb)) | 136 | (gnus-sethash group t gnus-nocem-real-group-hashtb)) |
| 137 | gnus-newsrc-alist)) | 137 | gnus-newsrc-alist)) |
| 138 | 138 | ||
| 139 | ;;;###autoload | ||
| 139 | (defun gnus-nocem-scan-groups () | 140 | (defun gnus-nocem-scan-groups () |
| 140 | "Scan all NoCeM groups for new NoCeM messages." | 141 | "Scan all NoCeM groups for new NoCeM messages." |
| 141 | (interactive) | 142 | (interactive) |
| @@ -206,10 +207,10 @@ valid issuer, which is much faster if you are selective about the issuers." | |||
| 206 | (not (member (mail-header-message-id header) | 207 | (not (member (mail-header-message-id header) |
| 207 | gnus-nocem-seen-message-ids)))) | 208 | gnus-nocem-seen-message-ids)))) |
| 208 | (push header check-headers))) | 209 | (push header check-headers))) |
| 209 | (let* ((i 0) | 210 | (setq check-headers (last (nreverse check-headers) |
| 210 | (check-headers | 211 | gnus-nocem-check-article-limit)) |
| 211 | (last check-headers gnus-nocem-check-article-limit)) | 212 | (let ((i 0) |
| 212 | (len (length check-headers))) | 213 | (len (length check-headers))) |
| 213 | (dolist (h check-headers) | 214 | (dolist (h check-headers) |
| 214 | (gnus-message | 215 | (gnus-message |
| 215 | 7 "Checking article %d in %s for NoCeM (%d of %d)..." | 216 | 7 "Checking article %d in %s for NoCeM (%d of %d)..." |
| @@ -235,9 +236,13 @@ valid issuer, which is much faster if you are selective about the issuers." | |||
| 235 | (days-to-time gnus-nocem-expiry-wait))) | 236 | (days-to-time gnus-nocem-expiry-wait))) |
| 236 | (gnus-request-article-this-buffer (mail-header-number header) group) | 237 | (gnus-request-article-this-buffer (mail-header-number header) group) |
| 237 | (goto-char (point-min)) | 238 | (goto-char (point-min)) |
| 238 | (when (re-search-forward "-----BEGIN PGP MESSAGE-----" nil t) | 239 | (when (re-search-forward |
| 240 | "-----BEGIN PGP\\( SIGNED\\)? MESSAGE-----" | ||
| 241 | nil t) | ||
| 239 | (delete-region (point-min) (match-beginning 0))) | 242 | (delete-region (point-min) (match-beginning 0))) |
| 240 | (when (re-search-forward "-----END PGP MESSAGE-----\n?" nil t) | 243 | (when (re-search-forward |
| 244 | "-----END PGP \\(MESSAGE\\|SIGNATURE\\)-----\n?" | ||
| 245 | nil t) | ||
| 241 | (delete-region (match-end 0) (point-max))) | 246 | (delete-region (match-end 0) (point-max))) |
| 242 | (goto-char (point-min)) | 247 | (goto-char (point-min)) |
| 243 | ;; The article has to have proper NoCeM headers. | 248 | ;; The article has to have proper NoCeM headers. |
| @@ -334,6 +339,7 @@ valid issuer, which is much faster if you are selective about the issuers." | |||
| 334 | gnus-nocem-alist)) | 339 | gnus-nocem-alist)) |
| 335 | t))) | 340 | t))) |
| 336 | 341 | ||
| 342 | ;;;###autoload | ||
| 337 | (defun gnus-nocem-load-cache () | 343 | (defun gnus-nocem-load-cache () |
| 338 | "Load the NoCeM cache." | 344 | "Load the NoCeM cache." |
| 339 | (interactive) | 345 | (interactive) |
diff --git a/lisp/gnus/gnus-start.el b/lisp/gnus/gnus-start.el index 6d82d554365..0f56e40ae15 100644 --- a/lisp/gnus/gnus-start.el +++ b/lisp/gnus/gnus-start.el | |||
| @@ -1049,9 +1049,12 @@ If LEVEL is non-nil, the news will be set up at level LEVEL." | |||
| 1049 | (gnus-check-bogus-newsgroups)) | 1049 | (gnus-check-bogus-newsgroups)) |
| 1050 | 1050 | ||
| 1051 | ;; We might read in new NoCeM messages here. | 1051 | ;; We might read in new NoCeM messages here. |
| 1052 | (when (and gnus-use-nocem | 1052 | (when (and (not dont-connect) |
| 1053 | (not level) | 1053 | gnus-use-nocem |
| 1054 | (not dont-connect)) | 1054 | (or (and (numberp gnus-use-nocem) |
| 1055 | (numberp level) | ||
| 1056 | (>= level gnus-use-nocem)) | ||
| 1057 | (not level))) | ||
| 1055 | (gnus-nocem-scan-groups)) | 1058 | (gnus-nocem-scan-groups)) |
| 1056 | 1059 | ||
| 1057 | ;; Read any slave files. | 1060 | ;; Read any slave files. |
diff --git a/lisp/gnus/gnus.el b/lisp/gnus/gnus.el index 2caccc0b70e..7a04c61151a 100644 --- a/lisp/gnus/gnus.el +++ b/lisp/gnus/gnus.el | |||
| @@ -1580,9 +1580,23 @@ articles. This is not a good idea." | |||
| 1580 | :value t))) | 1580 | :value t))) |
| 1581 | 1581 | ||
| 1582 | (defcustom gnus-use-nocem nil | 1582 | (defcustom gnus-use-nocem nil |
| 1583 | "*If non-nil, Gnus will read NoCeM cancel messages." | 1583 | "*If non-nil, Gnus will read NoCeM cancel messages. |
| 1584 | You can also set this variable to a positive number as a group level. | ||
| 1585 | In that case, Gnus scans NoCeM messages when checking new news if this | ||
| 1586 | value is not exceeding a group level that you specify as the prefix | ||
| 1587 | argument to some commands, e.g. `gnus', `gnus-group-get-new-news', etc. | ||
| 1588 | Otherwise, Gnus does not scan NoCeM messages if you specify a group | ||
| 1589 | level to those commands." | ||
| 1584 | :group 'gnus-meta | 1590 | :group 'gnus-meta |
| 1585 | :type 'boolean) | 1591 | :type '(choice |
| 1592 | (const :tag "off" nil) | ||
| 1593 | (const :tag "on" t) | ||
| 1594 | (list :convert-widget | ||
| 1595 | (lambda (widget) | ||
| 1596 | (list 'integer :tag "group level" | ||
| 1597 | :value (if (boundp 'gnus-level-default-subscribed) | ||
| 1598 | gnus-level-default-subscribed | ||
| 1599 | 3)))))) | ||
| 1586 | 1600 | ||
| 1587 | (defcustom gnus-suppress-duplicates nil | 1601 | (defcustom gnus-suppress-duplicates nil |
| 1588 | "*If non-nil, Gnus will mark duplicate copies of the same article as read." | 1602 | "*If non-nil, Gnus will mark duplicate copies of the same article as read." |
diff --git a/lisp/gnus/smiley.el b/lisp/gnus/smiley.el index d7657e444b8..e8afe9dd10d 100644 --- a/lisp/gnus/smiley.el +++ b/lisp/gnus/smiley.el | |||
| @@ -31,8 +31,21 @@ | |||
| 31 | ;; I'm not sure we need that degree of rococoness and defaults like a | 31 | ;; I'm not sure we need that degree of rococoness and defaults like a |
| 32 | ;; yellow background. Also, using PBM means we can display the images | 32 | ;; yellow background. Also, using PBM means we can display the images |
| 33 | ;; more generally. -- fx | 33 | ;; more generally. -- fx |
| 34 | 34 | ;; `smiley.el' was replaced by `smiley-ems.el' on 2002-01-26 (after fx' | |
| 35 | ;;; Test smileys: :-) :-\ :-( :-/ | 35 | ;; comment). |
| 36 | |||
| 37 | ;; Test smileys: | ||
| 38 | ;; smile ^:-) ^:) | ||
| 39 | ;; blink ;-) ;) | ||
| 40 | ;; forced :-] | ||
| 41 | ;; braindamaged 8-) | ||
| 42 | ;; indifferent :-| | ||
| 43 | ;; wry :-/ :-\ | ||
| 44 | ;; sad :-( | ||
| 45 | ;; evil >:-) | ||
| 46 | ;; cry ;-( | ||
| 47 | ;; dead X-) | ||
| 48 | ;; grin :-D | ||
| 36 | 49 | ||
| 37 | ;;; Code: | 50 | ;;; Code: |
| 38 | 51 | ||
| @@ -45,8 +58,9 @@ | |||
| 45 | :group 'gnus-visual) | 58 | :group 'gnus-visual) |
| 46 | 59 | ||
| 47 | ;; Maybe this should go. | 60 | ;; Maybe this should go. |
| 48 | (defcustom smiley-data-directory (nnheader-find-etc-directory "images/smilies") | 61 | (defcustom smiley-data-directory |
| 49 | "*Location of the smiley faces files." | 62 | (nnheader-find-etc-directory "images/smilies") |
| 63 | "Location of the smiley faces files." | ||
| 50 | :type 'directory | 64 | :type 'directory |
| 51 | :group 'smiley) | 65 | :group 'smiley) |
| 52 | 66 | ||
| @@ -61,8 +75,8 @@ | |||
| 61 | ("\\(:-(\\)\\W" 1 "sad") | 75 | ("\\(:-(\\)\\W" 1 "sad") |
| 62 | ("\\(:-{\\)\\W" 1 "frown")) | 76 | ("\\(:-{\\)\\W" 1 "frown")) |
| 63 | "*A list of regexps to map smilies to images. | 77 | "*A list of regexps to map smilies to images. |
| 64 | The elements are (REGEXP MATCH FILE), where MATCH is the submatch in | 78 | The elements are (REGEXP MATCH IMAGE), where MATCH is the submatch in |
| 65 | regexp to replace with IMAGE. IMAGE is the name of a PBM file in | 79 | regexp to replace with IMAGE. IMAGE is the name of an image file in |
| 66 | `smiley-data-directory'." | 80 | `smiley-data-directory'." |
| 67 | :type '(repeat (list regexp | 81 | :type '(repeat (list regexp |
| 68 | (integer :tag "Regexp match number") | 82 | (integer :tag "Regexp match number") |
| @@ -78,7 +92,7 @@ regexp to replace with IMAGE. IMAGE is the name of a PBM file in | |||
| 78 | (when (gnus-image-type-available-p 'xpm) | 92 | (when (gnus-image-type-available-p 'xpm) |
| 79 | (push "xpm" types)) | 93 | (push "xpm" types)) |
| 80 | types) | 94 | types) |
| 81 | "*List of suffixes on picon file names to try." | 95 | "*List of suffixes on smiley file names to try." |
| 82 | :version "22.1" | 96 | :version "22.1" |
| 83 | :type '(repeat string) | 97 | :type '(repeat string) |
| 84 | :group 'smiley) | 98 | :group 'smiley) |
| @@ -86,6 +100,7 @@ regexp to replace with IMAGE. IMAGE is the name of a PBM file in | |||
| 86 | (defvar smiley-cached-regexp-alist nil) | 100 | (defvar smiley-cached-regexp-alist nil) |
| 87 | 101 | ||
| 88 | (defun smiley-update-cache () | 102 | (defun smiley-update-cache () |
| 103 | (setq smiley-cached-regexp-alist nil) | ||
| 89 | (dolist (elt (if (symbolp smiley-regexp-alist) | 104 | (dolist (elt (if (symbolp smiley-regexp-alist) |
| 90 | (symbol-value smiley-regexp-alist) | 105 | (symbol-value smiley-regexp-alist) |
| 91 | smiley-regexp-alist)) | 106 | smiley-regexp-alist)) |
| @@ -104,12 +119,13 @@ regexp to replace with IMAGE. IMAGE is the name of a PBM file in | |||
| 104 | (push (list (car elt) (cadr elt) image) | 119 | (push (list (car elt) (cadr elt) image) |
| 105 | smiley-cached-regexp-alist))))))) | 120 | smiley-cached-regexp-alist))))))) |
| 106 | 121 | ||
| 107 | (defvar smiley-mouse-map | 122 | ;; Not implemented: |
| 108 | (let ((map (make-sparse-keymap))) | 123 | ;; (defvar smiley-mouse-map |
| 109 | (define-key map [down-mouse-2] 'ignore) ; override widget | 124 | ;; (let ((map (make-sparse-keymap))) |
| 110 | (define-key map [mouse-2] | 125 | ;; (define-key map [down-mouse-2] 'ignore) ; override widget |
| 111 | 'smiley-mouse-toggle-buffer) | 126 | ;; (define-key map [mouse-2] |
| 112 | map)) | 127 | ;; 'smiley-mouse-toggle-buffer) |
| 128 | ;; map)) | ||
| 113 | 129 | ||
| 114 | ;;;###autoload | 130 | ;;;###autoload |
| 115 | (defun smiley-region (start end) | 131 | (defun smiley-region (start end) |
diff --git a/lisp/image.el b/lisp/image.el index 316896cabce..4acff8d251b 100644 --- a/lisp/image.el +++ b/lisp/image.el | |||
| @@ -77,6 +77,80 @@ value is used as a list of directories to search.") | |||
| 77 | (list (file-name-as-directory (expand-file-name "images" data-directory)) | 77 | (list (file-name-as-directory (expand-file-name "images" data-directory)) |
| 78 | 'data-directory 'load-path))) | 78 | 'data-directory 'load-path))) |
| 79 | 79 | ||
| 80 | (defun image-load-path-for-library (library image &optional path) | ||
| 81 | "Return a suitable search path for images relative to LIBRARY. | ||
| 82 | |||
| 83 | Images for LIBRARY are searched for in \"../../etc/images\" and | ||
| 84 | \"../etc/images\" relative to the files in \"lisp/LIBRARY\" as | ||
| 85 | well as in `image-load-path' and `load-path'. | ||
| 86 | |||
| 87 | This function returns the value of `load-path' augmented with the | ||
| 88 | path to IMAGE. If PATH is given, it is used instead of | ||
| 89 | `load-path'. | ||
| 90 | |||
| 91 | Here is an example that uses a common idiom to provide | ||
| 92 | compatibility with versions of Emacs that lack the variable | ||
| 93 | `image-load-path': | ||
| 94 | |||
| 95 | (let ((load-path | ||
| 96 | (image-load-path-for-library \"mh-e\" \"mh-logo.xpm\")) | ||
| 97 | (image-load-path | ||
| 98 | (image-load-path-for-library \"mh-e\" \"mh-logo.xpm\" 'image-load-path))) | ||
| 99 | (mh-tool-bar-folder-buttons-init))" | ||
| 100 | (unless library (error "No library specified")) | ||
| 101 | (unless image (error "No image specified")) | ||
| 102 | (let ((image-directory)) | ||
| 103 | (cond | ||
| 104 | ;; Try relative setting. | ||
| 105 | ((let (library-name d1ei d2ei) | ||
| 106 | ;; First, find library in the load-path. | ||
| 107 | (setq library-name (locate-library library)) | ||
| 108 | (if (not library-name) | ||
| 109 | (error "Cannot find library %s in load-path" library)) | ||
| 110 | ;; And then set image-directory relative to that. | ||
| 111 | (setq | ||
| 112 | ;; Go down 2 levels. | ||
| 113 | d2ei (expand-file-name | ||
| 114 | (concat (file-name-directory library-name) "../../etc/images")) | ||
| 115 | ;; Go down 1 level. | ||
| 116 | d1ei (expand-file-name | ||
| 117 | (concat (file-name-directory library-name) "../etc/images"))) | ||
| 118 | (setq image-directory | ||
| 119 | ;; Set it to nil if image is not found. | ||
| 120 | (cond ((file-exists-p (expand-file-name image d2ei)) d2ei) | ||
| 121 | ((file-exists-p (expand-file-name image d1ei)) d1ei))))) | ||
| 122 | ;; Check for images in image-load-path or load-path. | ||
| 123 | ((let ((img image) | ||
| 124 | (dir (or | ||
| 125 | ;; Images in image-load-path. | ||
| 126 | (image-search-load-path image) | ||
| 127 | ;; Images in load-path. | ||
| 128 | (locate-library image))) | ||
| 129 | parent) | ||
| 130 | ;; Since the image might be in a nested directory (for | ||
| 131 | ;; example, mail/attach.pbm), adjust `image-directory' | ||
| 132 | ;; accordingly. | ||
| 133 | (and dir | ||
| 134 | (setq dir (file-name-directory dir)) | ||
| 135 | (progn | ||
| 136 | (while (setq parent (file-name-directory img)) | ||
| 137 | (setq img (directory-file-name parent) | ||
| 138 | dir (expand-file-name "../" dir))) | ||
| 139 | (setq image-directory dir))))) | ||
| 140 | (t | ||
| 141 | (error "Could not find image %s for library %s" image library))) | ||
| 142 | |||
| 143 | ;; Return augmented `image-load-path' or `load-path'. | ||
| 144 | (cond ((and path (symbolp path)) | ||
| 145 | (nconc (list image-directory) | ||
| 146 | (delete image-directory | ||
| 147 | (if (boundp path) | ||
| 148 | (copy-sequence (symbol-value path)) | ||
| 149 | nil)))) | ||
| 150 | (t | ||
| 151 | (nconc (list image-directory) | ||
| 152 | (delete image-directory (copy-sequence load-path))))))) | ||
| 153 | |||
| 80 | (defun image-jpeg-p (data) | 154 | (defun image-jpeg-p (data) |
| 81 | "Value is non-nil if DATA, a string, consists of JFIF image data. | 155 | "Value is non-nil if DATA, a string, consists of JFIF image data. |
| 82 | We accept the tag Exif because that is the same format." | 156 | We accept the tag Exif because that is the same format." |
diff --git a/lisp/mh-e/ChangeLog b/lisp/mh-e/ChangeLog index 0a097cb2f02..35a1b1495f1 100644 --- a/lisp/mh-e/ChangeLog +++ b/lisp/mh-e/ChangeLog | |||
| @@ -1,3 +1,8 @@ | |||
| 1 | 2006-03-10 Bill Wohler <wohler@newt.com> | ||
| 2 | |||
| 3 | * mh-e.el (mh-profile-component): Drop `s' from mhparam | ||
| 4 | -components for Mailutils compatibility (closes SF #1446985). | ||
| 5 | |||
| 1 | 2006-03-06 Bill Wohler <wohler@newt.com> | 6 | 2006-03-06 Bill Wohler <wohler@newt.com> |
| 2 | 7 | ||
| 3 | * mh-e.el (Version, mh-version): Add +cvs to version. | 8 | * mh-e.el (Version, mh-version): Add +cvs to version. |
diff --git a/lisp/mh-e/mh-e.el b/lisp/mh-e/mh-e.el index 64b625f3ab6..0b8961470a7 100644 --- a/lisp/mh-e/mh-e.el +++ b/lisp/mh-e/mh-e.el | |||
| @@ -808,7 +808,9 @@ Currently known variants are 'MH, 'nmh, and 'mu-mh." | |||
| 808 | (defun mh-profile-component (component) | 808 | (defun mh-profile-component (component) |
| 809 | "Return COMPONENT value from mhparam, or nil if unset." | 809 | "Return COMPONENT value from mhparam, or nil if unset." |
| 810 | (save-excursion | 810 | (save-excursion |
| 811 | (mh-exec-cmd-quiet nil "mhparam" "-components" component) | 811 | ;; MH and nmh use -components, Mailutils uses -component. Since MH |
| 812 | ;; and nmh work with an unambiguous prefix, the `s' is dropped here. | ||
| 813 | (mh-exec-cmd-quiet nil "mhparam" "-component" component) | ||
| 812 | (mh-profile-component-value component))) | 814 | (mh-profile-component-value component))) |
| 813 | 815 | ||
| 814 | (defun mh-profile-component-value (component) | 816 | (defun mh-profile-component-value (component) |
diff --git a/lisp/progmodes/gdb-ui.el b/lisp/progmodes/gdb-ui.el index 4340892a9cc..e3e2e2f23c1 100644 --- a/lisp/progmodes/gdb-ui.el +++ b/lisp/progmodes/gdb-ui.el | |||
| @@ -257,8 +257,7 @@ detailed description of this mode. | |||
| 257 | (interactive (list (gud-query-cmdline 'gdba))) | 257 | (interactive (list (gud-query-cmdline 'gdba))) |
| 258 | ;; | 258 | ;; |
| 259 | ;; Let's start with a basic gud-gdb buffer and then modify it a bit. | 259 | ;; Let's start with a basic gud-gdb buffer and then modify it a bit. |
| 260 | (gdb command-line) | 260 | (gdb command-line)) |
| 261 | (gdb-init-1)) | ||
| 262 | 261 | ||
| 263 | (defcustom gdb-debug-ring-max 128 | 262 | (defcustom gdb-debug-ring-max 128 |
| 264 | "Maximum size of `gdb-debug-ring'." | 263 | "Maximum size of `gdb-debug-ring'." |
| @@ -322,7 +321,7 @@ With arg, use separate IO iff arg is positive." | |||
| 322 | (buffer-name gud-comint-buffer)) | 321 | (buffer-name gud-comint-buffer)) |
| 323 | (condition-case nil | 322 | (condition-case nil |
| 324 | (if gdb-use-separate-io-buffer | 323 | (if gdb-use-separate-io-buffer |
| 325 | (gdb-restore-windows) | 324 | (if gdb-many-windows (gdb-restore-windows)) |
| 326 | (kill-buffer (gdb-inferior-io-name))) | 325 | (kill-buffer (gdb-inferior-io-name))) |
| 327 | (error nil)))) | 326 | (error nil)))) |
| 328 | 327 | ||
| @@ -1037,11 +1036,12 @@ This filter may simply queue input for a later time." | |||
| 1037 | ;; is a query, or other non-top-level prompt. | 1036 | ;; is a query, or other non-top-level prompt. |
| 1038 | 1037 | ||
| 1039 | (defun gdb-enqueue-input (item) | 1038 | (defun gdb-enqueue-input (item) |
| 1040 | (if gdb-prompting | 1039 | (if (not gud-running) |
| 1041 | (progn | 1040 | (if gdb-prompting |
| 1042 | (gdb-send-item item) | 1041 | (progn |
| 1042 | (gdb-send-item item) | ||
| 1043 | (setq gdb-prompting nil)) | 1043 | (setq gdb-prompting nil)) |
| 1044 | (push item gdb-input-queue))) | 1044 | (push item gdb-input-queue)))) |
| 1045 | 1045 | ||
| 1046 | (defun gdb-dequeue-input () | 1046 | (defun gdb-dequeue-input () |
| 1047 | (let ((queue gdb-input-queue)) | 1047 | (let ((queue gdb-input-queue)) |
| @@ -1192,6 +1192,7 @@ not GDB." | |||
| 1192 | ((eq sink 'user) | 1192 | ((eq sink 'user) |
| 1193 | (progn | 1193 | (progn |
| 1194 | (setq gud-running t) | 1194 | (setq gud-running t) |
| 1195 | (gdb-remove-text-properties) | ||
| 1195 | (if gdb-use-separate-io-buffer | 1196 | (if gdb-use-separate-io-buffer |
| 1196 | (setq gdb-output-sink 'inferior)))) | 1197 | (setq gdb-output-sink 'inferior)))) |
| 1197 | (t | 1198 | (t |
| @@ -1299,6 +1300,18 @@ happens to be appropriate." | |||
| 1299 | (gdb-resync) | 1300 | (gdb-resync) |
| 1300 | (error "Phase error in gdb-post-prompt (got %s)" sink))))) | 1301 | (error "Phase error in gdb-post-prompt (got %s)" sink))))) |
| 1301 | 1302 | ||
| 1303 | (defconst gdb-buffer-list | ||
| 1304 | '(gdb-stack-buffer gdb-locals-buffer gdb-registers-buffer gdb-threads-buffer)) | ||
| 1305 | |||
| 1306 | (defun gdb-remove-text-properties () | ||
| 1307 | (dolist (buffertype gdb-buffer-list) | ||
| 1308 | (let ((buffer (gdb-get-buffer buffertype))) | ||
| 1309 | (if buffer | ||
| 1310 | (with-current-buffer buffer | ||
| 1311 | (let ((inhibit-read-only t)) | ||
| 1312 | (remove-text-properties | ||
| 1313 | (point-min) (point-max) '(mouse-face nil help-echo nil)))))))) | ||
| 1314 | |||
| 1302 | ;; GUD displays the selected GDB frame. This might might not be the current | 1315 | ;; GUD displays the selected GDB frame. This might might not be the current |
| 1303 | ;; GDB frame (after up, down etc). If no GDB frame is visible but the last | 1316 | ;; GDB frame (after up, down etc). If no GDB frame is visible but the last |
| 1304 | ;; visited breakpoint is, use that window. | 1317 | ;; visited breakpoint is, use that window. |