# HG changeset patch # User cvs # Date 1186989963 -7200 # Node ID d2f30a177268a2b45d84e67681e38eac0f5be576 # Parent 419db647c99879231c114357d1a08a891d9f8f96 Import from CVS: tag r20-1b14 diff -r 419db647c998 -r d2f30a177268 CHANGES-beta --- a/CHANGES-beta Mon Aug 13 09:25:31 2007 +0200 +++ b/CHANGES-beta Mon Aug 13 09:26:03 2007 +0200 @@ -1,4 +1,13 @@ -*- indented-text -*- +to 20.1 beta14 +-- about.el hacking +-- W3-3.0.81 +-- autodetect restored for use with Glyphs +-- Gnus-5.4.43 +-- miscellaneous bug fixes + +[beta13 was skipped] + to 20.1 beta12 -- Synch to Emacs/MULE patches courtesy of MORIOKA Tomohiko -- VM-6.24 diff -r 419db647c998 -r d2f30a177268 ChangeLog --- a/ChangeLog Mon Aug 13 09:25:31 2007 +0200 +++ b/ChangeLog Mon Aug 13 09:26:03 2007 +0200 @@ -1,3 +1,7 @@ +Thu Apr 10 19:07:26 1997 Steven L Baur + + * XEmacs 20.1-b14 is released. (Beta 13 was skipped). + Wed Apr 9 22:52:06 1997 Steven L Baur * XEmacs 20.1-b12 is released. diff -r 419db647c998 -r d2f30a177268 lib-src/movemail.c --- a/lib-src/movemail.c Mon Aug 13 09:25:31 2007 +0200 +++ b/lib-src/movemail.c Mon Aug 13 09:26:03 2007 +0200 @@ -62,6 +62,8 @@ #include #include #include <../src/syswait.h> +#include +#include #ifdef MAIL_USE_POP #include "pop.h" #endif diff -r 419db647c998 -r d2f30a177268 lisp/ChangeLog --- a/lisp/ChangeLog Mon Aug 13 09:25:31 2007 +0200 +++ b/lisp/ChangeLog Mon Aug 13 09:26:03 2007 +0200 @@ -1,6 +1,16 @@ +Thu Apr 10 13:23:14 1997 Steven L Baur + + * prim/about.el (about-xemacs-xref): Forgot to link David Moore's + picture (oops). + +Thu Apr 10 12:30:29 1997 Per Abrahamsen + + * efs/dired-faces.el (dired): Move to environment group. + Wed Apr 9 19:45:46 1997 Per Abrahamsen - * x-menubar.el (default-menubar): Inline definition of customize menu. + * x11/x-menubar.el (default-menubar): Inline definition of + customize menu. Wed Apr 9 10:45:54 1997 Steven L Baur diff -r 419db647c998 -r d2f30a177268 lisp/efs/dired-faces.el --- a/lisp/efs/dired-faces.el Mon Aug 13 09:25:31 2007 +0200 +++ b/lisp/efs/dired-faces.el Mon Aug 13 09:26:03 2007 +0200 @@ -16,7 +16,7 @@ (defgroup dired nil "Directory editing." - :group 'emacs) + :group 'environment) (defcustom dired-do-highlighting t "Set if we should use highlighting according to filetype." diff -r 419db647c998 -r d2f30a177268 lisp/gnus/ChangeLog --- a/lisp/gnus/ChangeLog Mon Aug 13 09:25:31 2007 +0200 +++ b/lisp/gnus/ChangeLog Mon Aug 13 09:26:03 2007 +0200 @@ -1,3 +1,72 @@ +Thu Apr 10 22:07:46 1997 Lars Magne Ingebrigtsen + + * gnus.el: Gnus v5.4.43 is released. + +Thu Apr 10 21:47:08 1997 Lars Magne Ingebrigtsen + + * gnus-start.el (gnus-save-newsrc-file): Message less. + +Thu Apr 10 21:35:45 1997 ISO-2022-JP + + * gnus-sum.el (gnus-summary-show-article): Bind gnus-show-mime. + +Thu Apr 10 21:26:19 1997 Lars Magne Ingebrigtsen + + * gnus.el: Removed gnus-add-hook. + +Thu Apr 3 21:08:57 1997 Hrvoje Niksic + + * gnus-xmas.el (gnus-xmas-summary-set-display-table): Don't change + the values that are non-nil in the default table. + (gnus-xmas-add-hook): Removed it. + +Thu Apr 10 20:44:46 1997 Lars Magne Ingebrigtsen + + * gnus-art.el (gnus-article-show-summary): Error better. + + * message.el (message-indent-citation): Tippy-foot when deleting + leading empty lines. + + * gnus-sum.el (gnus-summary-move-article): Update group lines. + + * gnus-srvr.el (gnus-server-exit): Configure windows. + + * gnus-group.el: Added gnus-version to help map. + +Thu Apr 10 20:41:11 1997 Hrvoje Niksic + + * gnus-xmas.el: Customized. + +Thu Apr 10 19:58:40 1997 Lars Magne Ingebrigtsen + + * gnus-sum.el (gnus-summary-next-group): Selected deleted group. + + * gnus-art.el (article-treat-overstrike): Don't bug out on empty + articles. + +Thu Apr 10 19:52:27 1997 David Moore + + * nnvirtual.el (nnvirtual-partition-sequence): Style fix. + +Thu Apr 10 19:45:30 1997 Lars Magne Ingebrigtsen + + * gnus-group.el (gnus-group-kill-group): Kill more carefully. + +Tue Apr 8 23:02:30 1997 Michael Welsh Duggan + + * message.el (message-insert-to): Fetch reply field. + +Tue Apr 8 21:41:13 1997 Lars Magne Ingebrigtsen + + * gnus-sum.el (gnus-summary-refer-article): Accept prefix. + +Sun Apr 6 14:08:03 1997 Steven L Baur + + * gnus-xmas.el (gnus-xmas-summary-set-display-table): Add + missing paren. + (gnus-xmas-summary-set-display-table): current-display-table can + be nil. + Sun Apr 6 23:17:21 1997 Lars Magne Ingebrigtsen * gnus.el: Gnus v5.4.42 is released. @@ -19,11 +88,6 @@ * gnus.el: Gnus v5.4.41 is released. -Thu Apr 3 21:08:57 1997 Hrvoje Niksic - - * gnus-xmas.el (gnus-xmas-summary-set-display-table): Don't change - the values that are non-nil in the default table. - Sun Apr 6 20:58:38 1997 Kim-Minh Kaplan * gnus-picon.el (gnus-picons-insert-face-if-exists): "." instead diff -r 419db647c998 -r d2f30a177268 lisp/gnus/gnus-art.el --- a/lisp/gnus/gnus-art.el Mon Aug 13 09:25:31 2007 +0200 +++ b/lisp/gnus/gnus-art.el Mon Aug 13 09:26:03 2007 +0200 @@ -744,26 +744,27 @@ (interactive) (save-excursion (goto-char (point-min)) - (re-search-forward "\n\n") - (let ((buffer-read-only nil)) - (while (search-forward "\b" nil t) - (let ((next (following-char)) - (previous (char-after (- (point) 2)))) - ;; We do the boldification/underlining by hiding the - ;; overstrikes and putting the proper text property - ;; on the letters. - (cond - ((eq next previous) - (gnus-article-hide-text-type (- (point) 2) (point) 'overstrike) - (put-text-property (point) (1+ (point)) 'face 'bold)) - ((eq next ?_) - (gnus-article-hide-text-type (1- (point)) (1+ (point)) 'overstrike) - (put-text-property - (- (point) 2) (1- (point)) 'face 'underline)) - ((eq previous ?_) - (gnus-article-hide-text-type (- (point) 2) (point) 'overstrike) - (put-text-property - (point) (1+ (point)) 'face 'underline)))))))) + (when (search-forward "\n\n" nil t) + (let ((buffer-read-only nil)) + (while (search-forward "\b" nil t) + (let ((next (following-char)) + (previous (char-after (- (point) 2)))) + ;; We do the boldification/underlining by hiding the + ;; overstrikes and putting the proper text property + ;; on the letters. + (cond + ((eq next previous) + (gnus-article-hide-text-type (- (point) 2) (point) 'overstrike) + (put-text-property (point) (1+ (point)) 'face 'bold)) + ((eq next ?_) + (gnus-article-hide-text-type + (1- (point)) (1+ (point)) 'overstrike) + (put-text-property + (- (point) 2) (1- (point)) 'face 'underline)) + ((eq previous ?_) + (gnus-article-hide-text-type (- (point) 2) (point) 'overstrike) + (put-text-property + (point) (1+ (point)) 'face 'underline))))))))) (defun article-fill () "Format too long lines." @@ -2142,8 +2143,10 @@ (defun gnus-article-show-summary () "Reconfigure windows to show summary buffer." (interactive) - (gnus-configure-windows 'article) - (gnus-summary-goto-subject gnus-current-article)) + (if (not (gnus-buffer-live-p gnus-summary-buffer)) + (error "There is no summary buffer for this article buffer") + (gnus-configure-windows 'article) + (gnus-summary-goto-subject gnus-current-article))) (defun gnus-article-describe-briefly () "Describe article mode commands briefly." diff -r 419db647c998 -r d2f30a177268 lisp/gnus/gnus-gl.el --- a/lisp/gnus/gnus-gl.el Mon Aug 13 09:25:31 2007 +0200 +++ b/lisp/gnus/gnus-gl.el Mon Aug 13 09:26:03 2007 +0200 @@ -811,9 +811,9 @@ (> (prefix-numeric-value arg) 0))) (when gnus-grouplens-mode (make-local-hook 'gnus-select-article-hook) - (gnus-add-hook 'gnus-select-article-hook 'grouplens-do-time nil 'local) + (add-hook 'gnus-select-article-hook 'grouplens-do-time nil 'local) (make-local-hook 'gnus-exit-group-hook) - (gnus-add-hook 'gnus-exit-group-hook 'bbb-exit-group nil 'local) + (add-hook 'gnus-exit-group-hook 'bbb-exit-group nil 'local) (make-local-variable 'gnus-score-find-score-files-function) (cond diff -r 419db647c998 -r d2f30a177268 lisp/gnus/gnus-group.el --- a/lisp/gnus/gnus-group.el Mon Aug 13 09:25:31 2007 +0200 +++ b/lisp/gnus/gnus-group.el Mon Aug 13 09:26:03 2007 +0200 @@ -549,7 +549,8 @@ (gnus-define-keys (gnus-group-help-map "H" gnus-group-mode-map) "d" gnus-group-describe-group - "f" gnus-group-fetch-faq) + "f" gnus-group-fetch-faq + "v" gnus-version) (gnus-define-keys (gnus-group-sub-map "S" gnus-group-mode-map) "l" gnus-group-set-current-level @@ -763,7 +764,7 @@ (gnus-update-format-specifications nil 'group 'group-mode) (gnus-update-group-mark-positions) (make-local-hook 'post-command-hook) - (gnus-add-hook 'post-command-hook 'gnus-clear-inboxes-moved nil t) + (add-hook 'post-command-hook 'gnus-clear-inboxes-moved nil t) (when gnus-use-undo (gnus-undo-mode 1)) (run-hooks 'gnus-group-mode-hook)) diff -r 419db647c998 -r d2f30a177268 lisp/gnus/gnus-msg.el --- a/lisp/gnus/gnus-msg.el Mon Aug 13 09:25:31 2007 +0200 +++ b/lisp/gnus/gnus-msg.el Mon Aug 13 09:26:03 2007 +0200 @@ -180,7 +180,7 @@ (defun gnus-inews-add-send-actions (winconf buffer article) (make-local-hook 'message-sent-hook) - (gnus-add-hook 'message-sent-hook 'gnus-inews-do-gcc nil t) + (add-hook 'message-sent-hook 'gnus-inews-do-gcc nil t) (setq message-post-method `(lambda (arg) (gnus-post-method arg ,gnus-newsgroup-name))) diff -r 419db647c998 -r d2f30a177268 lisp/gnus/gnus-srvr.el --- a/lisp/gnus/gnus-srvr.el Mon Aug 13 09:25:31 2007 +0200 +++ b/lisp/gnus/gnus-srvr.el Mon Aug 13 09:26:03 2007 +0200 @@ -314,9 +314,9 @@ (defun gnus-server-exit () "Return to the group buffer." (interactive) + (run-hooks 'gnus-server-exit-hook) (kill-buffer (current-buffer)) - (switch-to-buffer gnus-group-buffer) - (run-hooks 'gnus-server-exit-hook)) + (gnus-configure-windows 'group t)) (defun gnus-server-list-servers () "List all available servers." diff -r 419db647c998 -r d2f30a177268 lisp/gnus/gnus-start.el --- a/lisp/gnus/gnus-start.el Mon Aug 13 09:25:31 2007 +0200 +++ b/lisp/gnus/gnus-start.el Mon Aug 13 09:26:03 2007 +0200 @@ -2174,9 +2174,9 @@ (gnus-slave-save-newsrc) ;; Save .newsrc. (when gnus-save-newsrc-file - (gnus-message 5 "Saving %s..." gnus-current-startup-file) + (gnus-message 8 "Saving %s..." gnus-current-startup-file) (gnus-gnus-to-newsrc-format) - (gnus-message 5 "Saving %s...done" gnus-current-startup-file)) + (gnus-message 8 "Saving %s...done" gnus-current-startup-file)) ;; Save .newsrc.eld. (set-buffer (get-buffer-create " *Gnus-newsrc*")) (make-local-variable 'version-control) diff -r 419db647c998 -r d2f30a177268 lisp/gnus/gnus-sum.el --- a/lisp/gnus/gnus-sum.el Mon Aug 13 09:25:31 2007 +0200 +++ b/lisp/gnus/gnus-sum.el Mon Aug 13 09:26:03 2007 +0200 @@ -1855,7 +1855,7 @@ (make-local-variable 'gnus-summary-line-format-spec) (make-local-variable 'gnus-summary-mark-positions) (make-local-hook 'post-command-hook) - (gnus-add-hook 'post-command-hook 'gnus-clear-inboxes-moved nil t) + (add-hook 'post-command-hook 'gnus-clear-inboxes-moved nil t) (run-hooks 'gnus-summary-mode-hook) (gnus-update-format-specifications nil 'summary 'summary-mode 'summary-dummy) (gnus-update-summary-mark-positions)) @@ -5128,7 +5128,7 @@ (progn (gnus-message 5 "Returning to the group buffer") (setq entered t) - (when (buffer-live-p current-buffer) + (when (gnus-buffer-live-p current-buffer) (set-buffer current-buffer) (gnus-summary-exit)) (run-hooks 'gnus-group-no-more-groups-hook)) @@ -6133,9 +6133,11 @@ (gnus-summary-position-point) n))) -(defun gnus-summary-refer-article (message-id) - "Fetch an article specified by MESSAGE-ID." - (interactive "sMessage-ID: ") +(defun gnus-summary-refer-article (message-id &optional arg) + "Fetch an article specified by MESSAGE-ID. +If ARG (the prefix), fetch the article using `gnus-refer-article-method' +or `gnus-select-method', no matter what backend the article comes from." + (interactive "sMessage-ID: \nP") (when (and (stringp message-id) (not (zerop (length message-id)))) ;; Construct the correct Message-ID if necessary. @@ -6157,8 +6159,11 @@ (gnus-summary-update-article (mail-header-number header)))) ;; We fetch the article (let ((gnus-override-method - (and (gnus-news-group-p gnus-newsgroup-name) - gnus-refer-article-method)) + (cond ((gnus-news-group-p gnus-newsgroup-name) + gnus-refer-article-method) + (arg + (or gnus-refer-article-method gnus-select-method)) + (t nil))) number) ;; Start the special refer-article method, if necessary. (when (and gnus-refer-article-method @@ -6480,6 +6485,7 @@ gnus-article-display-hook gnus-article-prepare-hook gnus-break-pages + gnus-show-mime gnus-visual) (gnus-summary-select-article nil 'force))) (gnus-summary-goto-subject gnus-current-article) @@ -6777,7 +6783,11 @@ (gnus-summary-remove-process-mark article)) ;; Re-activate all groups that have been moved to. (while to-groups - (gnus-activate-group (pop to-groups))) + (save-excursion + (set-buffer gnus-group-buffer) + (when (gnus-group-goto-group (car to-groups) t) + (gnus-group-get-new-news-this-group 1)) + (pop to-groups))) (gnus-kill-buffer copy-buf) (gnus-summary-position-point) diff -r 419db647c998 -r d2f30a177268 lisp/gnus/gnus-undo.el --- a/lisp/gnus/gnus-undo.el Mon Aug 13 09:25:31 2007 +0200 +++ b/lisp/gnus/gnus-undo.el Mon Aug 13 09:26:03 2007 +0200 @@ -102,7 +102,7 @@ (push (cons 'gnus-undo-mode gnus-undo-mode-map) minor-mode-map-alist)) (make-local-hook 'post-command-hook) - (gnus-add-hook 'post-command-hook 'gnus-undo-boundary nil t) + (add-hook 'post-command-hook 'gnus-undo-boundary nil t) (add-hook 'gnus-summary-exit-hook 'gnus-undo-boundary) (run-hooks 'gnus-undo-mode-hook))) diff -r 419db647c998 -r d2f30a177268 lisp/gnus/gnus-xmas.el --- a/lisp/gnus/gnus-xmas.el Mon Aug 13 09:25:31 2007 +0200 +++ b/lisp/gnus/gnus-xmas.el Mon Aug 13 09:26:03 2007 +0200 @@ -29,10 +29,17 @@ (defvar menu-bar-mode (featurep 'menubar)) (require 'messagexmas) -(defvar gnus-xmas-glyph-directory nil +(defgroup gnus-xmas nil + "XEmacsoid support for Gnus" + :group 'gnus) + +(defcustom gnus-xmas-glyph-directory nil "*Directory where Gnus logos and icons are located. If this variable is nil, Gnus will try to locate the directory -automatically.") +automatically." + :type '(choice (const :tag "autodetect" nil) + directory) + :group 'gnus-xmas) (defvar gnus-xmas-logo-color-alist '((flame "#cc3300" "#ff2200") @@ -49,20 +56,26 @@ (september "#bf9900" "#ffcc00")) "Color alist used for the Gnus logo.") -(defvar gnus-xmas-logo-color-style 'flame - "Color styles used for the Gnus logo.") +(defcustom gnus-xmas-logo-color-style 'flame + "Color styles used for the Gnus logo." + :type '(choice (const flame) (const pine) (const moss) + (const irish) (const sky) (const tin) + (const velvet) (const grape) (const labia) + (const berry) (const neutral) (const september)) + :group 'gnus-xmas) (defvar gnus-xmas-logo-colors (cdr (assq gnus-xmas-logo-color-style gnus-xmas-logo-color-alist)) "Colors used for the Gnus logo.") -(defvar gnus-article-x-face-command +(defcustom gnus-article-x-face-command (if (featurep 'xface) 'gnus-xmas-article-display-xface "{ echo '/* Width=48, Height=48 */'; uncompface; } | icontopbm | xv -quit -") "String or function to be executed to display an X-Face header. If it is a string, the command will be executed in a sub-shell -asynchronously. The compressed face will be piped to this command.") +asynchronously. The compressed face will be piped to this command." + :type '(choice string function)) ;;; Internal variables. @@ -137,9 +150,11 @@ (set-extent-face gnus-newsgroup-selected-overlay gnus-summary-selected-face))) -(defvar gnus-xmas-force-redisplay nil +(defcustom gnus-xmas-force-redisplay nil "If non-nil, force a redisplay before recentering the summary buffer. -This is ugly, but it works around a bug in `window-displayed-height'.") +This is ugly, but it works around a bug in `window-displayed-height'." + :type 'boolean + :group 'gnus-xmas) (defun gnus-xmas-switch-horizontal-scrollbar-off () (when (featurep 'scrollbar) @@ -195,18 +210,15 @@ (aset table ?\n nil) (aset table ?\r nil) ;; We nix out any glyphs over 126 that are not set already. - (let ((i 256)) - (while (>= (setq i (1- i)) 127) - ;; Only modify if the default entry is nil. - (when (or (not default-table) - (not (aref default-table i))) - (aset table i [??])))) + (when default-table + (let ((i 256)) + (while (>= (setq i (1- i)) 127) + ;; Only modify if the default entry is nil. + (unless (aref default-table i) + (aset table i [??]))))) ;; Can't use `set-specifier' because of a bug in 19.14 and earlier (add-spec-to-specifier current-display-table table (current-buffer) nil))) -(defun gnus-xmas-add-hook (hook function &optional append local) - (add-hook hook function)) - (defun gnus-xmas-add-text-properties (start end props &optional object) (add-text-properties start end props object) (put-text-property start end 'start-closed nil object)) @@ -478,7 +490,6 @@ (fset 'gnus-appt-select-lowest-window 'gnus-xmas-appt-select-lowest-window) (fset 'gnus-mail-strip-quoted-names 'gnus-xmas-mail-strip-quoted-names) - (fset 'gnus-add-hook 'gnus-xmas-add-hook) (fset 'gnus-character-to-event 'character-to-event) (fset 'gnus-mode-line-buffer-identification 'gnus-xmas-mode-line-buffer-identification) @@ -596,13 +607,18 @@ ;;; The toolbar. -(defvar gnus-use-toolbar (if (featurep 'toolbar) - 'default-toolbar - nil) +(defcustom gnus-use-toolbar (if (featurep 'toolbar) + 'default-toolbar + nil) "*If nil, do not use a toolbar. If it is non-nil, it must be a toolbar. The five legal values are `default-toolbar', `top-toolbar', `bottom-toolbar', -`right-toolbar', and `left-toolbar'.") +`right-toolbar', and `left-toolbar'." + :type '(choice (const default-toolbar) + (const top-toolbar) (const bottom-toolbar) + (const left-toolbar) (const right-toolbar) + (const :tag "no toolbar" nil)) + :group 'gnus-xmas) (defvar gnus-group-toolbar '([gnus-group-get-new-news gnus-group-get-new-news t "Get new news"] @@ -712,10 +728,9 @@ 'call-process-region (point-min) (point-max) command t '(t nil) nil args)) -(unless (find-face 'gnus-x-face) - (copy-face 'default 'gnus-x-face) - (set-face-foreground 'gnus-x-face "black") - (set-face-background 'gnus-x-face "white")) +(defface gnus-x-face '((t (:foreground "black" :background "white"))) + "Face to show X face" + :group 'gnus-xmas) (defun gnus-xmas-article-display-xface (beg end) "Display any XFace headers in the current article." diff -r 419db647c998 -r d2f30a177268 lisp/gnus/gnus.el --- a/lisp/gnus/gnus.el Mon Aug 13 09:25:31 2007 +0200 +++ b/lisp/gnus/gnus.el Mon Aug 13 09:26:03 2007 +0200 @@ -226,7 +226,7 @@ :link '(custom-manual "(gnus)Exiting Gnus") :group 'gnus) -(defconst gnus-version-number "5.4.42" +(defconst gnus-version-number "5.4.43" "Version number for this version of Gnus.") (defconst gnus-version (format "Gnus v%s" gnus-version-number) @@ -258,7 +258,6 @@ (defalias 'gnus-topic-remove-excess-properties 'ignore) (defalias 'gnus-appt-select-lowest-window 'appt-select-lowest-window) (defalias 'gnus-mail-strip-quoted-names 'mail-strip-quoted-names) - (defalias 'gnus-add-hook 'add-hook) (defalias 'gnus-character-to-event 'identity) (defalias 'gnus-add-text-properties 'add-text-properties) (defalias 'gnus-put-text-property 'put-text-property) diff -r 419db647c998 -r d2f30a177268 lisp/gnus/message.el --- a/lisp/gnus/message.el Mon Aug 13 09:25:31 2007 +0200 +++ b/lisp/gnus/message.el Mon Aug 13 09:26:03 2007 +0200 @@ -1330,7 +1330,7 @@ (defun message-insert-to () "Insert a To header that points to the author of the article being replied to." (interactive) - (let ((co (message-fetch-field "mail-copies-to"))) + (let ((co (message-fetch-reply-field "mail-copies-to"))) (when (and co (equal (downcase co) "never")) (error "The user has requested not to have copies sent via mail"))) @@ -1515,14 +1515,20 @@ (let ((start (point))) ;; Remove unwanted headers. (when message-ignored-cited-headers - (save-restriction - (narrow-to-region - (goto-char start) - (if (search-forward "\n\n" nil t) - (1- (point)) - (point))) - (message-remove-header message-ignored-cited-headers t) - (goto-char (point-max)))) + (let (all-removed) + (save-restriction + (narrow-to-region + (goto-char start) + (if (search-forward "\n\n" nil t) + (1- (point)) + (point))) + (message-remove-header message-ignored-cited-headers t) + (when (= (point-min) (point-max)) + (setq all-removed t)) + (goto-char (point-max))) + (if all-removed + (goto-char start) + (forward-line 1)))) ;; Delete blank lines at the start of the buffer. (while (and (point-min) (eolp) diff -r 419db647c998 -r d2f30a177268 lisp/gnus/nnvirtual.el --- a/lisp/gnus/nnvirtual.el Mon Aug 13 09:25:31 2007 +0200 +++ b/lisp/gnus/nnvirtual.el Mon Aug 13 09:26:03 2007 +0200 @@ -626,7 +626,7 @@ (setq entry (assoc (car article) carticles)) (setcdr entry (cons (cdr article) (cdr entry)))) (setq i (1+ i)))) - (mapc '(lambda (x) (setcdr x (nreverse (cdr x)))) + (mapc (lambda (x) (setcdr x (nreverse (cdr x)))) carticles) carticles)) diff -r 419db647c998 -r d2f30a177268 lisp/prim/about.el --- a/lisp/prim/about.el Mon Aug 13 09:25:31 2007 +0200 +++ b/lisp/prim/about.el Mon Aug 13 09:26:03 2007 +0200 @@ -157,7 +157,7 @@ (toggle-read-only 0) (let ((rest (if who-to-load (list who-to-load) - '(steve mrb cthomp wing stig jwz mly vladimir baw piper bw wmperry kyle larsi jens jareth))) + '(steve mrb cthomp wing stig jwz mly vladimir baw piper bw wmperry kyle larsi jens jareth morioka dmoore))) (got-error nil)) (while rest (let* ((who (car rest)) @@ -303,6 +303,7 @@ ('jens "About Jens Lautenbacher") ('jareth "About Jareth Hein") ('morioka "About MORIOKA Tomohiko") + ('dmoore "About David Moore") ('others "About Everyone") ('features "New XEmacs Features") ('history "XEmacs History") @@ -836,6 +837,22 @@ (Japan Advanced Institute of Science and Technology, Hokuriku). I'm interested in Natural Language, Affordance and writing systems.") + (insert "\n\n\tClick ") + (about-xref "here" prev-page "Return to previous page") + (insert " to go back to the previous page.\n") + ) + + ((eq xref 'dmoore) + (about-face "David Moore" 'bold) + (insert " + + David has contributed greatly to the quest to speed up XEmacs. + He is a student in the Computer Systems Laboratory at UCSD. + When he manages to have free time, he usually spends it on 200 + mile bicycle rides, learning german or showing people the best + mail & news environment he's found in 10 years. (That'd be + XEmacs, Gnus and bbdb, of course.) He can be found at + `druidmuck.egbt.org 4201' at various hours of the day.") (insert "\n\n\tClick ") (about-xref "here" prev-page "Return to previous page") @@ -942,6 +959,16 @@ (Japan Advanced Institute of Science and Technology, Hokuriku). I'm interested in Natural Language, Affordance and writing systems. + ") (about-xref "David Moore" 'dmoore "Find out more about David Moore") (insert " + + David has contributed greatly to the quest to speed up XEmacs. + He is a student in the Computer Systems Laboratory at UCSD. + When he manages to have free time, he usually spends it on 200 + mile bicycle rides, learning german or showing people the best + mail & news environment he's found in 10 years. (That'd be + XEmacs, Gnus and bbdb, of course.) He can be found at + `druidmuck.egbt.org 4201' at various hours of the day. + Darrell Kindred Unofficial maintainer of the xemacs-beta list of extant bugs and contributor of an extraordinary number of important bug @@ -983,15 +1010,6 @@ Author of the code used to connect XEmacs with ToolTalk, and of an early client of the external Emacs widget. - David Moore - David has contributed greatly to the quest to speed up XEmacs. - He is a student in the Computer Systems Laboratory at UCSD. - When he manages to have free time, he usually spends it on 200 - mile bicycle rides, learning german or showing people the best - mail & news environment he's found in 10 years. (That'd be - XEmacs, Gnus and bbdb, of course.) He can be found at - `druidmuck.egbt.org 4201' at various hours of the day. - Hrvoje Niksic Hrvoje is currently a student at the Faculty of Electrical Engineering and Computing in Zagreb, Croatia. He works part- @@ -1010,11 +1028,14 @@ Per Abrahamsen Gary Adams Gennady Agranov + Adrian Aichner Mark Allender Butch Anton Fred Appelman Erik \"The Pope\" Arneson Tor Arntsen + Larry Auton + Oswald P. Backus IV Mike Battaglia Neal Becker Paul Bibilo @@ -1028,19 +1049,23 @@ Rick Campbell Richard Caley Stephen Carney + Lorenzo M. Catucci Philippe Charton Peter Cheng Jin S. Choi Tomasz J. Cholewo Serenella Ciongoli + Glynn Clements Richard Cognot Andy Cohen Andrew J Cosgriff Nick J. Crabtree Christopher Davis Soren Dayton + Chris Dean Michael Diers William G. Dubuque + Steve Dunham Samuel J. Eaton Carl Edman Dave Edmondson @@ -1051,18 +1076,22 @@ David Fletcher Paul Flinders Jered J Floyd + Gary D. Foster Jerry Frain + Holger Franz Benjamin Fried - Barry Friedman + Barry Friedman Lew Gaiter III Itay Gat Tim Geisler Dave Gillespie Christian F. Goetze + Yusuf Goolamabbas Wolfgang Grieskamp James Grinter Ben Gross Dirk Grunwald + Michael Guenther Dipankar Gupta Markus Gutschke Adam Hammer @@ -1070,12 +1099,19 @@ ChangGil Han Derek Harding Michael Harnois + Yoshiaki Kasahara John Haxby + Karl M. Hegbloom Benedikt Heinen Stephan Herrmann Charles Hines + Shane Holder David Hughes + Tatsuya Ichikawa + Kazuyuki IENAGA Andrew Innes + Vladimir Ivanovic + Andreas Jaeger Markku Jarvinen Robin Jeffries Philip Johnson @@ -1089,6 +1125,8 @@ Yasuhiko Kiuchi Greg Klanderman Valdis Kletnieks + Rob Kooper + Peter Skov Knudsen Jens Krinke Mats Larsson Simon Leinen @@ -1097,6 +1135,7 @@ Mats Lidell Matt Liggett Christian Limpach + Markus Linnala Robert Lipe Damon Lipparelli Hamish Macdonald @@ -1109,6 +1148,7 @@ Simon Marshall Dave Mason Jaye Mathisen + Michael McNamara Michael Meissner David M. Meyer Brad Miller @@ -1137,17 +1177,21 @@ Tibor Polgar Frederic Poncin E. Rehmi Post + Martin Pottendorfer Colin Rafferty Paul M Reilly Jack Repenning Daniel Rich Roland Rieke + Art Rijos Russell Ritchie Roland + Anthony Rossini Mike Russell Jan Sandquist Marty Sasaki Mike Scheidler + Daniel Schepler Darrel Schneider Hayden Schultz Cotton Seed @@ -1156,18 +1200,23 @@ Vinnie Shelton John Shen Murata Shuuichirou + Dinesh Somasekhar Jeffrey Sparkes Michael Sperber Manoj Srivastava Francois Staes + Anders Stenman Jason Stewart Rick Tait + Marcus Thiessel James Thompson Raymond L. Toy + Remek Trzaska John Turner Juan E. Villacis Jan Vroonhof Vladimir Vukicevic + David Walter Peter Ware Yoav Weiss Rod Whitby diff -r 419db647c998 -r d2f30a177268 lisp/prim/custom-load.el --- a/lisp/prim/custom-load.el Mon Aug 13 09:25:31 2007 +0200 +++ b/lisp/prim/custom-load.el Mon Aug 13 09:26:03 2007 +0200 @@ -17,7 +17,7 @@ (put 'tcl 'custom-loads '("tcl")) (put 'widgets 'custom-loads '("wid-browse" "wid-edit")) (put 'minibuffer 'custom-loads '("minibuf")) -(put 'environment 'custom-loads '("minibuf" "modeline" "x-toolbar" "cus-edit")) +(put 'environment 'custom-loads '("minibuf" "modeline" "x-toolbar" "cus-edit" "dired-faces")) (put 'gnus-article-buttons 'custom-loads '("gnus-art")) (put 'gnus-extract-archive 'custom-loads '("gnus-uu")) (put 'html 'custom-loads '("psgml-html")) @@ -33,7 +33,7 @@ (put 'boolean 'custom-loads '("bookmark")) (put 'auto-save 'custom-loads '("auto-save")) (put 'gnus-group-foreign 'custom-loads '("gnus-group")) -(put 'gnus-article-washing 'custom-loads '("gnus-art")) +(put 'gnus-article-washing 'custom-loads '("gnus-xmas" "gnus-art")) (put 'ispell 'custom-loads '("ispell")) (put 'mail 'custom-loads '("gnus" "message" "mail-abbrevs" "supercite" "highlight-headers")) (put 'gnus-summary-exit 'custom-loads '("gnus-sum")) @@ -88,7 +88,8 @@ (put 'cc-indent 'custom-loads '("cc-mode")) (put 'compression 'custom-loads '("jka-compr")) (put 'comm 'custom-loads '("ssl")) -(put 'gnus 'custom-loads '("gnus-art" "gnus-async" "gnus-cache" "gnus-demon" "gnus-dup" "gnus-eform" "gnus-uu" "gnus-win" "gnus" "nnmail")) +(put 'gnus 'custom-loads '("gnus-art" "gnus-async" "gnus-cache" "gnus-demon" "gnus-dup" "gnus-eform" "gnus-uu" "gnus-win" "gnus-xmas" "gnus" "nnmail")) +(put 'gnus-xmas 'custom-loads '("gnus-xmas")) (put 'gnus-treading 'custom-loads '("gnus-sum")) (put 'psgml-html 'custom-loads '("psgml-html")) (put 'nnmail 'custom-loads '("nnmail")) @@ -151,7 +152,7 @@ (put 'xmine 'custom-loads '("xmine")) (put 'supercite-frames 'custom-loads '("supercite")) (put 'gnus-article-highlight 'custom-loads '("gnus-art")) -(put 'emacs 'custom-loads '("cus-edit" "dired-faces")) +(put 'emacs 'custom-loads '("cus-edit")) (put 'processes 'custom-loads '("comint-xemacs" "executable" "gnuserv" "ispell" "passwd")) (put 'news 'custom-loads '("gnus" "message" "supercite" "highlight-headers")) (put 'w3-hooks 'custom-loads '("w3-cus")) diff -r 419db647c998 -r d2f30a177268 lisp/prim/glyphs.el --- a/lisp/prim/glyphs.el Mon Aug 13 09:25:31 2007 +0200 +++ b/lisp/prim/glyphs.el Mon Aug 13 09:26:03 2007 +0200 @@ -609,7 +609,7 @@ [jpeg :data nil] 2))) ,@(if (featurep 'png) '(("\.png$" [png :file nil] 2))) ,@(if (featurep 'png) '(("^\211PNG" [png :data nil] 2))) - ("" [automatic-conversion :data nil] 2)))) + ("" [autodetect :data nil] 2)))) ;; #### this should really be formatted-string, not string but we ;; don't have it implemented yet ;; diff -r 419db647c998 -r d2f30a177268 lisp/version.el --- a/lisp/version.el Mon Aug 13 09:25:31 2007 +0200 +++ b/lisp/version.el Mon Aug 13 09:26:03 2007 +0200 @@ -25,7 +25,7 @@ (defconst emacs-version "20.1" "Version numbers of this version of Emacs.") -(setq emacs-version (purecopy (concat emacs-version " XEmacs Lucid (beta12)"))) +(setq emacs-version (purecopy (concat emacs-version " XEmacs Lucid (beta14)"))) (defconst emacs-major-version (progn (or (string-match "^[0-9]+" emacs-version) diff -r 419db647c998 -r d2f30a177268 lisp/w3/ChangeLog --- a/lisp/w3/ChangeLog Mon Aug 13 09:25:31 2007 +0200 +++ b/lisp/w3/ChangeLog Mon Aug 13 09:26:03 2007 +0200 @@ -2,8 +2,40 @@ * Makefile (xemacs-w3): Special target for XEmacs Build. +Wed Apr 9 16:46:52 1997 William M. Perry + +* w3-xemac.el (w3-text-pixel-width): And a XEmacs specific version of it. + +* w3-e19.el (w3-text-pixel-width): New function to return the pixel width + of a piece of text. + +* url.el (url-handle-no-scheme): Use it. + +* url-vars.el (url-handle-no-scheme-hook): New hook that should expand a + partial url like 'gnu' to a full URL, like 'http://www.gnu.org/'. + +* w3-sysdp.el (run-hook-with-args-until-success): Added a stub for + run-hook-with-args-until-success + +Tue Apr 8 12:20:39 1997 William M. Perry + +* w3-auto.el: Added autoloads for all the functions in url-ns for proxy + functions, and url-mail + +* url-ns.el (isPlainHostName): Fixed isPlainHostName + +* w3-parse.el (w3-parse-buffer): now throws up a bad style warning for + images without ALT attributes. + +* mm.el (mm-parse-mailcaps): Reverse the ':|;' separated path for MAILCAPS + so that earlier items take precedence, like standard unix PATH-like + variables do. + (mm-parse-mimetypes): Ditto for MIMETYPES + Mon Apr 7 06:23:11 1997 William M. Perry +* Emacs/W3 3.0.80 released + * w3-parse.el: Some more transitions - don't imply

