Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Browse files

*** empty log message ***

  • Loading branch information...
commit e6beea6564ce22b2ac780019ece7e2148e90c22b 1 parent 416d102
@larsmagne larsmagne authored
View
57 lisp/ChangeLog
@@ -1,5 +1,62 @@
+Sun Apr 21 19:59:58 1996 Lars Magne Ingebrigtsen <larsi@hler.ifi.uio.no>
+
+ * message.el (message-bounce): Wrong interactive spec.
+ (message-bounce): Handle mimeish bounces.
+
+ * nnspool.el (nnspool-inews-switches): Suppress signature.
+
+Sun Apr 21 19:50:59 1996 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-msg.el (gnus-summary-cancel-article): Cancel using the
+ proper select method.
+
+ * gnus.el (gnus-find-method-for-group): Allow methods without names.
+
+Sun Apr 21 16:34:35 1996 Lars Magne Ingebrigtsen <larsi@hler.ifi.uio.no>
+
+ * nnmh.el (nnmh-request-list-1): New function.
+
+ * gnus.el (gnus-summary-articles-in-thread): Would respond badly
+ to dummy roots.
+
+ * gnus-msg.el (gnus-article-mail): Use message.
+
+ * gnus-vis.el (gnus-button-reply): Use message.
+
+Sat Apr 20 04:31:02 1996 Jens Lautenbacher <jens@lemcbed.lem.uni-karlsruhe.de>
+
+ * gnus-vis.el: Greyed out much more entries in group-mode's
+ menubar and started the same for summary-mode.
+
+Sun Apr 21 15:50:09 1996 Lars Magne Ingebrigtsen <larsi@hler.ifi.uio.no>
+
+ * gnus-msg.el (gnus-copy-article-buffer): Don't widen
+ permanently.
+
+ * gnus.el (gnus-read-active-file): Don't nix out active stuff from
+ foreign servers.
+ (gnus-summary-find-next): Wouldn't respond properly to dummy
+ articles.
+
+Sun Apr 21 15:26:47 1996 Denis Howe <dbh@doc.ic.ac.uk>
+
+ * browse-url.el: New version installed.
+
+Sun Apr 21 15:16:07 1996 Lars Magne Ingebrigtsen <larsi@hler.ifi.uio.no>
+
+ * message.el (message-reply): Respond properly even when answering
+ to messages with no Message-ID.
+
+Sat Apr 20 18:16:21 1996 Lars Magne Ingebrigtsen <lars@eyesore.no>
+
+ * gnus.el (gnus-article-header-rank): Moved.
+
+ * message.el (message-send-mail): Wouldn't resend.
+
Sat Apr 20 00:20:09 1996 Lars Magne Ingebrigtsen <larsi@hler.ifi.uio.no>
+ * gnus.el: September Gnus v0.76 is released.
+
* nntp.el (nntp-server-opened-hook): Use the default.
Sat Apr 20 01:58:15 1996 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
View
101 lisp/browse-url.el
@@ -5,7 +5,7 @@
;; Author: Denis Howe <dbh@doc.ic.ac.uk>
;; Maintainer: Denis Howe <dbh@doc.ic.ac.uk>
;; Created: 03 Apr 1995
-;; Version: 0.26 13 Jan 1996
+;; Version: 0.30 23 Mar 1996
;; Keywords: hypertext
;; X-Home page: http://wombat.doc.ic.ac.uk/
@@ -138,10 +138,10 @@
;; (add-hook 'dired-mode-hook
;; (function (lambda ()
;; (local-set-key "\C-c\C-zf" 'browse-url-of-dired-file))))
-;; (if (boundp 'browse-url-browser-function)
-;; (global-set-key "\C-c\C-zu" browse-url-browser-function)
-;; (eval-after-load "browse-url"
-;; '(global-set-key "\C-c\C-zu" browse-url-browser-function)))
+
+;; To browse URLs in mail messages by clicking mouse-2:
+;; (add-hook 'rmail-mode-hook (function (lambda () ; rmail-mode startup
+;; (define-key rmail-mode-map [mouse-2] 'browse-url-at-mouse))))
;; To use the Emacs w3 browser when not running under X11:
;; (or (eq window-system 'x)
@@ -173,8 +173,7 @@
;;
;; (add-hook 'browse-url-of-file-hook 'browse-url-netscape-reload)
-;; You may also want to customise browse-url-netscape-arguments, eg.
-;;
+;; You may also want to customise browse-url-netscape-arguments, e.g.
;; (setq browse-url-netscape-arguments '("-install"))
;;
;; or similarly for the other browsers.
@@ -285,9 +284,25 @@
;; run Lynx in an Emacs buffer under terminal-emulator.
;; Thanks Jari Aalto <jaalto@tre.tele.nokia.fi>
+;; 0.27 27 Feb 1996
+;; Changed event-buffer and event-point from macros to functions.
+;; Other fixes for byte-compilation.
+
+;; 0.28 07 Mar 1996
+;; browse-url-lynx-emacs uses term.el instead of terminal.el.
+
+;; 0.29 13 Mar 1996
+;; Added browse-url-CCI-host. Thanks Greg Marr <gregm@WPI.EDU>.
+
+;; 0.30 23 Mar 1996
+;; Contact/start Netscape in the background.
+;; Thanks Per Abrahamsen <abraham@dina.kvl.dk>
+
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;; Code:
+(eval-when-compile (require 'dired))
+
(defvar browse-url-regexp
"\\(https?://\\|ftp://\\|gopher://\\|telnet://\\|wais://\\|file:/\\|s?news:\\|mailto:\\)[^]\t\n \"'()<>[^`{}]*[^]\t\n \"'()<>[^`{}.,;]+"
"A regular expression probably matching a URL.")
@@ -345,6 +360,11 @@ which is 30 on SunOS and 16 on HP-UX and Solaris.")
This can be any number between 1024 and 65535 but must correspond to
the value set in the browser.")
+(defvar browse-url-CCI-host "localhost"
+ "*Host to access XMosaic via CCI.
+This should be the host name of the machine running XMosaic with CCI
+enabled. The port number should be set in `browse-url-CCI-port'.")
+
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; URL input
@@ -385,13 +405,15 @@ The URL is loaded according to the value of `browse-url-browser-function'."
;; Define these if not already defined (XEmacs compatibility)
-(or (fboundp 'event-buffer)
- (defmacro event-buffer (event)
- `(window-buffer (posn-window (event-start ,event)))))
+(eval-and-compile
+ (or (fboundp 'event-buffer)
+ (defun event-buffer (event)
+ (window-buffer (posn-window (event-start event))))))
-(or (fboundp 'event-point)
- (defmacro event-point (event)
- `(posn-point (event-start ,event))))
+(eval-and-compile
+ (or (fboundp 'event-point)
+ (defun event-point (event)
+ (posn-point (event-start event)))))
(defun browse-url-at-mouse (event)
"Ask a WWW browser to load a URL clicked with the mouse.
@@ -526,24 +548,27 @@ used instead of browse-url-new-window-p."
(list (not (eq (null browse-url-new-window-p)
(null current-prefix-arg))))))
(let ((process (apply 'start-process
- (concat "netscape " url) nil
- browse-url-netscape-command
- (append browse-url-netscape-arguments
- (if new-window '("-noraise"))
- (list "-remote"
- (concat "openURL(" url
- (if new-window ",new-window")
- ")"))))))
- (set-process-sentinel
- process
- `(lambda (process change)
- (or (eq (process-exit-status process) 0)
- (progn
- ;; Netscape not running - start it
- (message "Starting Netscape...")
- (apply 'start-process (concat "netscape" ,url) nil
- browse-url-netscape-command
- (append browse-url-netscape-arguments (list ,url)))))))))
+ (concat "netscape " url) nil
+ browse-url-netscape-command
+ (append browse-url-netscape-arguments
+ (if new-window '("-noraise"))
+ (list "-remote"
+ (concat "openURL(" url
+ (if new-window ",new-window")
+ ")"))))))
+ (set-process-sentinel process
+ (list 'lambda '(process change)
+ (list 'browse-url-netscape-sentinel 'process url)))))
+
+(defun browse-url-netscape-sentinel (process url)
+ "Handle a change to the process communicating with Netscape."
+ (or (eq (process-exit-status process) 0)
+ (progn
+ ;; Netscape not running - start it
+ (message "Starting Netscape...")
+ (apply 'start-process (concat "netscape" url) nil
+ browse-url-netscape-command
+ (append browse-url-netscape-arguments (list url))))))
(defun browse-url-netscape-reload ()
"Ask Netscape to reload its current document."
@@ -610,7 +635,7 @@ used instead of browse-url-new-window-p."
(list (not (eq (null browse-url-new-window-p)
(null current-prefix-arg))))))
(open-network-stream "browse-url" " *browse-url*"
- "localhost" browse-url-CCI-port)
+ browse-url-CCI-host browse-url-CCI-port)
;; Todo: start browser if fails
(process-send-string "browse-url"
(concat "get url (" url ") output "
@@ -640,12 +665,20 @@ in an Xterm window."
(interactive (browse-url-interactive-arg "Lynx URL: "))
(start-process (concat "lynx" url) nil "xterm" "-e" "lynx" url))
+(eval-when-compile (require 'term))
+
(defun browse-url-lynx-emacs (url)
"Ask the Lynx WWW browser to load URL.
-Default to the URL around or before point. A new Lynx process is run
-in an Emacs buffer using terminal-emulator."
+Default to the URL around or before point. Run a new Lynx process in
+an Emacs buffer."
(interactive (browse-url-interactive-arg "Lynx URL: "))
(let ((system-uses-terminfo t)) ; Lynx uses terminfo
+ (if (fboundp 'make-term)
+ (let ((term-term-name "vt100"))
+ (set-buffer (make-term "browse-url" "lynx" nil url))
+ (term-mode)
+ (term-char-mode)
+ (switch-to-buffer "*browse-url*")))
(terminal-emulator "*browse-url*" "lynx" (list url))))
(provide 'browse-url)
View
26 lisp/gnus-msg.el
@@ -235,6 +235,9 @@ If prefix argument YANK is non-nil, original article is yanked automatically."
(interactive "P")
(gnus-set-global-variables)
(let ((articles (gnus-summary-work-articles n))
+ (message-post-method
+ `(lambda (arg)
+ (gnus-post-method nil ,gnus-newsgroup-name)))
article)
(while (setq article (pop articles))
(when (gnus-summary-select-article t nil nil article)
@@ -267,14 +270,15 @@ header line with the old Message-ID."
(or (memq gnus-article-copy gnus-buffer-list)
(setq gnus-buffer-list (cons gnus-article-copy gnus-buffer-list)))
(let ((article-buffer (or article-buffer gnus-article-buffer)))
- (if (and (get-buffer article-buffer)
- (buffer-name (get-buffer article-buffer)))
- (save-excursion
- (set-buffer article-buffer)
+ (when (and (get-buffer article-buffer)
+ (buffer-name (get-buffer article-buffer)))
+ (save-excursion
+ (set-buffer article-buffer)
+ (save-restriction
(widen)
(copy-to-buffer gnus-article-copy (point-min) (point-max))
(gnus-set-text-properties (point-min) (point-max)
- nil gnus-article-copy)))
+ nil gnus-article-copy))))
gnus-article-copy))
(defun gnus-post-news (post &optional group header article-buffer yank subject
@@ -508,8 +512,7 @@ If prefix argument YANK is non-nil, original article is yanked automatically."
(gnus-inews-yank-articles yank)))))
(defun gnus-summary-reply-with-original (n)
- "Reply mail to news author with original article.
-Customize the variable gnus-mail-reply-method to use another mailer."
+ "Reply mail to news author with original article."
(interactive "P")
(gnus-summary-reply (gnus-summary-work-articles n)))
@@ -645,10 +648,11 @@ If YANK is non-nil, include the original article."
(buffer-substring
(save-excursion (re-search-backward "[ \t\n]" nil t) (1+ (point)))
(save-excursion (re-search-forward "[ \t\n]" nil t) (1- (point))))))
- (and address
- (progn
- (switch-to-buffer gnus-summary-buffer)
- (gnus-mail-reply yank address)))))
+ (when address
+ (switch-to-buffer gnus-summary-buffer)
+ (message-reply address)
+ (when yank
+ (gnus-inews-yank-articles yank)))))
(defun gnus-bug ()
"Send a bug report to the Gnus maintainers."
View
2  lisp/gnus-score.el
@@ -726,7 +726,7 @@ SCORE is the score to add."
(defun gnus-score-change-score-file (file)
"Change current score alist."
(interactive
- (list (read-file-name "Edit score file: " gnus-kill-files-directory)))
+ (list (read-file-name "Change to score file: " gnus-kill-files-directory)))
(gnus-score-load-file file)
(gnus-set-mode-line 'summary))
View
158 lisp/gnus-vis.el
@@ -31,6 +31,7 @@
(require 'easymenu)
(require 'custom)
(require 'browse-url)
+(require 'gnus-score)
(eval-when-compile (require 'cl))
(defvar gnus-group-menu-hook nil
@@ -321,7 +322,8 @@ ticked: The number of ticked articles in the group.
'("Group"
["Read" gnus-group-read-group (gnus-group-group-name)]
["Select" gnus-group-select-group (gnus-group-group-name)]
- ["See old articles" (gnus-group-select-group 'all) :keys "C-u SPC"]
+ ["See old articles" (gnus-group-select-group 'all)
+ :keys "C-u SPC" :active (gnus-group-group-name)]
["Catch up" gnus-group-catchup-current (gnus-group-group-name)]
["Catch up all articles" gnus-group-catchup-current-all
(gnus-group-group-name)]
@@ -335,8 +337,13 @@ ticked: The number of ticked articles in the group.
["Fetch FAQ" gnus-group-fetch-faq (gnus-group-group-name)]
["Edit kill file" gnus-group-edit-local-kill
(gnus-group-group-name)]
+ ;; Actually one should check, if any of the marked groups gives t for
+ ;; (gnus-check-backend-function 'request-expire-articles ...)
["Expire articles" gnus-group-expire-articles
- (gnus-group-group-name)]
+ (or (and (gnus-group-group-name)
+ (gnus-check-backend-function
+ 'request-expire-articles
+ (gnus-group-group-name))) gnus-group-marked)]
["Set group level" gnus-group-set-current-level
(gnus-group-group-name)]
["Select quick" gnus-group-quick-select-group (gnus-group-group-name)]
@@ -350,32 +357,45 @@ ticked: The number of ticked articles in the group.
["List all groups" gnus-group-list-all-groups t]
["List killed groups" gnus-group-list-killed gnus-killed-list]
["List zombie groups" gnus-group-list-zombies gnus-zombie-list]
- ["List level" gnus-group-list-level t]
+ ["List level..." gnus-group-list-level t]
["Describe all groups" gnus-group-describe-all-groups t]
- ["Group apropos" gnus-group-apropos t]
- ["Group and description apropos" gnus-group-description-apropos t]
+ ["Group apropos..." gnus-group-apropos t]
+ ["Group and description apropos..." gnus-group-description-apropos t]
["List groups matching..." gnus-group-list-matching t]
["List all groups matching..." gnus-group-list-all-matching t]
["List active file" gnus-group-list-active t])
("Sort"
- ["Default sort" gnus-group-sort-groups t]
- ["Sort by method" gnus-group-sort-groups-by-method t]
- ["Sort by rank" gnus-group-sort-groups-by-rank t]
- ["Sort by score" gnus-group-sort-groups-by-score t]
- ["Sort by level" gnus-group-sort-groups-by-level t]
- ["Sort by unread" gnus-group-sort-groups-by-unread t]
- ["Sort by name" gnus-group-sort-groups-by-alphabet t])
+ ["Default sort" gnus-group-sort-groups
+ (not gnus-topic-mode)]
+ ["Sort by method" gnus-group-sort-groups-by-method
+ (not gnus-topic-mode)]
+ ["Sort by rank" gnus-group-sort-groups-by-rank
+ (not gnus-topic-mode)]
+ ["Sort by score" gnus-group-sort-groups-by-score
+ (not gnus-topic-mode)]
+ ["Sort by level" gnus-group-sort-groups-by-level
+ (not gnus-topic-mode)]
+ ["Sort by unread" gnus-group-sort-groups-by-unread
+ (not gnus-topic-mode)]
+ ["Sort by name" gnus-group-sort-groups-by-alphabet
+ (not gnus-topic-mode)])
("Mark"
- ["Mark group" gnus-group-mark-group (gnus-group-group-name)]
- ["Unmark group" gnus-group-unmark-group (gnus-group-group-name)]
- ["Unmark all" gnus-group-unmark-all-groups t]
- ["Mark regexp" gnus-group-mark-regexp t]
- ["Mark region" gnus-group-mark-region t]
+ ["Mark group" gnus-group-mark-group
+ (and (gnus-group-group-name)
+ (not (memq (gnus-group-group-name) gnus-group-marked)))]
+ ["Unmark group" gnus-group-unmark-group
+ (and (gnus-group-group-name)
+ (memq (gnus-group-group-name) gnus-group-marked))]
+ ["Unmark all" gnus-group-unmark-all-groups gnus-group-marked]
+ ["Mark regexp..." gnus-group-mark-regexp t]
+ ["Mark region" gnus-group-mark-region (region-exists-p)]
["Mark buffer" gnus-group-mark-buffer t]
- ["Execute command" gnus-group-universal-argument t])
+ ["Execute command" gnus-group-universal-argument
+ (or gnus-group-marked (gnus-group-group-name))])
("Subscribe"
["Subscribe to random group" gnus-group-unsubscribe-group t]
- ["Kill all newsgroups in region" gnus-group-kill-region t]
+ ["Kill all newsgroups in region" gnus-group-kill-region
+ (region-exists-p)]
["Kill all zombie groups" gnus-group-kill-all-zombies
gnus-zombie-list]
["Kill all groups on level..." gnus-group-kill-level t])
@@ -388,8 +408,12 @@ ticked: The number of ticked articles in the group.
["Make a kiboze group" gnus-group-make-kiboze-group t]
["Make a virtual group" gnus-group-make-empty-virtual t]
["Add a group to a virtual" gnus-group-add-to-virtual t]
- ["Rename group" gnus-group-rename-group t]
- ["Delete group" gnus-group-delete-group t])
+ ["Rename group" gnus-group-rename-group
+ (gnus-check-backend-function
+ 'request-rename-group (gnus-group-group-name))]
+ ["Delete group" gnus-group-delete-group
+ (gnus-check-backend-function
+ 'request-delete-group (gnus-group-group-name))])
("Editing groups"
["Parameters" gnus-group-edit-group-parameters
(gnus-group-group-name)]
@@ -397,7 +421,8 @@ ticked: The number of ticked articles in the group.
(gnus-group-group-name)]
["Info" gnus-group-edit-group (gnus-group-group-name)])
("Score file"
- ["Flush cache" gnus-score-flush-cache t])
+ ["Flush cache" gnus-score-flush-cache
+ (or gnus-score-cache gnus-short-name-score-file-cache)])
("Move"
["Next" gnus-group-next-group t]
["Previous" gnus-group-prev-group t]
@@ -411,7 +436,7 @@ ticked: The number of ticked articles in the group.
["Best unread group" gnus-group-best-unread-group t])
["Transpose" gnus-group-transpose-groups
(gnus-group-group-name)]
- ["Read a directory as a group" gnus-group-enter-directory t]
+ ["Read a directory as a group..." gnus-group-enter-directory t]
))
(easy-menu-define
@@ -419,9 +444,9 @@ ticked: The number of ticked articles in the group.
'("Misc"
["Send a bug report" gnus-bug t]
["Send a mail" gnus-group-mail t]
- ["Post an article" gnus-group-post-news t]
+ ["Post an article..." gnus-group-post-news t]
["Customize score file" gnus-score-customize
- (not (string-match "XEmacs" emacs-version)) ]
+ (not (string-match "XEmacs" emacs-version))]
["Check for new news" gnus-group-get-new-news t]
["Activate all groups" gnus-activate-all-groups t]
["Delete bogus groups" gnus-group-check-bogus-groups t]
@@ -430,7 +455,7 @@ ticked: The number of ticked articles in the group.
["Read init file" gnus-group-read-init-file t]
["Browse foreign server" gnus-group-browse-foreign-server t]
["Enter server buffer" gnus-group-enter-server-mode t]
- ["Expire expirable articles" gnus-group-expire-all-groups t]
+ ["Expire all expirable articles" gnus-group-expire-all-groups t]
["Generate any kiboze groups" nnkiboze-generate-groups t]
["Gnus version" gnus-version t]
["Save .newsrc files" gnus-group-save-newsrc t]
@@ -464,13 +489,15 @@ ticked: The number of ticked articles in the group.
("Mark"
("Read"
["Mark as read" gnus-summary-mark-as-read-forward t]
- ["Mark same subject and select" gnus-summary-kill-same-subject-and-select t]
+ ["Mark same subject and select"
+ gnus-summary-kill-same-subject-and-select t]
["Mark same subject" gnus-summary-kill-same-subject t]
["Catchup" gnus-summary-catchup t]
["Catchup all" gnus-summary-catchup-all t]
["Catchup to here" gnus-summary-catchup-to-here t]
- ["Catchup region" gnus-summary-mark-region-as-read t]
- ["Mark excluded" gnus-summary-limit-mark-exlcuded-as-read t])
+ ["Catchup region" gnus-summary-mark-region-as-read
+ (region-exists-p)]
+ ["Mark excluded" gnus-summary-limit-mark-excluded-as-read t])
("Various"
["Tick" gnus-summary-tick-article-forward t]
["Mark as dormant" gnus-summary-mark-as-dormant t]
@@ -479,18 +506,18 @@ ticked: The number of ticked articles in the group.
["Set bookmark" gnus-summary-set-bookmark t]
["Remove bookmark" gnus-summary-remove-bookmark t])
("Limit"
- ["Unread" gnus-summary-limit-to-unread t]
- ["Marks" gnus-summary-limit-to-marks t]
+ ["Marks..." gnus-summary-limit-to-marks t]
+ ["Subject..." gnus-summary-limit-to-subject t]
+ ["Author..." gnus-summary-limit-to-author t]
["Score" gnus-summary-limit-to-score t]
- ["Subject" gnus-summary-limit-to-subject t]
- ["Author" gnus-summary-limit-to-author t]
+ ["Unread" gnus-summary-limit-to-unread t]
["Non-dormant" gnus-summary-limit-exclude-dormant t]
["Articles" gnus-summary-limit-to-articles t]
["Pop limit" gnus-summary-pop-limit t]
["Show dormant" gnus-summary-limit-include-dormant t]
["Hide childless dormant"
gnus-summary-limit-exclude-childless-dormant t]
- ["Hide thread" gnus-summary-limit-exclude-thread t]
+ ;;["Hide thread" gnus-summary-limit-exclude-thread t]
["Show expunged" gnus-summary-show-all-expunged t])
("Process mark"
["Set mark" gnus-summary-mark-as-processable t]
@@ -498,8 +525,8 @@ ticked: The number of ticked articles in the group.
["Remove all marks" gnus-summary-unmark-all-processable t]
["Mark above" gnus-uu-mark-over t]
["Mark series" gnus-uu-mark-series t]
- ["Mark region" gnus-uu-mark-region t]
- ["Mark by regexp" gnus-uu-mark-by-regexp t]
+ ["Mark region" gnus-uu-mark-region (region-exists-p)]
+ ["Mark by regexp..." gnus-uu-mark-by-regexp t]
["Mark all" gnus-uu-mark-all t]
["Mark buffer" gnus-uu-mark-buffer t]
["Mark sparse" gnus-uu-mark-sparse t]
@@ -550,11 +577,13 @@ ticked: The number of ticked articles in the group.
("Modes"
["Pick and read" gnus-pick-mode t]
["Binary" gnus-binary-mode t])
- ["Filter articles" gnus-summary-execute-command t]
- ["Run command on subjects" gnus-summary-universal-argument t]
+ ["Filter articles..." gnus-summary-execute-command t]
+ ["Run command on subjects..." gnus-summary-universal-argument t]
["Toggle line truncation" gnus-summary-toggle-truncation t]
["Expand window" gnus-summary-expand-window t]
- ["Expire expirable articles" gnus-summary-expire-articles t]
+ ["Expire expirable articles" gnus-summary-expire-articles
+ (gnus-check-backend-function
+ 'request-expire-articles gnus-newsgroup-name)]
["Edit local kill file" gnus-summary-edit-local-kill t]
["Edit main kill file" gnus-summary-edit-global-kill t]
))
@@ -565,7 +594,7 @@ ticked: The number of ticked articles in the group.
"Score"
(nconc
(list
- ["Enter score" gnus-summary-score-entry t])
+ ["Enter score..." gnus-summary-score-entry t])
(gnus-visual-score-map 'increase)
(gnus-visual-score-map 'lower)
'(("Mark"
@@ -576,15 +605,15 @@ ticked: The number of ticked articles in the group.
["Current score" gnus-summary-current-score t]
["Set score" gnus-summary-set-score t]
["Customize score file" gnus-score-customize t]
- ["Switch current score file" gnus-score-change-score-file t]
- ["Set mark below" gnus-score-set-mark-below t]
- ["Set expunge below" gnus-score-set-expunge-below t]
+ ["Switch current score file..." gnus-score-change-score-file t]
+ ["Set mark below..." gnus-score-set-mark-below t]
+ ["Set expunge below..." gnus-score-set-expunge-below t]
["Edit current score file" gnus-score-edit-current-scores t]
["Edit score file" gnus-score-edit-file t]
["Trace score" gnus-score-find-trace t]
["Rescore buffer" gnus-summary-rescore t]
- ["Increase score" gnus-summary-increase-score t]
- ["Lower score" gnus-summary-lower-score t]))))
+ ["Increase score..." gnus-summary-increase-score t]
+ ["Lower score..." gnus-summary-lower-score t]))))
'(("Default header"
["Ask" (gnus-score-set-default 'gnus-score-default-header nil)
@@ -739,15 +768,24 @@ ticked: The number of ticked articles in the group.
["Pipe through a filter" gnus-summary-pipe-output t]
["Add to SOUP packet" gnus-soup-add-article t])
("Backend"
- ["Respool article" gnus-summary-respool-article t]
- ["Move article" gnus-summary-move-article t]
- ["Copy article" gnus-summary-copy-article t]
- ["Crosspost article" gnus-summary-crosspost-article t]
- ["Import file" gnus-summary-import-article t]
- ["Edit article" gnus-summary-edit-article t]
- ["Delete article" gnus-summary-delete-article t]
+ ["Respool article..." gnus-summary-respool-article t]
+ ["Move article..." gnus-summary-move-article
+ (gnus-check-backend-function
+ 'request-move-article gnus-newsgroup-name)]
+ ["Copy article..." gnus-summary-copy-article t]
+ ["Crosspost article..." gnus-summary-crosspost-article
+ (gnus-check-backend-function
+ 'request-replace-article gnus-newsgroup-name)]
+ ["Import file..." gnus-summary-import-article t]
+ ["Edit article" gnus-summary-edit-article
+ (not (gnus-group-read-only-p))]
+ ["Delete article" gnus-summary-delete-article
+ (gnus-check-backend-function
+ 'request-expire-articles gnus-newsgroup-name)]
["Query respool" gnus-summary-respool-query t]
- ["Delete expirable articles" gnus-summary-expire-articles-now t])
+ ["Delete expirable articles" gnus-summary-expire-articles-now
+ (gnus-check-backend-function
+ 'request-expire-articles gnus-newsgroup-name)])
("Extract"
["Uudecode" gnus-uu-decode-uu t]
["Uudecode and save" gnus-uu-decode-uu-and-save t]
@@ -757,9 +795,9 @@ ticked: The number of ticked articles in the group.
["Binhex" gnus-uu-decode-binhex t]
["Postscript" gnus-uu-decode-postscript t])
["Enter digest buffer" gnus-summary-enter-digest-group t]
- ["Isearch article" gnus-summary-isearch-article t]
- ["Search articles forward" gnus-summary-search-article-forward t]
- ["Search articles backward" gnus-summary-search-article-backward t]
+ ["Isearch article..." gnus-summary-isearch-article t]
+ ["Search articles forward..." gnus-summary-search-article-forward t]
+ ["Search articles backward..." gnus-summary-search-article-backward t]
["Beginning of the article" gnus-summary-beginning-of-article t]
["End of the article" gnus-summary-end-of-article t]
["Fetch parent of article" gnus-summary-refer-parent-article t]
@@ -806,9 +844,9 @@ ticked: The number of ticked articles in the group.
["Send bounced mail" gnus-summary-resend-bounced-mail t]
["Send a mail" gnus-summary-mail-other-window t]
["Uuencode and post" gnus-uu-post-news t]
- ("Draft"
- ["Send" gnus-summary-send-draft t]
- ["Send bounced" gnus-resend-bounced-mail t])
+ ;;("Draft"
+ ;;["Send" gnus-summary-send-draft t]
+ ;;["Send bounced" gnus-resend-bounced-mail t])
))
(run-hooks 'gnus-summary-menu-hook)
))
@@ -1492,7 +1530,7 @@ specified by `gnus-button-alist'."
(defun gnus-button-reply (address)
;; Reply to ADDRESS.
- (gnus-mail-reply t address))
+ (message-reply t address))
(defun gnus-button-url (address)
"Browse ADDRESS."
View
87 lisp/gnus.el
@@ -1702,13 +1702,13 @@ variable (string, integer, character, etc).")
"gnus-bug@ifi.uio.no (The Gnus Bugfixing Girls + Boys)"
"The mail address of the Gnus maintainers.")
-(defconst gnus-version "September Gnus v0.76"
+(defconst gnus-version "September Gnus v0.77"
"Version number for this version of Gnus.")
(defvar gnus-info-nodes
- '((gnus-group-mode "(gnus)The Group Buffer")
- (gnus-summary-mode "(gnus)The Summary Buffer")
- (gnus-article-mode "(gnus)The Article Buffer"))
+ '((gnus-group-mode "(gnus)The Group Buffer")
+ (gnus-summary-mode "(gnus)The Summary Buffer")
+ (gnus-article-mode "(gnus)The Article Buffer"))
"Assoc list of major modes and related Info nodes.")
(defvar gnus-group-buffer "*Group*")
@@ -9377,12 +9377,14 @@ If EXCLUDE-GROUP, do not go to this group."
(defun gnus-summary-find-next (&optional unread article backward)
(if backward (gnus-summary-find-prev)
- (let* ((article (or article (gnus-summary-article-number)))
+ (let* ((dummy (gnus-summary-article-intangible-p))
+ (article (or article (gnus-summary-article-number)))
(arts (gnus-data-find-list article))
result)
- (when (or (not gnus-summary-check-current)
- (not unread)
- (not (gnus-data-unread-p (car arts))))
+ (when (and (not dummy)
+ (or (not gnus-summary-check-current)
+ (not unread)
+ (not (gnus-data-unread-p (car arts)))))
(setq arts (cdr arts)))
(when (setq result
(if unread
@@ -12325,26 +12327,26 @@ with that article."
(gnus-simplify-subject-fuzzy
(mail-header-subject (gnus-data-header (car data)))))
(t nil)))
+ (end-point (save-excursion
+ (gnus-summary-go-to-next-thread) (point)))
articles)
- (if (not data)
- () ; This article doesn't exist.
- (while data
- (and (or (not top-subject)
- (string= top-subject
- (if (eq gnus-thread-operation-ignore-subject 'fuzzy)
- (gnus-simplify-subject-fuzzy
- (mail-header-subject
- (gnus-data-header (car data))))
- (gnus-simplify-subject-re
+ (while (and data
+ (< (gnus-data-pos (car data)) end-point))
+ (and (or (not top-subject)
+ (string= top-subject
+ (if (eq gnus-thread-operation-ignore-subject 'fuzzy)
+ (gnus-simplify-subject-fuzzy
(mail-header-subject
- (gnus-data-header (car data)))))))
- (setq articles (cons (gnus-data-number (car data)) articles)))
- (if (and (setq data (cdr data))
- (> (gnus-data-level (car data)) top-level))
- ()
- (setq data nil)))
- ;; Return the list of articles.
- (nreverse articles))))
+ (gnus-data-header (car data))))
+ (gnus-simplify-subject-re
+ (mail-header-subject
+ (gnus-data-header (car data)))))))
+ (setq articles (cons (gnus-data-number (car data)) articles)))
+ (unless (and (setq data (cdr data))
+ (> (gnus-data-level (car data)) top-level))
+ (setq data nil)))
+ ;; Return the list of articles.
+ (nreverse articles)))
(defun gnus-summary-rethread-current ()
"Rethread the thread the current article is part of."
@@ -13610,6 +13612,17 @@ Provided for backwards compatibility."
gnus-inhibit-hiding
(gnus-article-hide-headers)))
+(defsubst gnus-article-header-rank ()
+ "Give the rank of the string HEADER as given by `gnus-sorted-header-list'."
+ (let ((list gnus-sorted-header-list)
+ (i 0))
+ (while list
+ (when (looking-at (car list))
+ (setq list nil))
+ (setq list (cdr list))
+ (incf i))
+ i))
+
(defun gnus-article-hide-headers (&optional arg delete)
"Toggle whether to hide unwanted headers and possibly sort them as well.
If given a negative prefix, always show; if given a positive prefix,
@@ -13676,17 +13689,6 @@ always hide."
;; Suggested by Sudish Joseph <joseph@cis.ohio-state.edu>.
(gnus-hide-text-type beg (point-max) 'headers)))))))))
-(defsubst gnus-article-header-rank ()
- "Give the rank of the string HEADER as given by `gnus-sorted-header-list'."
- (let ((list gnus-sorted-header-list)
- (i 0))
- (while list
- (when (looking-at (car list))
- (setq list nil))
- (setq list (cdr list))
- (incf i))
- i))
-
(defun gnus-article-hide-boring-headers (&optional arg)
"Toggle hiding of headers that aren't very interesting.
If given a negative prefix, always show; if given a positive prefix,
@@ -15021,9 +15023,12 @@ If GROUP is nil, all groups on METHOD are scanned."
(gnus-server-extend-method group method))
(t
method)))
- (if (equal (cadr method) "")
- method
- (gnus-server-add-address method))))))
+ (cond ((equal (cadr method) "")
+ method)
+ ((null (cadr method))
+ (list (car method) ""))
+ (t
+ (gnus-server-add-address method)))))))
(defun gnus-check-backend-function (func group)
"Check whether GROUP supports function FUNC."
@@ -15829,7 +15834,7 @@ Returns whether the updating was successful."
(unless (equal method gnus-message-archive-method)
(gnus-error 1 "Cannot read active file from %s server."
(car method)))
- (gnus-active-to-gnus-format method)
+ (gnus-active-to-gnus-format method gnus-active-hashtb)
;; We mark this active file as read.
(push method gnus-have-read-active-file)
(gnus-message 5 "%sdone" mesg))))))
View
30 lisp/message.el
@@ -1144,8 +1144,9 @@ the user from the mailer."
;; We must not do that for a resend
;; because we would find the original addresses.
;; For a resend, include the specific addresses.
- (or resend-to-addresses
- '("-t")))))
+ (if resend-to-addresses
+ (list resend-to-addresses)
+ '("-t")))))
(when message-interactive
(save-excursion
(set-buffer errbuf)
@@ -2082,8 +2083,10 @@ Headers already prepared in the buffer are not modified."
(message-setup
`((Subject . ,subject)
,@follow-to
- (References . ,(concat (or references "") (and references " ")
- (or message-id ""))))
+ ,@(if (or references message-id)
+ `((References . ,(concat (or references "") (and references " ")
+ (or message-id ""))))
+ nil))
cur)))
;;;###autoload
@@ -2341,13 +2344,26 @@ Optional NEWS will use news to forward instead of mail."
This only makes sense if the current message is a bounce message than
contains some mail you have written which has been bounced back to
you."
- (interactive "P")
- (let ((cur (current-buffer)))
+ (interactive)
+ (let ((cur (current-buffer))
+ boundary)
(message-pop-to-buffer "*mail message*")
(insert-buffer-substring cur)
(undo-boundary)
+ (message-narrow-to-head)
+ (if (and (mail-fetch-field "Mime-Version")
+ (setq boundary (mail-fetch-field "Content-Type")))
+ (if (string-match "boundary=\"\\([^\"]+\\)\"" boundary)
+ (setq boundary (concat (match-string 1 boundary) " *\n"
+ "Content-Type: message/rfc822"))
+ (setq boundary nil)))
+ (widen)
(goto-char (point-min))
- (or (and (re-search-forward mail-unsent-separator nil t)
+ (search-forward "\n\n" nil t)
+ (or (and boundary
+ (re-search-forward boundary nil t)
+ (forward-line 2))
+ (and (re-search-forward mail-unsent-separator nil t)
(forward-line 1))
(and (search-forward "\n\n" nil t)
(re-search-forward "^Return-Path:.*\n" nil t)))
View
9 lisp/nndir.el
@@ -90,12 +90,9 @@
(nnml-retrieve-headers 0 nndir-current-group 0 0)
(nnmh-request-article 0 nndir-current-group 0 0)
(nnmh-request-group nndir-current-group 0 0)
- (nnmh-close-group nndir-current-group 0))
-
-(nnoo-import nndir
- (nnmh
- nnmh-request-list
- nnmh-request-newgroups))
+ (nnmh-close-group nndir-current-group 0)
+ (nnmh-request-list (nnoo-current-server 'nndir) nndir-directory)
+ (nnmh-request-newsgroups (nnoo-current-server 'nndir) nndir-directory))
(provide 'nndir)
View
19 lisp/nnmh.el
@@ -179,9 +179,15 @@
(nnmail-get-new-mail 'nnmh nil nnmh-directory group))
(deffoo nnmh-request-list (&optional server dir)
- (unless dir
- (nnheader-insert "")
- (setq dir (file-truename (file-name-as-directory nnmh-directory))))
+ (nnheader-insert "")
+ (let ((nnmh-toplev
+ (or dir (file-truename (file-name-as-directory nnmh-directory)))))
+ (nnmh-request-list-1 nnmh-toplev))
+ (setq nnmh-group-alist (nnmail-get-active))
+ t)
+
+(defvar nnmh-toplev)
+(defun nnmh-request-list-1 (dir)
(setq dir (expand-file-name dir))
;; Recurse down all directories.
(let ((dirs (and (file-readable-p dir)
@@ -193,9 +199,9 @@
(when (and (not (string-match "/\\.\\.?$" dir))
(file-directory-p dir)
(file-readable-p dir))
- (nnmh-request-list nil dir))))
+ (nnmh-request-list-1 dir))))
;; For each directory, generate an active file line.
- (unless (string= (expand-file-name nnmh-directory) dir)
+ (unless (string= (expand-file-name nnmh-toplev) dir)
(let ((files (mapcar
(lambda (name) (string-to-int name))
(directory-files dir nil "^[0-9]+$" t))))
@@ -209,12 +215,11 @@
(progn
(string-match
(file-truename (file-name-as-directory
- (expand-file-name nnmh-directory))) dir)
+ (expand-file-name nnmh-toplev))) dir)
(nnheader-replace-chars-in-string
(substring dir (match-end 0)) ?/ ?.))
(apply (function max) files)
(apply (function min) files)))))))
- (setq nnmh-group-alist (nnmail-get-active))
t)
(deffoo nnmh-request-newgroups (date &optional server)
View
2  lisp/nnspool.el
@@ -38,7 +38,7 @@
"Program to post news.
This is most commonly `inews' or `injnews'.")
-(defvoo nnspool-inews-switches '("-h")
+(defvoo nnspool-inews-switches '("-h" "-S")
"Switches for nnspool-request-post to pass to `inews' for posting news.
If you are using Cnews, you probably should set this variable to nil.")
Please sign in to comment.
Something went wrong with that request. Please try again.