From 3677a29393d77ad076790c385f123472369b881e Mon Sep 17 00:00:00 2001 From: Lars Magne Ingebrigtsen Date: Tue, 4 Mar 1997 03:16:46 +0000 Subject: [PATCH] *** empty log message *** --- lisp/ChangeLog | 26 +++++++++++++++++++++- lisp/gnus-ems.el | 31 ++++++++++----------------- lisp/gnus.el | 56 +++++++++++++++++++++++++++++++++--------------- texi/gnus.texi | 54 +++++++++++++++++++++++----------------------- 4 files changed, 102 insertions(+), 65 deletions(-) diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 24acde796..e3bcff0d6 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,7 +1,31 @@ +Sun Aug 20 01:04:45 1995 Lars Magne Ingebrigtsen + + * gnus-ems.el (gnus-ems-redefine): One entry too many; XEmacs + bugout. + +Sat Aug 19 22:41:22 1995 Lars Magne Ingebrigtsen + + * gnus.el (gnus-article-treat-overstrike): Make overstrikes + invisible instead of deleitng them. + (gnus-summary-mode-map): Changed the "M p" and "M s" keymaps. + (gnus-update-active-hashtb-from-killed): New function. + (gnus-setup-news): Use it. + +Sat Aug 19 22:03:14 1995 Lars Magne Ingebrigtsen + + * gnus.el (gnus-window-left-corner): New function. + * gnus-ems.el (gnus-window-left-corner-xemacs): Redefine it. + + * gnus-ems.el (gnus-rebuild-thread-xemacs): Would infloop. + (gnus-highlight-selected-summary-xemacs): Did not work on the + first line in a group. + Sat Aug 19 16:37:58 1995 Lars Magne Ingebrigtsen - * nnbabyl.el (nnbabyl-read-mbox): Would create ghost articles. + * gnus.el: 0.99.12 is released. + * nnbabyl.el (nnbabyl-read-mbox): Would create ghost articles. + * gnus.el (gnus-summary-move-article): Would barf on respooling to (as-yet) non-existant groups. (gnus-summary-best-unread-article): Really go to the best article. diff --git a/lisp/gnus-ems.el b/lisp/gnus-ems.el index 21c818d02..c38976c97 100644 --- a/lisp/gnus-ems.el +++ b/lisp/gnus-ems.el @@ -230,26 +230,15 @@ pounce directly on the real variables themselves.") ) (defun gnus-highlight-selected-summary-xemacs () - ;; Added by Per Abrahamsen . ;; Highlight selected article in summary buffer (if gnus-summary-selected-face - (save-excursion - (let* ((beg (progn (beginning-of-line) (point))) - (end (progn (end-of-line) (point))) - (to (max 1 (1- (or (previous-single-property-change - end 'mouse-face nil beg) end)))) - (from (1+ (or (next-single-property-change - beg 'mouse-face nil end) beg)))) - (if (< to beg) - (progn - (setq from beg) - (setq to end))) - (if gnus-newsgroup-selected-overlay - (delete-extent gnus-newsgroup-selected-overlay)) - (setq gnus-newsgroup-selected-overlay - (make-extent from to)) - (set-extent-face gnus-newsgroup-selected-overlay - gnus-summary-selected-face))))) + (progn + (if gnus-newsgroup-selected-overlay + (delete-extent gnus-newsgroup-selected-overlay)) + (setq gnus-newsgroup-selected-overlay + (make-extent (gnus-point-at-bol) (gnus-point-at-eol))) + (set-extent-face gnus-newsgroup-selected-overlay + gnus-summary-selected-face)))) (defun gnus-summary-recenter-xemacs () (let* ((top (cond ((< (window-height) 4) 0) @@ -474,7 +463,7 @@ call it with the value of the `gnus-data' text property." (gnus-summary-prepare-threads (list thread) 0) (save-excursion (while (and (>= (point) beg) - (not (eobp))) + (not (bobp))) (remove-text-properties (1+ (gnus-point-at-bol)) (1+ (gnus-point-at-eol)) '(gnus-number nil gnus-mark nil gnus-level nil)) @@ -495,6 +484,8 @@ call it with the value of the `gnus-data' text property." (and data (list 'gnus-data data)) (list 'highlight t)))) +(defun gnus-window-left-corner-xemacs (&optional window) + (nth 1 (window-pixel-edges window))) (defun gnus-ems-redefine () (cond @@ -514,6 +505,7 @@ call it with the value of the `gnus-data' text property." (fset 'gnus-article-push-button 'gnus-article-push-button-xemacs) (fset 'gnus-rebuild-thread 'gnus-rebuild-thread-xemacs) (fset 'gnus-article-add-button 'gnus-article-add-button-xemacs) + (fset 'gnus-window-left-corner 'gnus-window-left-corner-xemacs) (if (not gnus-visual) () @@ -522,7 +514,6 @@ call it with the value of the `gnus-data' text property." '(lambda () (easy-menu-add gnus-group-reading-menu) (easy-menu-add gnus-group-group-menu) - (easy-menu-add gnus-group-post-menu) (easy-menu-add gnus-group-misc-menu) (gnus-install-mouse-tracker)) gnus-group-mode-hook)) diff --git a/lisp/gnus.el b/lisp/gnus.el index 1c8a93537..09c1aa2ab 100644 --- a/lisp/gnus.el +++ b/lisp/gnus.el @@ -1310,7 +1310,7 @@ 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 "(ding) Gnus v0.99.12" +(defconst gnus-version "(ding) Gnus v0.99.13" "Version number for this version of Gnus.") (defvar gnus-info-nodes @@ -2562,7 +2562,9 @@ If optional argument RE-ONLY is non-nil, strip `Re:' only." (setq hor (cdr hor)))) (and (not invisible) jump-buffer))) - +(defun gnus-window-left-corner (&optional window) + (nth 1 (window-edges window))) + (defun gnus-remove-some-windows () (let ((buffers gnus-window-to-buffer) (lowest (frame-height)) @@ -2578,9 +2580,9 @@ If optional argument RE-ONLY is non-nil, strip `Re:' only." (progn (setq bufs (cons buf bufs)) (pop-to-buffer buf) - (if (< (nth 1 (window-edges)) lowest) + (if (< (gnus-window-left-corner) lowest) (progn - (setq lowest (nth 1 (window-edges))) + (setq lowest (gnus-window-left-corner)) (setq lowest-buf buf))))) (setq buffers (cdr buffers))) ;; Remove windows on *all* summary buffers. @@ -2592,10 +2594,10 @@ If optional argument RE-ONLY is non-nil, strip `Re:' only." (progn (setq bufs (cons buf bufs)) (pop-to-buffer buf) - (if (< (nth 1 (window-edges)) lowest) + (if (< (gnus-window-left-corner) lowest) (progn (setq lowest-buf buf) - (setq lowest (nth 1 (window-edges))))))))))) + (setq lowest (gnus-window-left-corner)))))))))) (and lowest-buf (progn (pop-to-buffer lowest-buf) @@ -5282,13 +5284,13 @@ buffer. (define-key gnus-summary-mark-map "K" 'gnus-summary-kill-same-subject) (define-prefix-command 'gnus-summary-mscore-map) - (define-key gnus-summary-mark-map "s" 'gnus-summary-mscore-map) + (define-key gnus-summary-mark-map "V" 'gnus-summary-mscore-map) (define-key gnus-summary-mscore-map "c" 'gnus-summary-clear-above) (define-key gnus-summary-mscore-map "u" 'gnus-summary-tick-above) (define-key gnus-summary-mscore-map "m" 'gnus-summary-mark-above) (define-key gnus-summary-mscore-map "k" 'gnus-summary-kill-below) - (define-key gnus-summary-mark-map "p" 'gnus-uu-mark-map) + (define-key gnus-summary-mark-map "P" 'gnus-uu-mark-map) (define-key gnus-summary-mode-map "S" 'gnus-summary-send-map) @@ -10919,15 +10921,18 @@ Provided for backwards compatability." (let ((next (following-char)) (previous (char-after (- (point) 2)))) (cond ((eq next previous) - (delete-region (- (point) 2) (point)) + (put-text-property (- (point) 2) (point) + 'invisible t) (put-text-property (point) (1+ (point)) 'face 'bold)) ((eq next ?_) - (delete-region (1- (point)) (1+ (point))) + (put-text-property (1- (point)) (1+ (point)) + 'invisible t) (put-text-property (1- (point)) (point) 'face 'underline)) ((eq previous ?_) - (delete-region (- (point) 2) (point)) + (put-text-property (- (point) 2) (point) + 'invisible t) (put-text-property (point) (1+ (point)) 'face 'underline)))))))) @@ -11976,14 +11981,19 @@ If LEVEL is non-nil, the news will be set up at level LEVEL." ;; Read the newsrc file and create `gnus-newsrc-hashtb'. (if init (gnus-read-newsrc-file rawfile)) + ;; If we don't read the complete active file, we fill in the + ;; hashtb here. + (if (or (null gnus-read-active-file) + (eq gnus-read-active-file 'some)) + (gnus-update-active-hashtb-from-killed)) + ;; Read the active file and create `gnus-active-hashtb'. ;; If `gnus-read-active-file' is nil, then we just create an empty ;; hash table. The partial filling out of the hash table will be ;; done in `gnus-get-unread-articles'. - (if (and gnus-read-active-file - (not level)) - (gnus-read-active-file) - (setq gnus-active-hashtb (make-vector 4095 0))) + (and gnus-read-active-file + (not level) + (gnus-read-active-file)) ;; Possibly eval the dribble file. (and init gnus-use-dribble-file (gnus-dribble-eval-file)) @@ -12656,6 +12666,18 @@ Returns whether the updating was successful." (gnus-remove-from-range (nth 2 info) (nreverse news))) (gnus-group-update-group group t)))) +;; Enter all dead groups into the hashtb. +(defun gnus-update-active-hashtb-from-killed () + (let ((hashtb (setq gnus-active-hashtb (make-vector 4095 0))) + (lists (list gnus-killed-list gnus-zombie-list)) + killed) + (while lists + (setq killed (car lists)) + (while killed + (gnus-sethash (car killed) nil hashtb) + (setq killed (cdr killed))) + (setq lists (cdr lists))))) + ;; Get the active file(s) from the backend(s). (defun gnus-read-active-file () (gnus-group-set-mode-line) @@ -12701,9 +12723,9 @@ Returns whether the updating was successful." (ding) (sit-for 2)) ((eq list-type 'active) - (gnus-active-to-gnus-format method)) + (gnus-active-to-gnus-format method gnus-active-hashtb)) (t - (gnus-groups-to-gnus-format method))))) + (gnus-groups-to-gnus-format method gnus-active-hashtb))))) (t (if (not (gnus-request-list method)) (progn diff --git a/texi/gnus.texi b/texi/gnus.texi index 23a52b5c2..eb5b97ea7 100644 --- a/texi/gnus.texi +++ b/texi/gnus.texi @@ -3898,23 +3898,23 @@ Display all dormant articles (@code{gnus-summary-show-all-dormant}). @kindex M M-D (Summary) @findex gnus-summary-hide-all-dormant Hide all dormant articles (@code{gnus-summary-hide-all-dormant}). -@item M s k -@kindex M s k (Summary) +@item M V k +@kindex M V k (Summary) @findex gnus-summary-kill-below Kill all articles with scores below the default score (or below the numeric prefix) (@code{gnus-summary-kill-below}). -@item M s c -@kindex M s c (Summary) +@item M V c +@kindex M V c (Summary) @findex gnus-summary-clear-above Clear all marks from articles with scores over the default score (or over the numeric prefix) (@code{gnus-summary-clear-above}). -@item M s u -@kindex M s u (Summary) +@item M V u +@kindex M V u (Summary) @findex gnus-summary-tick-above Tick all articles with scores over the default score (or over the numeric prefix) (@code{gnus-summary-tick-above}). -@item M s m -@kindex M s m (Summary) +@item M V m +@kindex M V m (Summary) @findex gnus-summary-mark-above Prompt for a mark, and mark all articles with scores over the default score (or over the numeric prefix) with this mark @@ -3932,49 +3932,49 @@ one line up or down. @cindex setting process marks @table @kbd -@item M p p +@item M P p @itemx # @kindex # (Summary) -@kindex M p p (Summary) +@kindex M P p (Summary) @findex gnus-summary-mark-as-processable Mark the current article with the process mark (@code{gnus-summary-mark-as-processable}). @findex gnus-summary-unmark-as-processable -@item M p u +@item M P u @itemx M-# -@kindex M p u (Summary) +@kindex M P u (Summary) @kindex M-# (Summary) Remove the process mark, if any, from the current article (@code{gnus-summary-unmark-as-processable}). -@item M p U -@kindex M p U (Summary) +@item M P U +@kindex M P U (Summary) @findex gnus-summary-unmark-all-processable Remove the process mark from all articles (@code{gnus-summary-unmark-all-processable}). -@item M p R -@kindex M p R (Summary) +@item M P R +@kindex M P R (Summary) @findex gnus-uu-mark-by-regexp Mark articles by a regular expression (@code{gnus-uu-mark-by-regexp}). -@item M p r -@kindex M p r (Summary) +@item M P r +@kindex M P r (Summary) @findex gnus-uu-mark-region Mark articles in region (@code{gnus-uu-mark-region}). -@item M p t -@kindex M p t (Summary) +@item M P t +@kindex M P t (Summary) @findex gnus-uu-mark-thread Mark all articles in the current (sub)thread (@code{gnus-uu-mark-thread}). -@item M p s -@kindex M p s (Summary) +@item M P s +@kindex M P s (Summary) @findex gnus-uu-mark-series Mark all articles in the current series (@code{gnus-uu-mark-series}). -@item M p S -@kindex M p S (Summary) +@item M P S +@kindex M P S (Summary) @findex gnus-uu-mark-sparse Mark all series that have already had some articles marked (@code{gnus-uu-mark-sparse}). -@item M p a -@kindex M p a (Summary) +@item M P a +@kindex M P a (Summary) @findex gnus-uu-mark-all Mark all articles in series order (@code{gnus-uu-mark-series}). @end table @@ -4609,7 +4609,7 @@ Uudecodes, views and saves the current series Remember that these all react to the presence of articles marked with the process mark. If, for instance, you'd like to uncode and save an -entire newsgroup, you'd typically do @kbd{M p a} +entire newsgroup, you'd typically do @kbd{M P a} (@code{gnus-uu-mark-all}) and then @kbd{X U} (@code{gnus-uu-decode-uu-and-save}). -- 2.34.1