+2003-04-02 Katsumi Yamaoka <yamaoka@jpl.org>
+
+ * lpath.el: Fbind Info-directory and Info-menu.
+
+2003-04-02 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * gnus-util.el (gnus-message): Added doc-string.
+
+ * gnus-score.el (gnus-score-find-trace): Changed behavior of `q'.
+ (gnus-score-edit-file-at-point): Goto first match when using `e'.
+
+2003-04-01 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * gnus-art.el (gnus-button-ctan-directory-regexp): New variable.
+ (gnus-button-alist): Use it. Changed CTAN and "setq" entries.
+
+2003-04-01 Katsumi Yamaoka <yamaoka@jpl.org>
+
+ * nntp.el (nntp-via-rlogin-command-switches): Doc fix.
+ (nntp-open-via-rlogin-and-telnet): Disable the telnet linemode.
+
+2003-03-31 Kevin Greiner <kgreiner@xpediantsolutions.com>
+
+ * gnus-start.el (gnus-gnus-to-quick-newsrc-format): Bound
+ print-escape-newlines to print escape sequences rather than
+ literal newline characters.
+
2003-03-31 Reiner Steib <Reiner.Steib@gmx.de>
* gnus-art.el (gnus-button-valid-fqdn-regexp): Use
2003-03-28 Vasily Korytov <deskpot@myrealbox.com>
* message.el (message-make-in-reply-to): Use
- mail-extract-address-components to dentermine sender's
+ mail-extract-address-components to determine sender's
name/address.
2003-03-30 Lars Magne Ingebrigtsen <larsi@gnus.org>
:type '(choice (const "^/?tex-archive/\\|/")
(regexp :tag "Other")))
+(defcustom gnus-button-ctan-directory-regexp
+ (concat
+ "\\b\\(\\("
+ "biblio\\|digests\\|dviware\\|fonts\\|graphics\\|help\\|"
+ "indexing\\|info\\|language\\|macros\\|support\\|systems\\|"
+ "tds\\|tools\\|usergrps\\|web\\|nonfree\\|obsolete"
+ "\\)"
+ ;; Require at least one subdirectory to avoid false positives.
+ "/[-a-z0-9]+/[/-a-z0-9]+\\)")
+ "Regular expression that matches ctan directories.
+The first regexp group has to match the directory relative to
+`gnus-ctan-url'."
+ :group 'gnus-article-buttons
+ :type 'regexp)
+
(defcustom gnus-button-mid-or-mail-regexp
(concat "\\b\\(<?[a-z0-9][^<>\")!;:,{}\n\t ]*@"
gnus-button-valid-fqdn-regexp
("\\bmailto:\\([^ \n\t]+\\)"
0 (>= gnus-button-message-level 0) gnus-url-mailto 1)
;; CTAN
- ("\\bCTAN:[ \t\n]*\\([^>)!;:,\n\t ]*\\)"
+ ("\\bCTAN:[ \t\n]*\\([^>)!;:,'\n\t ]*\\)"
0 (>= gnus-button-tex-level 1) gnus-button-handle-ctan 1)
+ ("\\btex-archive/\\([-/a-z0-9]+\\)"
+ 1 (>= gnus-button-tex-level 7) gnus-button-handle-ctan 1)
+ (gnus-button-ctan-directory-regexp
+ 1 (>= gnus-button-tex-level 9) gnus-button-handle-ctan 1)
;; This is info
("\\binfo:\\(//\\)?\\([^'\">\n\t ]+\\)"
0 (>= gnus-button-emacs-level 1) gnus-button-handle-info-url 2)
0 (>= gnus-button-emacs-level 8) gnus-button-handle-symbol 1)
("`\\([a-z]+-[a-z]+\\)'"
0 (>= gnus-button-emacs-level 9) gnus-button-handle-symbol 1)
+ ("(setq[ \t\n]+\\([a-z][a-z0-9]+-[-a-z0-9]+\\)[ \t\n]+.+)"
+ 1 (>= gnus-button-emacs-level 7) gnus-button-handle-describe-variable 1)
("\\b\\(C-h\\|<?[Ff]1>?\\)[ \t\n]+f[ \t\n]+\\([^ \t\n]+\\)[ \t\n]+RET"
0 (>= gnus-button-emacs-level 1) gnus-button-handle-describe-function 2)
("\\b\\(C-h\\|<?[Ff]1>?\\)[ \t\n]+v[ \t\n]+\\([^ \t\n]+\\)[ \t\n]+RET"
0 (>= gnus-button-emacs-level 1) gnus-button-handle-describe-variable 2)
- ("[ \t\n(]setq[ \t\n]+\\([^ \t\n]+\\)[ \t\n)]+"
- 1 (>= gnus-button-emacs-level 1) gnus-button-handle-describe-variable 1)
("`\\(\\b\\(C-h\\|<?[Ff]1>?\\)[ \t\n]+k[ \t\n]+\\([^']+\\)\\)'"
;; Unlike the other regexps we really have to require quoting
;; here to determine where it ends.
(defun gnus-score-edit-file-at-point ()
"Edit score file at point. Useful especially after `V t'."
(interactive)
- (gnus-score-edit-file (ffap-string-at-point)))
+ (let* ((string (ffap-string-at-point))
+ ;; FIXME: Should be the full `match element', not just string at
+ ;; point.
+ file)
+ (save-excursion
+ (end-of-line)
+ (setq file (ffap-string-at-point)))
+ (gnus-score-edit-file file)
+ (unless (string= string file)
+ (goto-char (point-min))
+ ;; Goto first match
+ (search-forward string nil t))))
(defun gnus-score-load-file (file)
;; Load score file FILE. Returns a list a retrieved score-alists.
(local-set-key "q"
(lambda ()
(interactive)
- (kill-buffer nil)
- (gnus-article-show-summary)))
+ (bury-buffer nil)
+ (gnus-summary-expand-window)))
(local-set-key "e" 'gnus-score-edit-file-at-point)
(setq truncate-lines t)
(while trace
(princ (gnus-prin1-to-string gnus-version))
(princ ")\n")
(let* ((print-length nil)
+ (print-escape-newlines t)
(gnus-killed-list
(if (and gnus-save-killed-list
(stringp gnus-save-killed-list))
:group 'gnus-start
:type 'integer)
-;; Show message if message has a lower level than `gnus-verbose'.
-;; Guideline for numbers:
-;; 1 - error messages, 3 - non-serious error messages, 5 - messages
-;; for things that take a long time, 7 - not very important messages
-;; on stuff, 9 - messages inside loops.
(defun gnus-message (level &rest args)
+ "If LEVEL is lower than `gnus-verbose' print ARGS using `message'.
+
+Guideline for numbers:
+1 - error messages, 3 - non-serious error messages, 5 - messages for things
+that take a long time, 7 - not very important messages on stuff, 9 - messages
+inside loops."
(if (<= level gnus-verbose)
(apply 'message args)
;; We have to do this format thingy here even if the result isn't
(defun maybe-bind (args)
(mapcar (lambda (var) (unless (boundp var) (set var nil))) args))
-(maybe-fbind '(bbdb-create-internal bbdb-records
- create-image display-graphic-p
- display-time-event-handler find-image image-size
- image-type-available-p insert-image
+(maybe-fbind '(Info-directory
+ Info-menu bbdb-create-internal bbdb-records create-image
+ display-graphic-p display-time-event-handler find-image
+ image-size image-type-available-p insert-image
make-mode-line-mouse-map make-temp-file open-ssl-stream
propertize put-image replace-regexp-in-string
rmail-msg-is-pruned rmail-msg-restore-non-pruned-header
"*Switches given to the rlogin command `nntp-via-rlogin-command'.
If you use \"ssh\" for `nntp-via-rlogin-command', you may set this to
\(\"-C\") in order to compress all data connections, otherwise set this
-to \(\"-t\") or (\"-C\" \"-t\") if the telnet command requires a pseudo-tty
-allocation on an intermediate host.")
+to \(\"-t\" \"-e\" \"none\") or (\"-C\" \"-t\" \"-e\" \"none\") if the telnet
+command requires a pseudo-tty allocation on an intermediate host.")
(defvoo nntp-via-telnet-command "telnet"
"*Telnet command used to connect to an intermediate host.
(nntp-wait-for-string "^\r*20[01]")
(beginning-of-line)
(delete-region (point-min) (point))
- proc)))
+ (process-send-string proc "\^]")
+ (nntp-wait-for-string "^r?telnet")
+ (process-send-string proc "mode character\n")
+ (accept-process-output proc 1)
+ (sit-for 1)
+ (goto-char (point-min))
+ (forward-line 1)
+ (delete-region (point) (point-max)))
+ proc))
(defun nntp-open-via-telnet-and-telnet (buffer)
"Open a connection to an nntp server through an intermediate host.
+2003-04-02 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * gnus.texi (Gnus Versions): Index.
+ (Summary Score Commands): Decribe keys in `*Score Trace*' buffer.
+
+2003-04-01 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * gnus.texi (Article Button Levels): Added
+ `gnus-button-ctan-directory-regexp'
+
+2003-04-01 Katsumi Yamaoka <yamaoka@jpl.org>
+
+ * gnus.texi (Indirect Functions): Fix examples for
+ nntp-via-rlogin-command-switches.
+
2003-03-31 Reiner Steib <Reiner.Steib@gmx.de>
* gnus.texi (Article Button Levels): New node.
@vindex gnus-button-tex-level
Tex \e$B$^$?$O\e(B LaTex \e$B$K4X$9$k;29MJ88%!"Nc$($P\e(B CTAN \e$B$N\e(B URL\e$B!"$NI=<($r@)8f$7$^\e(B
\e$B$9!#JQ?t\e(B @code{gnus-ctan-url},
-@code{gnus-button-ctan-handler} \e$B$*$h$S\e(B
+@code{gnus-button-ctan-handler},
+@code{gnus-button-ctan-directory-regexp} \e$B$*$h$S\e(B
@code{gnus-button-handle-ctan-bogus-regexp} \e$B$r;2>H$7$F2<$5$$!#\e(B
@end table
\e$B$7\e(B @samp{ssh} \e$B$r\e(B @code{nntp-via-rlogin-command} \e$B$NCM$H$7$F;H$&$J$i$P!"%G!<\e(B
\e$B%?@\B3$r05=L$9$k$?$a$K\e(B @samp{("-C")} \e$B$r;H$&$3$H$,$G$-$^$9!#$"$k$$$O!"$b\e(B
\e$B$7Cf4V$N%[%9%H$G\e(B telnet \e$B%3%^%s%I$,5?;wC<Kv$rI,MW$H$9$k$J$i$P!"$3$l\e(B
-\e$B$r\e(B @samp{("-t")} \e$B$^$?$O\e(B @samp{("-C" "-t")} \e$B$K$7$F2<$5$$!#\e(B
+\e$B$r\e(B @samp{("-t" "-e" "none")} \e$B$^$?$O\e(B @samp{("-C" "-t" "-e" "none")} \e$B$K$7\e(B
+\e$B$F2<$5$$!#\e(B
@end table
@item nntp-open-via-telnet-and-telnet
@kindex V t (\e$B35N,\e(B)
@findex gnus-score-find-trace
\e$B8=:_$N5-;v$K;H$o$l$F$$$kA4$F$N%9%3%"K!B'\e(B (score rule) \e$B$rI=<($7$^\e(B
-\e$B$9\e(B (@code{gnus-score-find-trace})\e$B!#\e(B
+\e$B$9\e(B (@code{gnus-score-find-trace})\e$B!#\e(B@code{*Score Trace*} \e$B%P%C%U%!$G\e(B
+\e$B$O\e(B @kbd{q} \e$B$G=*N;$9$k$3$H$,$G$-$^$9!#\e(B@kbd{e} \e$B$GBP1~$9$k%9%3%"%U%!%$%k$r\e(B
+\e$BJT=8$7$^$9!#%]%$%s%H$,9gCW$7$?AG;R$NCf$NJ8;zNs>e$K$"$k$H$-!"\e(B@kbd{e} \e$B$O%9\e(B
+\e$B%3%"%U%!%$%k$NCf$N$3$NJ8;zNs$N>l=j$X0\F0$7$h$&$H$7$^$9!#\e(B
@item V w
@kindex V w (\e$B35N,\e(B)
@cindex Pterodactyl Gnus
@cindex Oort Gnus
@cindex No Gnus
+@cindex Gnus versions
\e$B:G=i$N\e(B ``\e$BE,@Z$J\e(B'' Gnus 5 \e$B$N%j%j!<%9$O\e(B 1995\e$BG/\e(B11\e$B7n$K\e(B Emacs 19.30 \e$B$NG[I[$K\e(B
\e$B4^$^$l$?$H$-$K$J$5$l$^$7$?\e(B (132 \e$B$N\e(B (ding) Gnus \e$B$N%j%j!<%9\e(B \e$BB-$9$3$H\e(B
@vindex gnus-button-tex-level
Controls the display of references to TeX or LaTeX stuff, e.g. for CTAN
URLs. See the variables @code{gnus-ctan-url},
-@code{gnus-button-ctan-handler} and
+@code{gnus-button-ctan-handler},
+@code{gnus-button-ctan-directory-regexp}, and
@code{gnus-button-handle-ctan-bogus-regexp}.
@end table
@code{nntp-via-rlogin-command}. The default is @code{nil}. If you use
@samp{ssh} for @code{nntp-via-rlogin-command}, you may set this to
@samp{("-C")} in order to compress all data connections, otherwise set
-this to @samp{("-t")} or @samp{("-C" "-t")} if the telnet command
-requires a pseudo-tty allocation on an intermediate host.
+this to @samp{("-t" "-e" "none")} or @samp{("-C" "-t" "-e" "none")} if
+the telnet command requires a pseudo-tty allocation on an intermediate
+host.
@end table
@item nntp-open-via-telnet-and-telnet
@kindex V t (Summary)
@findex gnus-score-find-trace
Display all score rules that have been used on the current article
-(@code{gnus-score-find-trace}).
+(@code{gnus-score-find-trace}). In the @code{*Score Trace*} buffer, you
+can use @kbd{q} to quit. @kbd{e} edits the corresponding score file.
+When point is on a string within the match element, @kbd{e} will try to
+bring you to this string in the score file.
@item V w
@kindex V w (Summary)
@cindex Pterodactyl Gnus
@cindex Oort Gnus
@cindex No Gnus
+@cindex Gnus versions
The first ``proper'' release of Gnus 5 was done in November 1995 when it
was included in the Emacs 19.30 distribution (132 (ding) Gnus releases