after some form tags. diff -r 419db647c998 -r d2f30a177268 lisp/w3/FAQ --- a/lisp/w3/FAQ Mon Aug 13 09:25:31 2007 +0200 +++ b/lisp/w3/FAQ Mon Aug 13 09:26:03 2007 +0200 @@ -35,7 +35,7 @@ recognize that key sequence. Then you may have to make your programs do useful things when they get a "backtab", Emacs for example will recognize it automatically but except for the Widget and W3 commands nothing is ever bound -to it. +it it. Step 1 On An XTerm: XTerm obeys standard X Toolkit translations which you can use to specify what character sequence Shift-Tab generates. The following X @@ -60,7 +60,7 @@ xmodmap -e 'keysym Tab = Tab' or adding that command to some global X configuration file (On Debian systems -adding ``keysym Tab = Tab'' to /etc/X11/Xmodmap or ~/.Xmodmap is sufficient) +adding ``Keysym Tab = Tab'' to /etc/X11/Xmodmap or ~/.Xmodmap is sufficient) Step 1 On A Linux Virtual Console: on a Linux virtual console you can configure what character sequences are generated by which keys using the diff -r 419db647c998 -r d2f30a177268 lisp/w3/mm.el --- a/lisp/w3/mm.el Mon Aug 13 09:25:31 2007 +0200 +++ b/lisp/w3/mm.el Mon Aug 13 09:26:03 2007 +0200 @@ -430,11 +430,13 @@ (t (setq path (concat "/etc/mailcap:/usr/etc/mailcap:" "/usr/local/etc/mailcap:" (expand-file-name "~/.mailcap"))))) - (let ((fnames (mm-string-to-tokens path - (if (memq system-type - '(ms-dos ms-windows windows-nt)) - ?; - ?:))) fname) + (let ((fnames (reverse + (mm-string-to-tokens path + (if (memq system-type + '(ms-dos ms-windows windows-nt)) + ? ; + ?:)))) + fname) (while fnames (setq fname (car fnames)) (if (and (file-exists-p fname) (file-readable-p fname)) @@ -975,11 +977,13 @@ "/etc/mime-types:/usr/etc/mime-types:" "/usr/local/etc/mime-types:" "/usr/local/www/conf/mime-types")))) - (let ((fnames (mm-string-to-tokens path - (if (memq system-type - '(ms-dos ms-windows windows-nt)) - ?; - ?:))) fname) + (let ((fnames (reverse + (mm-string-to-tokens path + (if (memq system-type + '(ms-dos ms-windows windows-nt)) + ? ; + ?:)))) + fname) (while fnames (setq fname (car fnames)) (if (and (file-exists-p fname) (file-readable-p fname)) diff -r 419db647c998 -r d2f30a177268 lisp/w3/url-ns.el --- a/lisp/w3/url-ns.el Mon Aug 13 09:25:31 2007 +0200 +++ b/lisp/w3/url-ns.el Mon Aug 13 09:26:03 2007 +0200 @@ -1,7 +1,7 @@ ;;; url-ns.el --- Various netscape-ish functions for proxy definitions ;; Author: wmperry -;; Created: 1997/03/24 20:16:16 -;; Version: 1.1 +;; Created: 1997/04/08 21:18:23 +;; Version: 1.2 ;; Keywords: comm, data, processes, hypermedia ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; @@ -26,7 +26,7 @@ ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; (defun isPlainHostName (host) - (string-match "\\." host)) + (not (string-match "\\." host))) (defun dnsDomainIs (host dom) (setq host (url-gateway-nslookup-host host)) diff -r 419db647c998 -r d2f30a177268 lisp/w3/url-vars.el --- a/lisp/w3/url-vars.el Mon Aug 13 09:25:31 2007 +0200 +++ b/lisp/w3/url-vars.el Mon Aug 13 09:26:03 2007 +0200 @@ -1,7 +1,7 @@ ;;; url-vars.el --- Variables for Uniform Resource Locator tool ;; Author: wmperry -;; Created: 1997/04/07 16:06:35 -;; Version: 1.48 +;; Created: 1997/04/10 21:18:12 +;; Version: 1.50 ;; Keywords: comm, data, processes, hypermedia ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; @@ -26,7 +26,7 @@ ;;; Boston, MA 02111-1307, USA. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -(defconst url-version (let ((x "p3.0.80")) +(defconst url-version (let ((x "p3.0.81")) (if (string-match "State: \\([^ \t\n]+\\)" x) (substring x (match-beginning 1) (match-end 1)) x)) @@ -429,6 +429,13 @@ (modify-syntax-entry ?> ")<" url-mailserver-syntax-table) (modify-syntax-entry ?/ " " url-mailserver-syntax-table) +(defvar url-handle-no-scheme-hook nil + "*Hooks to be run until one can successfully transform an incomplete URL. + +Each hook is called with a single argument URL and should return a tranformed +url with a valid scheme (e.g., \"gnu\" --> \"http://www.gnu.org/\"), or nil +otherwise.") + ;;; Make OS/2 happy - yeeks (defvar tcp-binary-process-input-services nil "*Make OS/2 happy with our CRLF pairs...") diff -r 419db647c998 -r d2f30a177268 lisp/w3/url.el --- a/lisp/w3/url.el Mon Aug 13 09:25:31 2007 +0200 +++ b/lisp/w3/url.el Mon Aug 13 09:26:03 2007 +0200 @@ -1,13 +1,13 @@ ;;; url.el --- Uniform Resource Locator retrieval tool ;; Author: wmperry -;; Created: 1997/04/07 16:01:55 -;; Version: 1.72 +;; Created: 1997/04/09 23:49:33 +;; Version: 1.73 ;; Keywords: comm, data, processes, hypermedia ;;; LCD Archive Entry: ;;; url|William M. Perry|wmperry@cs.indiana.edu| ;;; Functions for retrieving/manipulating URLs| -;;; 1997/04/07 16:01:55|1.72|Location Undetermined +;;; 1997/04/09 23:49:33|1.73|Location Undetermined ;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; @@ -850,6 +850,9 @@ ((string-match "\\(\\.[^\\.]+\\)\\(\\.[^\\.]+\\)" url) ;; Ok, we have at least two dots in the filename, just stick http on it (url-retrieve (concat "http://" url))) + ((setq temp (run-hook-with-args-until-success + 'url-handle-no-scheme-hook url)) + (url-retrieve temp)) (t (url-retrieve (concat "http://www." url ".com")))))) diff -r 419db647c998 -r d2f30a177268 lisp/w3/w3-auto.el --- a/lisp/w3/w3-auto.el Mon Aug 13 09:25:31 2007 +0200 +++ b/lisp/w3/w3-auto.el Mon Aug 13 09:26:03 2007 +0200 @@ -47,6 +47,12 @@ ;; URL stuff (autoload 'url-gateway-nslookup-host "url-gw") +(autoload 'url-mail "url-mail") +(autoload 'isInNet "url-ns") +(autoload 'isResolvable "url-ns") +(autoload 'dnsResolve "url-ns") +(autoload 'dnsDomainIs "url-ns") +(autoload 'isPlainHostName "url-ns") ;; Preferences (autoload 'w3-preferences-edit "w3-prefs" nil t) diff -r 419db647c998 -r d2f30a177268 lisp/w3/w3-display.el --- a/lisp/w3/w3-display.el Mon Aug 13 09:25:31 2007 +0200 +++ b/lisp/w3/w3-display.el Mon Aug 13 09:26:03 2007 +0200 @@ -1,7 +1,7 @@ ;;; w3-display.el --- display engine v99999 ;; Author: wmperry -;; Created: 1997/04/03 16:32:31 -;; Version: 1.171 +;; Created: 1997/04/07 17:01:38 +;; Version: 1.172 ;; Keywords: faces, help, hypermedia ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; @@ -443,6 +443,9 @@ ;; Various macros (eval-when-compile + (defmacro w3-node-visible-p () + (` (not (eq (car break-style) 'none)))) + (defmacro w3-handle-empty-tag () (` (progn @@ -722,9 +725,6 @@ (setq w3-image-widgets-waiting (cons widget w3-image-widgets-waiting))))))) -(defmacro w3-node-visible-p () - (` (not (eq (car break-style) 'none)))) - (defmacro w3-handle-image () (` (let* ((height (w3-get-attribute 'height)) diff -r 419db647c998 -r d2f30a177268 lisp/w3/w3-e19.el --- a/lisp/w3/w3-e19.el Mon Aug 13 09:25:31 2007 +0200 +++ b/lisp/w3/w3-e19.el Mon Aug 13 09:26:03 2007 +0200 @@ -1,7 +1,7 @@ ;;; w3-e19.el --- Emacs 19.xx specific functions for emacs-w3 ;; Author: wmperry -;; Created: 1997/04/01 19:23:18 -;; Version: 1.22 +;; Created: 1997/04/10 00:03:25 +;; Version: 1.23 ;; Keywords: faces, help, mouse, hypermedia ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; @@ -120,6 +120,10 @@ (if back (font-set-face-background face back)) (fillin-text-property (point-min) (point-max) 'face 'face face)))) +(defun w3-text-pixel-width (str &optional face) + "Return the pixel-width of a chunk of text STR with face FACE." + (* (length str) (frame-char-width))) + (defun w3-mouse-handler (e) "Function to message the url under the mouse cursor" (interactive "e") diff -r 419db647c998 -r d2f30a177268 lisp/w3/w3-parse.el --- a/lisp/w3/w3-parse.el Mon Aug 13 09:25:31 2007 +0200 +++ b/lisp/w3/w3-parse.el Mon Aug 13 09:26:03 2007 +0200 @@ -2316,6 +2316,11 @@ (setq tag-attributes (cons (cons attr-name attr-value) tag-attributes))) + (if (and (eq w3-p-d-tag-name 'img) + (not (assq 'alt tag-attributes))) + (w3-debug-html :bad-style + :outer + "IMG element has no ALT attribute")) (cond ((and (eq w3-p-d-tag-name 'base) (setq w3-p-s-baseobject diff -r 419db647c998 -r d2f30a177268 lisp/w3/w3-sysdp.el --- a/lisp/w3/w3-sysdp.el Mon Aug 13 09:25:31 2007 +0200 +++ b/lisp/w3/w3-sysdp.el Mon Aug 13 09:26:03 2007 +0200 @@ -994,6 +994,24 @@ ;; NT doesn't have make-symbolic-link (sysdep-defalias 'make-symbolic-link 'copy-file) +(sysdep-defun run-hook-with-args-until-success (hook &rest args) + "Run HOOK with the specified arguments ARGS. +HOOK should be a symbol, a hook variable. Its value should +be a list of functions. We call those functions, one by one, +passing arguments ARGS to each of them, until one of them +returns a non-nil value. Then we return that value. +If all the functions return nil, we return nil." + (let ((rval nil) + (todo (and (boundp hook) (symbol-value hook))) + (global (and (boundp hook) (default-value hook))) + (cur nil)) + (while (and (setq cur (car todo)) (not rval)) + (setq todo (cdr todo)) + (if (eq cur t) + (if global + (setq todo (append global todo))) + (setq rval (apply cur args)))))) + (sysdep-defun split-string (string pattern) "Return a list of substrings of STRING which are separated by PATTERN." (let (parts (start 0)) diff -r 419db647c998 -r d2f30a177268 lisp/w3/w3-vars.el --- a/lisp/w3/w3-vars.el Mon Aug 13 09:25:31 2007 +0200 +++ b/lisp/w3/w3-vars.el Mon Aug 13 09:26:03 2007 +0200 @@ -1,7 +1,7 @@ ;;; w3-vars.el,v --- All variable definitions for emacs-w3 ;; Author: wmperry -;; Created: 1997/04/07 16:06:34 -;; Version: 1.122 +;; Created: 1997/04/10 21:18:12 +;; Version: 1.123 ;; Keywords: comm, help, hypermedia ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; @@ -33,7 +33,7 @@ (require 'w3-cus) ; Grab everything that is customized (defconst w3-version-number - (let ((x "p3.0.80")) + (let ((x "p3.0.81")) (if (string-match "State:[ \t\n]+.\\([^ \t\n]+\\)" x) (setq x (substring x (match-beginning 1) (match-end 1))) (setq x (substring x 1))) @@ -41,7 +41,7 @@ (function (lambda (x) (if (= x ?-) "." (char-to-string x)))) x "")) "Version # of w3-mode.") -(defconst w3-version-date (let ((x "1997/04/07 16:06:34")) +(defconst w3-version-date (let ((x "1997/04/10 21:18:12")) (if (string-match "Date: \\([^ \t\n]+\\)" x) (substring x (match-beginning 1) (match-end 1)) x)) diff -r 419db647c998 -r d2f30a177268 lisp/w3/w3-xemac.el --- a/lisp/w3/w3-xemac.el Mon Aug 13 09:25:31 2007 +0200 +++ b/lisp/w3/w3-xemac.el Mon Aug 13 09:26:03 2007 +0200 @@ -1,7 +1,7 @@ ;;; w3-xemac.el --- XEmacs specific functions for emacs-w3 ;; Author: wmperry -;; Created: 1997/04/01 19:23:21 -;; Version: 1.17 +;; Created: 1997/04/10 00:03:38 +;; Version: 1.18 ;; Keywords: faces, help, mouse, hypermedia ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; @@ -35,6 +35,15 @@ ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;; Enhancements For XEmacs ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +(defun w3-text-pixel-width (str &optional face) + "Return the pixel-width of a chunk of text STR with face FACE." + (let ((glyph (make-glyph str)) + (todo (if (listp face) face (list face))) + (max 0)) + (while (progn (set-glyph-face glyph (pop todo)) todo) + (setq max (max (glyph-width glyph) max))) + max)) + (defun w3-mouse-handler (e) "Function to message the url under the mouse cursor" (interactive "e") diff -r 419db647c998 -r d2f30a177268 man/gnus.texi --- a/man/gnus.texi Mon Aug 13 09:25:31 2007 +0200 +++ b/man/gnus.texi Mon Aug 13 09:26:03 2007 +0200 @@ -1,7 +1,7 @@ \input texinfo @c -*-texinfo-*- @setfilename gnus -@settitle Gnus 5.4.42 Manual +@settitle Gnus 5.4.43 Manual @synindex fn cp @synindex vr cp @synindex pg cp @@ -287,7 +287,7 @@ @tex @titlepage -@title Gnus 5.4.42 Manual +@title Gnus 5.4.43 Manual @author by Lars Magne Ingebrigtsen @page @@ -323,7 +323,7 @@ spool or your mbox file. All at the same time, if you want to push your luck. -This manual corresponds to Gnus 5.4.42. +This manual corresponds to Gnus 5.4.43. @end ifinfo @@ -2910,8 +2910,10 @@ Describe all groups (@code{gnus-group-describe-all-groups}). If given a prefix, force Gnus to re-read the description file from the server. -@item V +@item H v +@itemx V @kindex V (Group) +@kindex H v (Group) @cindex version @findex gnus-version Display current Gnus version numbers (@code{gnus-version}). @@ -6331,6 +6333,10 @@ that look something like @samp{<38o6up$6f2@@hymir.ifi.uio.no>}. You have to get it all exactly right. No fuzzy searches, I'm afraid. +The current select method will be used when fetching by +@code{Message-ID} from non-news select method, but you can override this +by giving this command a prefix. + @vindex gnus-refer-article-method If the group you are reading is located on a backend that does not support fetching by @code{Message-ID} very well (like @code{nnspool}), @@ -6574,7 +6580,10 @@ If this variable is non-@code{nil}, Gnus will try to keep the tree buffer as small as possible to allow more room for the other Gnus windows. If this variable is a number, the tree buffer will never be -higher than that number. The default is @code{t}. +higher than that number. The default is @code{t}. Note that if you +have several windows displayed side-by-side in a frame and the tree +buffer is one of these, minimizing the tree window will also resize all +other windows that are displayed next to it. @item gnus-generate-tree-function @vindex gnus-generate-tree-function @@ -16271,6 +16280,11 @@ does this @code{defalias} thing with Gnus equivalents instead. Cleaner all over. +In the cases when the XEmacs function interface was obviously +cleaner, I used it instead. For example @code{gnus-region-active-p} +is an alias for @code{region-active-p} in XEmacs, whereas in Emacs +it is a function. + Of course, I could have chosen XEmacs as my native platform and done mapping functions the other way around. But I didn't. The performance hit these indirections impose on Gnus under XEmacs should be slight. diff -r 419db647c998 -r d2f30a177268 man/message.texi --- a/man/message.texi Mon Aug 13 09:25:31 2007 +0200 +++ b/man/message.texi Mon Aug 13 09:26:03 2007 +0200 @@ -1,7 +1,7 @@ \input texinfo @c -*-texinfo-*- @setfilename message -@settitle Message 5.4.42 Manual +@settitle Message 5.4.43 Manual @synindex fn cp @synindex vr cp @synindex pg cp @@ -39,7 +39,7 @@ @tex @titlepage -@title Message 5.4.42 Manual +@title Message 5.4.43 Manual @author by Lars Magne Ingebrigtsen @page @@ -79,7 +79,7 @@ * Key Index:: List of Message mode keys. @end menu -This manual corresponds to Message 5.4.42. Message is distributed with +This manual corresponds to Message 5.4.43. Message is distributed with the Gnus distribution bearing the same version number as this manual has. diff -r 419db647c998 -r d2f30a177268 src/ChangeLog --- a/src/ChangeLog Mon Aug 13 09:25:31 2007 +0200 +++ b/src/ChangeLog Mon Aug 13 09:26:03 2007 +0200 @@ -1,3 +1,28 @@ +Thu Apr 10 12:48:49 1997 Steven L Baur + + * glyphs.c: Undo duplicate declaration of display_table. + + * glyphs.h: Back out name change of autodetect to + automatic_conversion. + + * glyphs.c: Back out name change of autodetect to + automatic_conversion. + + * glyphs-x.c (image_instantiator_format_create_glyphs_x): Back out + name change of autodetect to automatic_conversion. + + * events.c (Fevent_properties): Do something sensible for + dead_event and empty_event. + + * general.c: Restore autodetect symbol. + + * emacsfns.h: Declare new symbol Qempty. + + * general.c: Add symbol to identify empty events. + + * events.c (Fevent_type): Don't abort() when presented with an + empty_event or a dead_event. + Mon Apr 7 18:12:26 1997 David Moore * xmu.c: Renamed local `initialized' variable to `hex_initialized' diff -r 419db647c998 -r d2f30a177268 src/Makefile.in.in --- a/src/Makefile.in.in Mon Aug 13 09:25:31 2007 +0200 +++ b/src/Makefile.in.in Mon Aug 13 09:26:03 2007 +0200 @@ -1589,10 +1589,8 @@ exit 1 /* Cover your eyes, please */ -xemacs-version.h: ${lispdir}version.el - @echo "#define main_1 xemacs_`grep emacs-version ${lispdir}version.el | sed 's/.*\"\(.*\)\.\(.*\)\"/\1_\2/ \ -1q'`_`grep -i xemacs.*lucid.*beta ${lispdir}version.el | sed 's/.*\(beta[0-9]*\).*/\1/ \ -1q'`" > xemacs-version.h +xemacs-version.h: ../lisp/version.el + @echo "#define main_1 xemacs_`grep emacs-version ../lisp/version.el | sed -e 's/.*\"\(.*\)\.\(.*\)\"/\1_\2/' -e 1q`_`grep -i xemacs.*lucid.*beta ../lisp/version.el | sed -e 's/.*\(beta[0-9]*\).*/\1/' -e 1q`" > xemacs-version.h /* Some machines have alloca built-in. diff -r 419db647c998 -r d2f30a177268 src/console-tty.h --- a/src/console-tty.h Mon Aug 13 09:25:31 2007 +0200 +++ b/src/console-tty.h Mon Aug 13 09:26:03 2007 +0200 @@ -167,6 +167,8 @@ CONST char *end_motion; /* rmcup, te */ CONST char *keypad_on; /* smkx, ks */ CONST char *keypad_off; /* rmkx, ke */ + + CONST char *orig_pair; /* op, op */ } sd; /* costs of various operations */ diff -r 419db647c998 -r d2f30a177268 src/emacsfns.h --- a/src/emacsfns.h Mon Aug 13 09:25:31 2007 +0200 +++ b/src/emacsfns.h Mon Aug 13 09:26:03 2007 +0200 @@ -1166,6 +1166,7 @@ extern Lisp_Object Qall; extern Lisp_Object Qassoc; extern Lisp_Object Qat; +extern Lisp_Object Qautodetect; extern Lisp_Object Qautomatic_conversion; extern Lisp_Object Qbad_variable; extern Lisp_Object Qbefore; @@ -1196,6 +1197,7 @@ extern Lisp_Object Qdisplay; extern Lisp_Object Qdoc_string; extern Lisp_Object Qdynarr_overhead; +extern Lisp_Object Qempty; extern Lisp_Object Qeq; extern Lisp_Object Qequal; extern Lisp_Object Qeql; diff -r 419db647c998 -r d2f30a177268 src/events.c --- a/src/events.c Mon Aug 13 09:25:31 2007 +0200 +++ b/src/events.c Mon Aug 13 09:26:03 2007 +0200 @@ -1097,6 +1097,9 @@ timeout A timeout has expired. eval This causes a specified action to occur when dispatched. magic Some window-system-specific event has occurred. +dead The event has been deallocated. +empty The event has been allocated but not assigned. + */ (event)) { @@ -1131,6 +1134,12 @@ case magic_eval_event: return Qmagic; + case empty_event: + return Qempty; + + case dead_event: + return Qdead; + default: abort (); return Qnil; @@ -1841,6 +1850,8 @@ case magic_eval_event: case magic_event: + case dead_event: + case empty_event: break; default: diff -r 419db647c998 -r d2f30a177268 src/general.c --- a/src/general.c Mon Aug 13 09:25:31 2007 +0200 +++ b/src/general.c Mon Aug 13 09:26:03 2007 +0200 @@ -36,6 +36,7 @@ Lisp_Object Qall; Lisp_Object Qassoc; Lisp_Object Qat; +Lisp_Object Qautodetect; Lisp_Object Qautomatic_conversion; Lisp_Object Qbad_variable; Lisp_Object Qbefore; @@ -66,6 +67,7 @@ Lisp_Object Qdisplay; Lisp_Object Qdoc_string; Lisp_Object Qdynarr_overhead; +Lisp_Object Qempty; Lisp_Object Qeq; Lisp_Object Qequal; Lisp_Object Qeql; @@ -163,6 +165,7 @@ defsymbol (&Qall, "all"); defsymbol (&Qassoc, "assoc"); defsymbol (&Qat, "at"); + defsymbol (&Qautodetect, "autodetect"); defsymbol (&Qautomatic_conversion, "automatic-conversion"); defsymbol (&Qbad_variable, "bad-variable"); defsymbol (&Qbefore, "before"); @@ -193,6 +196,7 @@ defsymbol (&Qdisplay, "display"); defsymbol (&Qdoc_string, "doc-string"); defsymbol (&Qdynarr_overhead, "dynarr-overhead"); + defsymbol (&Qempty, "empty"); defsymbol (&Qeq, "eq"); defsymbol (&Qequal, "equal"); defsymbol (&Qeql, "eql"); diff -r 419db647c998 -r d2f30a177268 src/glyphs-x.c --- a/src/glyphs-x.c Mon Aug 13 09:25:31 2007 +0200 +++ b/src/glyphs-x.c Mon Aug 13 09:26:03 2007 +0200 @@ -104,7 +104,7 @@ DEFINE_IMAGE_INSTANTIATOR_FORMAT (font); -DEFINE_IMAGE_INSTANTIATOR_FORMAT (automatic_conversion); +DEFINE_IMAGE_INSTANTIATOR_FORMAT (autodetect); static void cursor_font_instantiate (Lisp_Object image_instance, Lisp_Object instantiator, @@ -3115,17 +3115,17 @@ /********************************************************************** - * Automatic_Conversion * + * Autodetect * **********************************************************************/ static void -automatic_conversion_validate (Lisp_Object instantiator) +autodetect_validate (Lisp_Object instantiator) { data_must_be_present (instantiator); } static Lisp_Object -automatic_conversion_normalize (Lisp_Object instantiator, +autodetect_normalize (Lisp_Object instantiator, Lisp_Object console_type) { Lisp_Object file = find_keyword_in_vector (instantiator, Q_data); @@ -3199,14 +3199,14 @@ specification. (We can't do that now because we don't know what dest-types it's going to be instantiated into.) */ { - Lisp_Object result = alist_to_tagged_vector (Qautomatic_conversion, alist); + Lisp_Object result = alist_to_tagged_vector (Qautodetect, alist); free_alist (alist); RETURN_UNGCPRO (result); } } static int -automatic_conversion_possible_dest_types (void) +autodetect_possible_dest_types (void) { return IMAGE_MONO_PIXMAP_MASK | @@ -3216,7 +3216,7 @@ } static void -automatic_conversion_instantiate (Lisp_Object image_instance, +autodetect_instantiate (Lisp_Object image_instance, Lisp_Object instantiator, Lisp_Object pointer_fg, Lisp_Object pointer_bg, @@ -3939,15 +3939,15 @@ IIFORMAT_VALID_KEYWORD (xface, Q_background, check_valid_string); #endif - INITIALIZE_IMAGE_INSTANTIATOR_FORMAT (automatic_conversion, - "automatic-conversion"); - - IIFORMAT_HAS_METHOD (automatic_conversion, validate); - IIFORMAT_HAS_METHOD (automatic_conversion, normalize); - IIFORMAT_HAS_METHOD (automatic_conversion, possible_dest_types); - IIFORMAT_HAS_METHOD (automatic_conversion, instantiate); - - IIFORMAT_VALID_KEYWORD (automatic_conversion, Q_data, check_valid_string); + INITIALIZE_IMAGE_INSTANTIATOR_FORMAT (autodetect, + "autodetect"); + + IIFORMAT_HAS_METHOD (autodetect, validate); + IIFORMAT_HAS_METHOD (autodetect, normalize); + IIFORMAT_HAS_METHOD (autodetect, possible_dest_types); + IIFORMAT_HAS_METHOD (autodetect, instantiate); + + IIFORMAT_VALID_KEYWORD (autodetect, Q_data, check_valid_string); } void diff -r 419db647c998 -r d2f30a177268 src/glyphs.c --- a/src/glyphs.c Mon Aug 13 09:25:31 2007 +0200 +++ b/src/glyphs.c Mon Aug 13 09:26:03 2007 +0200 @@ -54,7 +54,8 @@ Lisp_Object Qmono_pixmap, Qcolor_pixmap, Qsubwindow; Lisp_Object Vcurrent_display_table; -Lisp_Object Qdisplay_table; +/* Declared in faces.c */ +extern Lisp_Object Qdisplay_table; Lisp_Object Vtruncation_glyph, Vcontinuation_glyph, Voctal_escape_glyph; Lisp_Object Vcontrol_arrow_glyph, Vinvisible_text_glyph, Vhscroll_glyph; @@ -146,7 +147,7 @@ Given an IMAGE-INSTANTIATOR-FORMAT, return non-nil if it is valid. Valid formats are some subset of 'nothing, 'string, 'formatted-string, 'xpm, 'xbm, 'xface, 'gif, 'jpeg, 'png, 'tiff, 'cursor-font, 'font, -'automatic-conversion, and 'subwindow, depending on how XEmacs was +'autodetect, and 'subwindow, depending on how XEmacs was compiled. */ (image_instantiator_format)) @@ -1837,7 +1838,7 @@ probably be fixed.) 'subwindow (An embedded X window; not currently implemented.) -'automatic-conversion +'autodetect (XEmacs tries to guess what format the data is in. If X support exists, the data string will be checked to see if it names a filename. If so, and this filename contains XBM or XPM data, the appropriate @@ -1864,7 +1865,7 @@ value of the `image-instance-file-name' function when applied to the resulting image-instance. This keyword is not valid for instantiator formats `nothing', `string', `formatted-string', - `cursor-font', `font', `automatic-conversion', and `inherit'.) + `cursor-font', `font', `autodetect', and `inherit'.) :foreground :background (For `xbm', `xface', `cursor-font', and `font'. These keywords diff -r 419db647c998 -r d2f30a177268 src/glyphs.h --- a/src/glyphs.h Mon Aug 13 09:25:31 2007 +0200 +++ b/src/glyphs.h Mon Aug 13 09:26:03 2007 +0200 @@ -51,7 +51,7 @@ font pointer subwindow subwindow inherit mono-pixmap - automatic-conversion mono-pixmap, color-pixmap, pointer, + autodetect mono-pixmap, color-pixmap, pointer, text */ diff -r 419db647c998 -r d2f30a177268 src/redisplay-tty.c --- a/src/redisplay-tty.c Mon Aug 13 09:25:31 2007 +0200 +++ b/src/redisplay-tty.c Mon Aug 13 09:26:03 2007 +0200 @@ -429,18 +429,16 @@ int y2 = WINDOW_TEXT_BOTTOM (w); unsigned char divv = '|'; - tty_turn_on_face (w, DEFAULT_INDEX); + tty_turn_on_face (w, MODELINE_INDEX); for (line = y1; line < y2; line++) { cmgoto (f, line, WINDOW_TEXT_LEFT (w) - 1); send_string_to_tty_console (c, &divv, 1); TTY_INC_CURSOR_X (c, 1); } - tty_turn_off_face (w, DEFAULT_INDEX); /* Draw the divider in the modeline. */ cmgoto (f, y2, WINDOW_TEXT_LEFT (w) - 1); - tty_turn_on_face (w, MODELINE_INDEX); send_string_to_tty_console (c, &divv, 1); TTY_INC_CURSOR_X (c, 1); tty_turn_off_face (w, MODELINE_INDEX); @@ -922,6 +920,7 @@ if (!CONSOLE_TTY_P (c)) return; + OUTPUT1_IF (c, TTY_SD (c).orig_pair); OUTPUT1_IF (c, TTY_SD (c).keypad_off); OUTPUT1_IF (c, TTY_SD (c).cursor_normal); OUTPUT1_IF (c, TTY_SD (c).end_motion); @@ -1207,6 +1206,7 @@ TTY_SD (c).turn_on_bold = tgetstr ("md", &bufptr); TTY_SD (c).turn_on_dim = tgetstr ("mh", &bufptr); TTY_SD (c).turn_off_attributes = tgetstr ("me", &bufptr); + TTY_SD (c).orig_pair = tgetstr ("op", &bufptr); TTY_SD (c).visual_bell = tgetstr ("vb", &bufptr); TTY_SD (c).audio_bell = tgetstr ("bl", &bufptr); diff -r 419db647c998 -r d2f30a177268 src/s/freebsd.h --- a/src/s/freebsd.h Mon Aug 13 09:25:31 2007 +0200 +++ b/src/s/freebsd.h Mon Aug 13 09:26:03 2007 +0200 @@ -88,6 +88,8 @@ #define BSD 199103 #elif __FreeBSD__ == 2 #define BSD 199306 +#elif __FreeBSD__ == 3 +#define BSD 199506 #endif #undef HAVE_UNION_WAIT