Mercurial > hg > xemacs-beta
comparison lisp/gnus/gnus-salt.el @ 167:85ec50267440 r20-3b10
Import from CVS: tag r20-3b10
author | cvs |
---|---|
date | Mon, 13 Aug 2007 09:45:46 +0200 |
parents | 43dd3413c7c7 |
children | 8eaf7971accc |
comparison
equal
deleted
inserted
replaced
166:7a77eb660975 | 167:85ec50267440 |
---|---|
32 ;;; | 32 ;;; |
33 | 33 |
34 (defvar gnus-pick-mode nil | 34 (defvar gnus-pick-mode nil |
35 "Minor mode for providing a pick-and-read interface in Gnus summary buffers.") | 35 "Minor mode for providing a pick-and-read interface in Gnus summary buffers.") |
36 | 36 |
37 (defvar gnus-pick-display-summary nil | 37 (defcustom gnus-pick-display-summary nil |
38 "*Display summary while reading.") | 38 "*Display summary while reading." |
39 | 39 :type 'boolean |
40 (defvar gnus-pick-mode-hook nil | 40 :group 'gnus-summary-pick) |
41 "Hook run in summary pick mode buffers.") | 41 |
42 | 42 (defcustom gnus-pick-mode-hook nil |
43 (defvar gnus-mark-unpicked-articles-as-read nil | 43 "Hook run in summary pick mode buffers." |
44 "*If non-nil, mark all unpicked articles as read.") | 44 :type 'hook |
45 | 45 :group 'gnus-summary-pick) |
46 (defvar gnus-pick-elegant-flow t | 46 |
47 "If non-nil, gnus-pick-start-reading will run gnus-summary-next-group when no articles have been picked.") | 47 (defcustom gnus-mark-unpicked-articles-as-read nil |
48 | 48 "*If non-nil, mark all unpicked articles as read." |
49 (defvar gnus-summary-pick-line-format | 49 :type 'boolean |
50 :group 'gnus-summary-pick) | |
51 | |
52 (defcustom gnus-pick-elegant-flow t | |
53 "If non-nil, gnus-pick-start-reading will run gnus-summary-next-group when no articles have been picked." | |
54 :type 'boolean | |
55 :group 'gnus-summary-pick) | |
56 | |
57 (defcustom gnus-summary-pick-line-format | |
50 "%-5P %U\%R\%z\%I\%(%[%4L: %-20,20n%]%) %s\n" | 58 "%-5P %U\%R\%z\%I\%(%[%4L: %-20,20n%]%) %s\n" |
51 "*The format specification of the lines in pick buffers. | 59 "*The format specification of the lines in pick buffers. |
52 It accepts the same format specs that `gnus-summary-line-format' does.") | 60 It accepts the same format specs that `gnus-summary-line-format' does." |
61 :type 'string | |
62 :group 'gnus-summary-pick) | |
53 | 63 |
54 ;;; Internal variables. | 64 ;;; Internal variables. |
55 | 65 |
56 (defvar gnus-pick-mode-map nil) | 66 (defvar gnus-pick-mode-map nil) |
57 | 67 |
348 | 358 |
349 ;;; | 359 ;;; |
350 ;;; gnus-tree-mode | 360 ;;; gnus-tree-mode |
351 ;;; | 361 ;;; |
352 | 362 |
353 (defvar gnus-tree-line-format "%(%[%3,3n%]%)" | 363 (defcustom gnus-tree-line-format "%(%[%3,3n%]%)" |
354 "Format of tree elements.") | 364 "Format of tree elements." |
355 | 365 :type 'string |
356 (defvar gnus-tree-minimize-window t | 366 :group 'gnus-summary-tree) |
367 | |
368 (defcustom gnus-tree-minimize-window t | |
357 "If non-nil, minimize the tree buffer window. | 369 "If non-nil, minimize the tree buffer window. |
358 If a number, never let the tree buffer grow taller than that number of | 370 If a number, never let the tree buffer grow taller than that number of |
359 lines.") | 371 lines." |
360 | 372 :type 'boolean |
361 (defvar gnus-selected-tree-face 'modeline | 373 :group 'gnus-summary-tree) |
362 "*Face used for highlighting selected articles in the thread tree.") | 374 |
375 (defcustom gnus-selected-tree-face 'modeline | |
376 "*Face used for highlighting selected articles in the thread tree." | |
377 :type 'face | |
378 :group 'gnus-summary-tree) | |
363 | 379 |
364 (defvar gnus-tree-brackets '((?\[ . ?\]) (?\( . ?\)) | 380 (defvar gnus-tree-brackets '((?\[ . ?\]) (?\( . ?\)) |
365 (?\{ . ?\}) (?< . ?>)) | 381 (?\{ . ?\}) (?< . ?>)) |
366 "Brackets used in tree nodes.") | 382 "Brackets used in tree nodes.") |
367 | 383 |
368 (defvar gnus-tree-parent-child-edges '(?- ?\\ ?|) | 384 (defvar gnus-tree-parent-child-edges '(?- ?\\ ?|) |
369 "Characters used to connect parents with children.") | 385 "Characters used to connect parents with children.") |
370 | 386 |
371 (defvar gnus-tree-mode-line-format "Gnus: %%b %S %Z" | 387 (defcustom gnus-tree-mode-line-format "Gnus: %%b %S %Z" |
372 "*The format specification for the tree mode line.") | 388 "*The format specification for the tree mode line." |
373 | 389 :type 'string |
374 (defvar gnus-generate-tree-function 'gnus-generate-vertical-tree | 390 :group 'gnus-summary-tree) |
391 | |
392 (defcustom gnus-generate-tree-function 'gnus-generate-vertical-tree | |
375 "*Function for generating a thread tree. | 393 "*Function for generating a thread tree. |
376 Two predefined functions are available: | 394 Two predefined functions are available: |
377 `gnus-generate-horizontal-tree' and `gnus-generate-vertical-tree'.") | 395 `gnus-generate-horizontal-tree' and `gnus-generate-vertical-tree'." |
378 | 396 :type '(radio (function-item gnus-generate-vertical-tree) |
379 (defvar gnus-tree-mode-hook nil | 397 (function-item gnus-generate-horizontal-tree) |
380 "*Hook run in tree mode buffers.") | 398 (function :tag "Other" nil)) |
399 :group 'gnus-summary-tree) | |
400 | |
401 (defcustom gnus-tree-mode-hook nil | |
402 "*Hook run in tree mode buffers." | |
403 :type 'hook | |
404 :group 'gnus-summary-tree) | |
381 | 405 |
382 ;;; Internal variables. | 406 ;;; Internal variables. |
383 | 407 |
384 (defvar gnus-tree-line-format-alist | 408 (defvar gnus-tree-line-format-alist |
385 `((?n gnus-tmp-name ?s) | 409 `((?n gnus-tmp-name ?s) |
408 (gnus-define-keys | 432 (gnus-define-keys |
409 gnus-tree-mode-map | 433 gnus-tree-mode-map |
410 "\r" gnus-tree-select-article | 434 "\r" gnus-tree-select-article |
411 gnus-mouse-2 gnus-tree-pick-article | 435 gnus-mouse-2 gnus-tree-pick-article |
412 "\C-?" gnus-tree-read-summary-keys | 436 "\C-?" gnus-tree-read-summary-keys |
437 "h" gnus-tree-show-summary | |
413 | 438 |
414 "\C-c\C-i" gnus-info-find-node) | 439 "\C-c\C-i" gnus-info-find-node) |
415 | 440 |
416 (substitute-key-definition | 441 (substitute-key-definition |
417 'undefined 'gnus-tree-read-summary-keys gnus-tree-mode-map)) | 442 'undefined 'gnus-tree-read-summary-keys gnus-tree-mode-map)) |
457 (when (setq win (get-buffer-window buf)) | 482 (when (setq win (get-buffer-window buf)) |
458 (select-window win) | 483 (select-window win) |
459 (when gnus-selected-tree-overlay | 484 (when gnus-selected-tree-overlay |
460 (goto-char (or (gnus-overlay-end gnus-selected-tree-overlay) 1))) | 485 (goto-char (or (gnus-overlay-end gnus-selected-tree-overlay) 1))) |
461 (gnus-tree-minimize)))) | 486 (gnus-tree-minimize)))) |
487 | |
488 (defun gnus-tree-show-summary () | |
489 "Reconfigure windows to show summary buffer." | |
490 (interactive) | |
491 (if (not (gnus-buffer-live-p gnus-summary-buffer)) | |
492 (error "There is no summary buffer for this tree buffer") | |
493 (gnus-configure-windows 'article) | |
494 (gnus-summary-goto-subject gnus-current-article))) | |
462 | 495 |
463 (defun gnus-tree-select-article (article) | 496 (defun gnus-tree-select-article (article) |
464 "Select the article under point, if any." | 497 "Select the article under point, if any." |
465 (interactive (list (gnus-tree-article-number))) | 498 (interactive (list (gnus-tree-article-number))) |
466 (let ((buf (current-buffer))) | 499 (let ((buf (current-buffer))) |
644 | 677 |
645 (defun gnus-generate-horizontal-tree (thread level &optional dummyp adopted) | 678 (defun gnus-generate-horizontal-tree (thread level &optional dummyp adopted) |
646 "Generate a horizontal tree." | 679 "Generate a horizontal tree." |
647 (let* ((dummy (stringp (car thread))) | 680 (let* ((dummy (stringp (car thread))) |
648 (do (or dummy | 681 (do (or dummy |
649 (memq (mail-header-number (car thread)) gnus-tmp-limit))) | 682 (and (car thread) |
683 (memq (mail-header-number (car thread)) | |
684 gnus-tmp-limit)))) | |
650 col beg) | 685 col beg) |
651 (if (not do) | 686 (if (not do) |
652 ;; We don't want this article. | 687 ;; We don't want this article. |
653 (setq thread (cdr thread)) | 688 (setq thread (cdr thread)) |
654 (if (not (bolp)) | 689 (if (not (bolp)) |
716 (gnus-tree-forward-line (1- (* 2 level))) | 751 (gnus-tree-forward-line (1- (* 2 level))) |
717 (gnus-tree-indent-vertical) | 752 (gnus-tree-indent-vertical) |
718 (delete-char -1) | 753 (delete-char -1) |
719 (insert (cadr gnus-tree-parent-child-edges)) | 754 (insert (cadr gnus-tree-parent-child-edges)) |
720 (setq beg (point)) | 755 (setq beg (point)) |
756 (forward-char -1) | |
721 ;; Draw "-" lines leftwards. | 757 ;; Draw "-" lines leftwards. |
722 (while (progn | 758 (while (= (char-after (1- (point))) ? ) |
723 (unless (bolp) | 759 (delete-char -1) |
724 (forward-char -2)) | 760 (insert (car gnus-tree-parent-child-edges)) |
725 (= (following-char) ? )) | 761 (forward-char -1)) |
726 (delete-char 1) | |
727 (insert (car gnus-tree-parent-child-edges))) | |
728 (goto-char beg) | 762 (goto-char beg) |
729 (gnus-tree-forward-line 1))) | 763 (gnus-tree-forward-line 1))) |
730 (setq dummyp nil) | 764 (setq dummyp nil) |
731 ;; Insert the article node. | 765 ;; Insert the article node. |
732 (gnus-tree-indent-vertical) | 766 (gnus-tree-indent-vertical) |