From: yamaoka Date: Thu, 11 Aug 2005 07:51:44 +0000 (+0000) Subject: New project to translate the Gnus Info manuals into Japanese. X-Git-Tag: init X-Git-Url: http://git.chise.org/gitweb/?a=commitdiff_plain;h=bc2ca8c1a65acaf43333fc7f069762d8ce8cd6bb;p=elisp%2Fgnus-doc-ja.git New project to translate the Gnus Info manuals into Japanese. --- bc2ca8c1a65acaf43333fc7f069762d8ce8cd6bb diff --git a/.cvsignore b/.cvsignore new file mode 100644 index 0000000..7047fd1 --- /dev/null +++ b/.cvsignore @@ -0,0 +1,8 @@ +*.dvi +*.info +*.info-[0-9]* +Makefile +autom4te.cache +config.* +gnustmp.* +missfont.log diff --git a/ChangeLog b/ChangeLog new file mode 100644 index 0000000..1f7bb66 --- /dev/null +++ b/ChangeLog @@ -0,0 +1,18 @@ +2005-08-08 Katsumi Yamaoka + + * gnus-doc-ja: The project has started. + + We aim to translate all the Info manuals of Gnus into Japanese. + Fortunately, we have the inheritance of the Semi-gnus project, of + which Yoshiki Hayashi and the volunteers made the Japanese manuals + being specialized to Semi-gnus. Don't forget that Kazuyuki Ienaga + translated the Gnus v5.0.15 manual into Japanese for the first + time. Let's start translating, making full use of those fortunes. + + There were the following files in the CVS trunk initially: + + .cvsignore ChangeLog Makefile.in README.ja TRANSLATION.ja + configure configure.ac doclicense.texi emacs-mime-ja.texi + gnus-faq-ja.texi gnus-ja.texi gnus-news-ja.texi gnus-terms.ja + infohack.el install-sh message-ja.texi mkinstalldirs pgg-ja.texi + ptexinfmt.el sasl-ja.texi sieve-ja.texi diff --git a/Makefile.in b/Makefile.in new file mode 100644 index 0000000..4dd86a5 --- /dev/null +++ b/Makefile.in @@ -0,0 +1,58 @@ +EMACS=@EMACS@ +EMACSINFO=$(EMACS) -batch -q -no-site-file -l infohack.el -f batch-makeinfo +INFO_DEPS=gnus-ja.info message-ja.info emacs-mime-ja.info\ + pgg-ja.info sasl-ja.info sieve-ja.info +INSTALL=@INSTALL@ +INSTALL_DATA=@INSTALL_DATA@ +INSTALL_INFO=install-info +JBIBTEX=@JBIBTEX@ +PTEX=@PTEX@ +SHELL=/bin/sh +TEXI2DVI=@TEXI2DVI@ +prefix=@prefix@ +infodir=@infodir@ + +.SUFFIXES: .texi + +all: $(INFO_DEPS) + +.texi.info: + @texi=$<; rm -f $@ $@-[0-9] $@-[0-9][0-9]; $(EMACSINFO) $$texi t + +install: all + $(SHELL) ./mkinstalldirs $(infodir) + @list='$(INFO_DEPS)';\ + for file in $$list; do\ + for ifile in `echo $$file $$file-[0-9] $$file-[0-9][0-9]`; do\ + if test -f $$ifile; then\ + echo " $(INSTALL_DATA) $$ifile $(infodir)/$$ifile";\ + $(INSTALL_DATA) $$ifile $(infodir)/$$ifile;\ + else : ; fi;\ + done;\ + done + @if $(SHELL) -c $(INSTALL_INFO)' --version| sed 1q\ + | fgrep -s -v -i debian'>/dev/null 2>&1; then\ + list='$(INFO_DEPS)';\ + for file in $$list; do\ + if test -f $(infodir)/$$file; then\ + echo " $(INSTALL_INFO) --info-dir=$(infodir) $(infodir)/$$file";\ + $(INSTALL_INFO) --info-dir=$(infodir) $(infodir)/$$file || :;\ + else : ; fi\ + done;\ + else : ; fi + +dvi: gnus-ja.dvi message-ja.dvi emacs-mime-ja.dvi\ + pgg-ja.dvi sasl-ja.dvi sieve-ja.dvi + +.texi.dvi: + sed -e '/@iflatex/,/@end iflatex/d' $< > gnustmp.texi + env TEX=$(PTEX) BIBTEX=$(JBIBTEX) $(TEXI2DVI) -l ja -o $@ gnustmp.texi + rm -f gnustmp.* + +clean: + rm -f *.dvi *.info *.info-[0-9] *.info-[0-9][0-9] *.orig *~\ + gnustmp.* missfont.log + +distclean: clean + rm -fr autom4te.cache + rm -f Makefile config.* diff --git a/README.ja b/README.ja new file mode 100644 index 0000000..c0c8419 --- /dev/null +++ b/README.ja @@ -0,0 +1,60 @@ +Gnus ¤Î Info ¥Þ¥Ë¥å¥¢¥ë¤ÎÁ´Ìõ¤Ç¤¹¡£No Gnus v0.4 ¤ËÂбþ¤·¤Þ¤¹¡£ + +¡ö ¤È¤Æ¤â¤¸¤ã¤Ê¤¤¤±¤ì¤É¡¢¤Þ¤ÀÁ´Éô¤òÌõ¤·½ª¤ï¤Ã¤Æ¤¤¤Þ¤»¤ó¡£(¢«¸å¤Ç¾Ã¤¹) + +¥¤¥ó¥¹¥È¡¼¥ë +============ +% ./configure +% make +% make install + +¼¡¤Î¤è¤¦¤Ë¡¢»È¤¦ Emacs ¤È¥¤¥ó¥¹¥È¡¼¥ëÀè¤Î¥Ç¥£¥ì¥¯¥È¥ê¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£ + +% ./configure --with-emacs=EMACS --infodir=INFODIR + +¥Ç¥£¥Õ¥©¥ë¥ÈÃͤϡ¢°ú¿ô̵¤·¤Ç configure ¤ò¼Â¹Ô¤¹¤ë¤È¤Ç¤­¤ë Makefile ¤Î +Ãæ¿È¤ò¸«¤Æ²¼¤µ¤¤¡£EMACS ¤ÎÃͤò /usr/local/bin/emacs ¤Î¤è¤¦¤ËÀäÂХѥ¹Ì¾ +¤Ë¤¹¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó¡£¤¢¤é¤«¤¸¤á PATH ´Ä¶­ÊÑ¿ô¤òÀßÄꤷ¤Æ²¼¤µ¤¤¡£Îã: + +% ./configure --with-emacs=emacs-21.4 --infodir=/usr/local/info + +Gnus ¤ÎÈÇ +========= +Emacs ¤Ë´Þ¤Þ¤ì¤Æ¤¤¤ë¤â¤Î¤Ç¤Ï¤Ê¤¯¡¢Gnus ¥¿¥ï¡¼¤«¤é¥ê¥ê¡¼¥¹¤µ¤ì¤ëÈǤËÂÐ +±þ¤·¤Þ¤¹¡£Æ±»þ´ü¤ËÊ£¿ô¤Î Gnus ¤ÎÈǤ¬¥ê¥ê¡¼¥¹¤µ¤ì¤ë¾ì¹ç¤Ï¡¢¤è¤ê³«È¯¿§¤Î +¶¯¤¤ÈǤ¬Âоݤˤʤë¤Ç¤·¤ç¤¦¡£ + +¥ê¥ê¡¼¥¹¤µ¤ì¤¿ÆüËܸì¥Þ¥Ë¥å¥¢¥ë¤Î¼èÆÀ¾ì½ê +======================================== +(¤É¤³¤«) + +¥ê¥ê¡¼¥¹¤µ¤ì¤¿ Gnus ¤Î tarball ¤Ç¤¢¤ë xgnus-m.n.tar.gz ¤ËÂбþ¤¹¤ë Info +¥Þ¥Ë¥å¥¢¥ë¤ÎÆüËܸìÈǤΠtarball ¤Ï xgnus-m.n-doc-ja.tar.gz ¤Ç¤¹¡£ + +ƿ̾ CVS +======== +¼¡¤Î¤è¤¦¤Ë¤·¤Æ¡¢ËÝÌõºî¶ÈÃæ¤Î¥Þ¥Ë¥å¥¢¥ë¤ò¼èÆÀ¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£ + +% cvs -d :pserver:anonymous@cvs.m17n.org:/cvs/root login +ºÇ½é¤À¤±É¬ÍפǤ¹¡£¥Ñ¥¹¥ï¡¼¥É¤ò¿Ò¤Í¤é¤ì¤¿¤éñ¤Ë RET ¥­¡¼¤ò²¡¤·¤Æ²¼¤µ¤¤¡£ + +% cvs -d :pserver:anonymous@cvs.m17n.org:/cvs/root checkout gnus-doc-ja + +ËÝÌõºî¶È¤Ø¤Î»²²Ã +================ +¤É¤Ê¤¿¤Ç¤â´¿·Þ¤·¤Þ¤¹¡£ºî¶È¤ò¹Ô¤Ê¤Ã¤Æ¤¤¤ë¾ì½ê¤Ï + +% CVS_RSH=ssh cvs -d :ext:cvs@cvs.m17n.org:/cvs/root + +¤Ç¡¢¥ê¥Ý¥¸¥È¥ê¤Î̾Á°¤Ï gnus-doc-ja ¤Ç¤¹¡£¥¢¥«¥¦¥ó¥È¤ò¼èÆÀ¤¹¤ë¤Ë¤Ï¡¢´õ +˾¤¹¤ë¥æ¡¼¥¶Ì¾¤È ssh2 ¤Î¸ø³«¸°¤ò¤½¤¨¤Æ¡¢ °¸¤Æ¤Ëʿʸ +¤Î¥á¡¼¥ë¤òÁ÷¤Ã¤Æ²¼¤µ¤¤¡£ + +¡öÃí°Õ¡ö +ÍѸì¤äϱѺ®ºßʸ¤Îʬ¤«¤Á½ñ¤­¤Ê¤É¤Ë´Ø¤·¤Æ¡¢Â¿¤¯¤Î°ÅÌÛ¤Îήµ·¤¬¤¢¤ê¤Þ¤¹¡£ +¤¹¤Ç¤ËËÝÌõ¤µ¤ì¤Æ¤¤¤ë¤â¤Î¤ò¤è¤¯Ä¯¤á¤Æ¡¢¤Ç¤­¤ë¸Â¤ê¡¢½¾Íè¤Î¤ä¤êÊý¤Ë½¾¤Ã¤Æ +²¼¤µ¤¤¡£ + +Ï¢Íí¾ì½ê +======== +ÅöÌÌ semi-gnus-ja ¥á¡¼¥ê¥ó¥°¥ê¥¹¥È¤ò»È¤¤¤Þ¤¹¡£ diff --git a/TRANSLATION.ja b/TRANSLATION.ja new file mode 100644 index 0000000..5575a7f --- /dev/null +++ b/TRANSLATION.ja @@ -0,0 +1,33 @@ +This file was written when the project to make the Semi-gnus manual +in Japanese was in progress. Now we succeed to the project, changing +the target into the Gnus manual. We are deeply grateful to Kazuyuki +IENAGA who had translated the Gnus v5.0.15 manual into Japanese first, +Yoshiki Hayashi who had started the previous project, and volunteers. +Their great achievements will be praised through all eternity. + +This file documents about translation policy. +There is an ongoing project to make gnus-ja.texi. +Any volunteers are welcomed. + +$BF|K\8lLu$K4X$9$kN.57$r@bL@$9$k%U%!%$%k$G$9!#(B +gnus-ja.texi $B$r:n@.$9$k%W%m%8%'%/%H$,?J9TCf$G$9!#(B +$B%W%m%8%'%/%H;22C $B$NK]Lu$K4X$9$k5,B'(B +$B$G$9!#$3$N5,B'$O$h$jNI$$$H;W$o$l$k$b$N$,8+$D$+$C$?>l9g$K$OJQ99$5$l$k2D(B +$BG=@-$,$"$j$^$9!#$^$?!"$h$jNI$$0F$d!"B>$N5,B'$rIU$12C$($?$$>l9g$O!"(B +semi-gnus-ja $B%a!<%j%s%0%j%9%H$K$=$N0F$r=q$/$+!"(Bjaist $B$N(B Open CVS $B$K=q(B +$B$-9~$_8"8B$r;}$C$F$$$kJ}$OD>@\=q$-9~$_$r$7$F$/$@$5$$!#(B(CVS $B$N>l9g$G$b!"(B +semi-gnus-ja $B$GJQ99$N9pCN$r$9$k;v$,K>$^$7$$$G$9!#(B) semi-gnus-ja $B%a!<%j(B +$B%s%0%j%9%H$N2CF~$N;EJ}$KIU$$$F$b!">e5-$N(B URI $B$r;2>H$7$F$/$@$5$$!#(B + +1. $B$J$k$Y$/%+%?%+%J$O;H$o$J$$$h$&$K$9$k!#(B + ($BF|K\8l$K$G$-$k$H$3$m$O$J$k$Y$/F|K\8l$K$9$k!#(B + $B>l9g$K$h$C$F$O?7$7$$8l$rDj5A$9$k;v$b$"$k!#(B) + +2. $B1Q8l$rIU2C$7$?J}$,J,$+$j$d$9$$$H;W$o$l$k8l6g$O!"(B + $BF|K\8l$ND>8e$K3g8L$NCf$KF~$l$k!#(B diff --git a/configure b/configure new file mode 100755 index 0000000..24d4906 --- /dev/null +++ b/configure @@ -0,0 +1,2396 @@ +#! /bin/sh +# Guess values for system-dependent variables and create Makefiles. +# Generated by GNU Autoconf 2.59. +# +# Copyright (C) 2003 Free Software Foundation, Inc. +# This configure script is free software; the Free Software Foundation +# gives unlimited permission to copy, distribute and modify it. +## --------------------- ## +## M4sh Initialization. ## +## --------------------- ## + +# Be Bourne compatible +if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then + emulate sh + NULLCMD=: + # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which + # is contrary to our usage. Disable this feature. + alias -g '${1+"$@"}'='"$@"' +elif test -n "${BASH_VERSION+set}" && (set -o posix) >/dev/null 2>&1; then + set -o posix +fi +DUALCASE=1; export DUALCASE # for MKS sh + +# Support unset when possible. +if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then + as_unset=unset +else + as_unset=false +fi + + +# Work around bugs in pre-3.0 UWIN ksh. +$as_unset ENV MAIL MAILPATH +PS1='$ ' +PS2='> ' +PS4='+ ' + +# NLS nuisances. +for as_var in \ + LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \ + LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \ + LC_TELEPHONE LC_TIME +do + if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then + eval $as_var=C; export $as_var + else + $as_unset $as_var + fi +done + +# Required to use basename. +if expr a : '\(a\)' >/dev/null 2>&1; then + as_expr=expr +else + as_expr=false +fi + +if (basename /) >/dev/null 2>&1 && test "X`basename / 2>&1`" = "X/"; then + as_basename=basename +else + as_basename=false +fi + + +# Name of the executable. +as_me=`$as_basename "$0" || +$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ + X"$0" : 'X\(//\)$' \| \ + X"$0" : 'X\(/\)$' \| \ + . : '\(.\)' 2>/dev/null || +echo X/"$0" | + sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/; q; } + /^X\/\(\/\/\)$/{ s//\1/; q; } + /^X\/\(\/\).*/{ s//\1/; q; } + s/.*/./; q'` + + +# PATH needs CR, and LINENO needs CR and PATH. +# Avoid depending upon Character Ranges. +as_cr_letters='abcdefghijklmnopqrstuvwxyz' +as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' +as_cr_Letters=$as_cr_letters$as_cr_LETTERS +as_cr_digits='0123456789' +as_cr_alnum=$as_cr_Letters$as_cr_digits + +# The user is always right. +if test "${PATH_SEPARATOR+set}" != set; then + echo "#! /bin/sh" >conf$$.sh + echo "exit 0" >>conf$$.sh + chmod +x conf$$.sh + if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then + PATH_SEPARATOR=';' + else + PATH_SEPARATOR=: + fi + rm -f conf$$.sh +fi + + + as_lineno_1=$LINENO + as_lineno_2=$LINENO + as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null` + test "x$as_lineno_1" != "x$as_lineno_2" && + test "x$as_lineno_3" = "x$as_lineno_2" || { + # Find who we are. Look in the path if we contain no path at all + # relative or not. + case $0 in + *[\\/]* ) as_myself=$0 ;; + *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break +done + + ;; + esac + # We did not find ourselves, most probably we were run as `sh COMMAND' + # in which case we are not to be found in the path. + if test "x$as_myself" = x; then + as_myself=$0 + fi + if test ! -f "$as_myself"; then + { echo "$as_me: error: cannot find myself; rerun with an absolute path" >&2 + { (exit 1); exit 1; }; } + fi + case $CONFIG_SHELL in + '') + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for as_base in sh bash ksh sh5; do + case $as_dir in + /*) + if ("$as_dir/$as_base" -c ' + as_lineno_1=$LINENO + as_lineno_2=$LINENO + as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null` + test "x$as_lineno_1" != "x$as_lineno_2" && + test "x$as_lineno_3" = "x$as_lineno_2" ') 2>/dev/null; then + $as_unset BASH_ENV || test "${BASH_ENV+set}" != set || { BASH_ENV=; export BASH_ENV; } + $as_unset ENV || test "${ENV+set}" != set || { ENV=; export ENV; } + CONFIG_SHELL=$as_dir/$as_base + export CONFIG_SHELL + exec "$CONFIG_SHELL" "$0" ${1+"$@"} + fi;; + esac + done +done +;; + esac + + # Create $as_me.lineno as a copy of $as_myself, but with $LINENO + # uniformly replaced by the line number. The first 'sed' inserts a + # line-number line before each line; the second 'sed' does the real + # work. The second script uses 'N' to pair each line-number line + # with the numbered line, and appends trailing '-' during + # substitution so that $LINENO is not a special case at line end. + # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the + # second 'sed' script. Blame Lee E. McMahon for sed's syntax. :-) + sed '=' <$as_myself | + sed ' + N + s,$,-, + : loop + s,^\(['$as_cr_digits']*\)\(.*\)[$]LINENO\([^'$as_cr_alnum'_]\),\1\2\1\3, + t loop + s,-$,, + s,^['$as_cr_digits']*\n,, + ' >$as_me.lineno && + chmod +x $as_me.lineno || + { echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2 + { (exit 1); exit 1; }; } + + # Don't try to exec as it changes $[0], causing all sort of problems + # (the dirname of $[0] is not the place where we might find the + # original and so on. Autoconf is especially sensible to this). + . ./$as_me.lineno + # Exit status is that of the last command. + exit +} + + +case `echo "testing\c"; echo 1,2,3`,`echo -n testing; echo 1,2,3` in + *c*,-n*) ECHO_N= ECHO_C=' +' ECHO_T=' ' ;; + *c*,* ) ECHO_N=-n ECHO_C= ECHO_T= ;; + *) ECHO_N= ECHO_C='\c' ECHO_T= ;; +esac + +if expr a : '\(a\)' >/dev/null 2>&1; then + as_expr=expr +else + as_expr=false +fi + +rm -f conf$$ conf$$.exe conf$$.file +echo >conf$$.file +if ln -s conf$$.file conf$$ 2>/dev/null; then + # We could just check for DJGPP; but this test a) works b) is more generic + # and c) will remain valid once DJGPP supports symlinks (DJGPP 2.04). + if test -f conf$$.exe; then + # Don't use ln at all; we don't have any links + as_ln_s='cp -p' + else + as_ln_s='ln -s' + fi +elif ln conf$$.file conf$$ 2>/dev/null; then + as_ln_s=ln +else + as_ln_s='cp -p' +fi +rm -f conf$$ conf$$.exe conf$$.file + +if mkdir -p . 2>/dev/null; then + as_mkdir_p=: +else + test -d ./-p && rmdir ./-p + as_mkdir_p=false +fi + +as_executable_p="test -f" + +# Sed expression to map a string onto a valid CPP name. +as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" + +# Sed expression to map a string onto a valid variable name. +as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" + + +# IFS +# We need space, tab and new line, in precisely that order. +as_nl=' +' +IFS=" $as_nl" + +# CDPATH. +$as_unset CDPATH + + +# Name of the host. +# hostname on some systems (SVR3.2, Linux) returns a bogus exit status, +# so uname gets run too. +ac_hostname=`(hostname || uname -n) 2>/dev/null | sed 1q` + +exec 6>&1 + +# +# Initializations. +# +ac_default_prefix=/usr/local +ac_config_libobj_dir=. +cross_compiling=no +subdirs= +MFLAGS= +MAKEFLAGS= +SHELL=${CONFIG_SHELL-/bin/sh} + +# Maximum number of lines to put in a shell here document. +# This variable seems obsolete. It should probably be removed, and +# only ac_max_sed_lines should be used. +: ${ac_max_here_lines=38} + +# Identity of this package. +PACKAGE_NAME= +PACKAGE_TARNAME= +PACKAGE_VERSION= +PACKAGE_STRING= +PACKAGE_BUGREPORT= + +ac_unique_file="gnus-ja.texi" +ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA EMACS JBIBTEX PTEX TEXI2DVI LIBOBJS LTLIBOBJS' +ac_subst_files='' + +# Initialize some variables set by options. +ac_init_help= +ac_init_version=false +# The variables have the same names as the options, with +# dashes changed to underlines. +cache_file=/dev/null +exec_prefix=NONE +no_create= +no_recursion= +prefix=NONE +program_prefix=NONE +program_suffix=NONE +program_transform_name=s,x,x, +silent= +site= +srcdir= +verbose= +x_includes=NONE +x_libraries=NONE + +# Installation directory options. +# These are left unexpanded so users can "make install exec_prefix=/foo" +# and all the variables that are supposed to be based on exec_prefix +# by default will actually change. +# Use braces instead of parens because sh, perl, etc. also accept them. +bindir='${exec_prefix}/bin' +sbindir='${exec_prefix}/sbin' +libexecdir='${exec_prefix}/libexec' +datadir='${prefix}/share' +sysconfdir='${prefix}/etc' +sharedstatedir='${prefix}/com' +localstatedir='${prefix}/var' +libdir='${exec_prefix}/lib' +includedir='${prefix}/include' +oldincludedir='/usr/include' +infodir='${prefix}/info' +mandir='${prefix}/man' + +ac_prev= +for ac_option +do + # If the previous option needs an argument, assign it. + if test -n "$ac_prev"; then + eval "$ac_prev=\$ac_option" + ac_prev= + continue + fi + + ac_optarg=`expr "x$ac_option" : 'x[^=]*=\(.*\)'` + + # Accept the important Cygnus configure options, so we can diagnose typos. + + case $ac_option in + + -bindir | --bindir | --bindi | --bind | --bin | --bi) + ac_prev=bindir ;; + -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*) + bindir=$ac_optarg ;; + + -build | --build | --buil | --bui | --bu) + ac_prev=build_alias ;; + -build=* | --build=* | --buil=* | --bui=* | --bu=*) + build_alias=$ac_optarg ;; + + -cache-file | --cache-file | --cache-fil | --cache-fi \ + | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c) + ac_prev=cache_file ;; + -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \ + | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*) + cache_file=$ac_optarg ;; + + --config-cache | -C) + cache_file=config.cache ;; + + -datadir | --datadir | --datadi | --datad | --data | --dat | --da) + ac_prev=datadir ;; + -datadir=* | --datadir=* | --datadi=* | --datad=* | --data=* | --dat=* \ + | --da=*) + datadir=$ac_optarg ;; + + -disable-* | --disable-*) + ac_feature=`expr "x$ac_option" : 'x-*disable-\(.*\)'` + # Reject names that are not valid shell variable names. + expr "x$ac_feature" : ".*[^-_$as_cr_alnum]" >/dev/null && + { echo "$as_me: error: invalid feature name: $ac_feature" >&2 + { (exit 1); exit 1; }; } + ac_feature=`echo $ac_feature | sed 's/-/_/g'` + eval "enable_$ac_feature=no" ;; + + -enable-* | --enable-*) + ac_feature=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'` + # Reject names that are not valid shell variable names. + expr "x$ac_feature" : ".*[^-_$as_cr_alnum]" >/dev/null && + { echo "$as_me: error: invalid feature name: $ac_feature" >&2 + { (exit 1); exit 1; }; } + ac_feature=`echo $ac_feature | sed 's/-/_/g'` + case $ac_option in + *=*) ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`;; + *) ac_optarg=yes ;; + esac + eval "enable_$ac_feature='$ac_optarg'" ;; + + -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \ + | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \ + | --exec | --exe | --ex) + ac_prev=exec_prefix ;; + -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \ + | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \ + | --exec=* | --exe=* | --ex=*) + exec_prefix=$ac_optarg ;; + + -gas | --gas | --ga | --g) + # Obsolete; use --with-gas. + with_gas=yes ;; + + -help | --help | --hel | --he | -h) + ac_init_help=long ;; + -help=r* | --help=r* | --hel=r* | --he=r* | -hr*) + ac_init_help=recursive ;; + -help=s* | --help=s* | --hel=s* | --he=s* | -hs*) + ac_init_help=short ;; + + -host | --host | --hos | --ho) + ac_prev=host_alias ;; + -host=* | --host=* | --hos=* | --ho=*) + host_alias=$ac_optarg ;; + + -includedir | --includedir | --includedi | --included | --include \ + | --includ | --inclu | --incl | --inc) + ac_prev=includedir ;; + -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \ + | --includ=* | --inclu=* | --incl=* | --inc=*) + includedir=$ac_optarg ;; + + -infodir | --infodir | --infodi | --infod | --info | --inf) + ac_prev=infodir ;; + -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*) + infodir=$ac_optarg ;; + + -libdir | --libdir | --libdi | --libd) + ac_prev=libdir ;; + -libdir=* | --libdir=* | --libdi=* | --libd=*) + libdir=$ac_optarg ;; + + -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \ + | --libexe | --libex | --libe) + ac_prev=libexecdir ;; + -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \ + | --libexe=* | --libex=* | --libe=*) + libexecdir=$ac_optarg ;; + + -localstatedir | --localstatedir | --localstatedi | --localstated \ + | --localstate | --localstat | --localsta | --localst \ + | --locals | --local | --loca | --loc | --lo) + ac_prev=localstatedir ;; + -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \ + | --localstate=* | --localstat=* | --localsta=* | --localst=* \ + | --locals=* | --local=* | --loca=* | --loc=* | --lo=*) + localstatedir=$ac_optarg ;; + + -mandir | --mandir | --mandi | --mand | --man | --ma | --m) + ac_prev=mandir ;; + -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*) + mandir=$ac_optarg ;; + + -nfp | --nfp | --nf) + # Obsolete; use --without-fp. + with_fp=no ;; + + -no-create | --no-create | --no-creat | --no-crea | --no-cre \ + | --no-cr | --no-c | -n) + no_create=yes ;; + + -no-recursion | --no-recursion | --no-recursio | --no-recursi \ + | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r) + no_recursion=yes ;; + + -oldincludedir | --oldincludedir | --oldincludedi | --oldincluded \ + | --oldinclude | --oldinclud | --oldinclu | --oldincl | --oldinc \ + | --oldin | --oldi | --old | --ol | --o) + ac_prev=oldincludedir ;; + -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \ + | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \ + | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*) + oldincludedir=$ac_optarg ;; + + -prefix | --prefix | --prefi | --pref | --pre | --pr | --p) + ac_prev=prefix ;; + -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*) + prefix=$ac_optarg ;; + + -program-prefix | --program-prefix | --program-prefi | --program-pref \ + | --program-pre | --program-pr | --program-p) + ac_prev=program_prefix ;; + -program-prefix=* | --program-prefix=* | --program-prefi=* \ + | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*) + program_prefix=$ac_optarg ;; + + -program-suffix | --program-suffix | --program-suffi | --program-suff \ + | --program-suf | --program-su | --program-s) + ac_prev=program_suffix ;; + -program-suffix=* | --program-suffix=* | --program-suffi=* \ + | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*) + program_suffix=$ac_optarg ;; + + -program-transform-name | --program-transform-name \ + | --program-transform-nam | --program-transform-na \ + | --program-transform-n | --program-transform- \ + | --program-transform | --program-transfor \ + | --program-transfo | --program-transf \ + | --program-trans | --program-tran \ + | --progr-tra | --program-tr | --program-t) + ac_prev=program_transform_name ;; + -program-transform-name=* | --program-transform-name=* \ + | --program-transform-nam=* | --program-transform-na=* \ + | --program-transform-n=* | --program-transform-=* \ + | --program-transform=* | --program-transfor=* \ + | --program-transfo=* | --program-transf=* \ + | --program-trans=* | --program-tran=* \ + | --progr-tra=* | --program-tr=* | --program-t=*) + program_transform_name=$ac_optarg ;; + + -q | -quiet | --quiet | --quie | --qui | --qu | --q \ + | -silent | --silent | --silen | --sile | --sil) + silent=yes ;; + + -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb) + ac_prev=sbindir ;; + -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \ + | --sbi=* | --sb=*) + sbindir=$ac_optarg ;; + + -sharedstatedir | --sharedstatedir | --sharedstatedi \ + | --sharedstated | --sharedstate | --sharedstat | --sharedsta \ + | --sharedst | --shareds | --shared | --share | --shar \ + | --sha | --sh) + ac_prev=sharedstatedir ;; + -sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \ + | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \ + | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \ + | --sha=* | --sh=*) + sharedstatedir=$ac_optarg ;; + + -site | --site | --sit) + ac_prev=site ;; + -site=* | --site=* | --sit=*) + site=$ac_optarg ;; + + -srcdir | --srcdir | --srcdi | --srcd | --src | --sr) + ac_prev=srcdir ;; + -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*) + srcdir=$ac_optarg ;; + + -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \ + | --syscon | --sysco | --sysc | --sys | --sy) + ac_prev=sysconfdir ;; + -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \ + | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*) + sysconfdir=$ac_optarg ;; + + -target | --target | --targe | --targ | --tar | --ta | --t) + ac_prev=target_alias ;; + -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*) + target_alias=$ac_optarg ;; + + -v | -verbose | --verbose | --verbos | --verbo | --verb) + verbose=yes ;; + + -version | --version | --versio | --versi | --vers | -V) + ac_init_version=: ;; + + -with-* | --with-*) + ac_package=`expr "x$ac_option" : 'x-*with-\([^=]*\)'` + # Reject names that are not valid shell variable names. + expr "x$ac_package" : ".*[^-_$as_cr_alnum]" >/dev/null && + { echo "$as_me: error: invalid package name: $ac_package" >&2 + { (exit 1); exit 1; }; } + ac_package=`echo $ac_package| sed 's/-/_/g'` + case $ac_option in + *=*) ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`;; + *) ac_optarg=yes ;; + esac + eval "with_$ac_package='$ac_optarg'" ;; + + -without-* | --without-*) + ac_package=`expr "x$ac_option" : 'x-*without-\(.*\)'` + # Reject names that are not valid shell variable names. + expr "x$ac_package" : ".*[^-_$as_cr_alnum]" >/dev/null && + { echo "$as_me: error: invalid package name: $ac_package" >&2 + { (exit 1); exit 1; }; } + ac_package=`echo $ac_package | sed 's/-/_/g'` + eval "with_$ac_package=no" ;; + + --x) + # Obsolete; use --with-x. + with_x=yes ;; + + -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \ + | --x-incl | --x-inc | --x-in | --x-i) + ac_prev=x_includes ;; + -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \ + | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*) + x_includes=$ac_optarg ;; + + -x-libraries | --x-libraries | --x-librarie | --x-librari \ + | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l) + ac_prev=x_libraries ;; + -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \ + | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*) + x_libraries=$ac_optarg ;; + + -*) { echo "$as_me: error: unrecognized option: $ac_option +Try \`$0 --help' for more information." >&2 + { (exit 1); exit 1; }; } + ;; + + *=*) + ac_envvar=`expr "x$ac_option" : 'x\([^=]*\)='` + # Reject names that are not valid shell variable names. + expr "x$ac_envvar" : ".*[^_$as_cr_alnum]" >/dev/null && + { echo "$as_me: error: invalid variable name: $ac_envvar" >&2 + { (exit 1); exit 1; }; } + ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` + eval "$ac_envvar='$ac_optarg'" + export $ac_envvar ;; + + *) + # FIXME: should be removed in autoconf 3.0. + echo "$as_me: WARNING: you should use --build, --host, --target" >&2 + expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null && + echo "$as_me: WARNING: invalid host type: $ac_option" >&2 + : ${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option} + ;; + + esac +done + +if test -n "$ac_prev"; then + ac_option=--`echo $ac_prev | sed 's/_/-/g'` + { echo "$as_me: error: missing argument to $ac_option" >&2 + { (exit 1); exit 1; }; } +fi + +# Be sure to have absolute paths. +for ac_var in exec_prefix prefix +do + eval ac_val=$`echo $ac_var` + case $ac_val in + [\\/$]* | ?:[\\/]* | NONE | '' ) ;; + *) { echo "$as_me: error: expected an absolute directory name for --$ac_var: $ac_val" >&2 + { (exit 1); exit 1; }; };; + esac +done + +# Be sure to have absolute paths. +for ac_var in bindir sbindir libexecdir datadir sysconfdir sharedstatedir \ + localstatedir libdir includedir oldincludedir infodir mandir +do + eval ac_val=$`echo $ac_var` + case $ac_val in + [\\/$]* | ?:[\\/]* ) ;; + *) { echo "$as_me: error: expected an absolute directory name for --$ac_var: $ac_val" >&2 + { (exit 1); exit 1; }; };; + esac +done + +# There might be people who depend on the old broken behavior: `$host' +# used to hold the argument of --host etc. +# FIXME: To remove some day. +build=$build_alias +host=$host_alias +target=$target_alias + +# FIXME: To remove some day. +if test "x$host_alias" != x; then + if test "x$build_alias" = x; then + cross_compiling=maybe + echo "$as_me: WARNING: If you wanted to set the --build type, don't use --host. + If a cross compiler is detected then cross compile mode will be used." >&2 + elif test "x$build_alias" != "x$host_alias"; then + cross_compiling=yes + fi +fi + +ac_tool_prefix= +test -n "$host_alias" && ac_tool_prefix=$host_alias- + +test "$silent" = yes && exec 6>/dev/null + + +# Find the source files, if location was not specified. +if test -z "$srcdir"; then + ac_srcdir_defaulted=yes + # Try the directory containing this script, then its parent. + ac_confdir=`(dirname "$0") 2>/dev/null || +$as_expr X"$0" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$0" : 'X\(//\)[^/]' \| \ + X"$0" : 'X\(//\)$' \| \ + X"$0" : 'X\(/\)' \| \ + . : '\(.\)' 2>/dev/null || +echo X"$0" | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } + /^X\(\/\/\)[^/].*/{ s//\1/; q; } + /^X\(\/\/\)$/{ s//\1/; q; } + /^X\(\/\).*/{ s//\1/; q; } + s/.*/./; q'` + srcdir=$ac_confdir + if test ! -r $srcdir/$ac_unique_file; then + srcdir=.. + fi +else + ac_srcdir_defaulted=no +fi +if test ! -r $srcdir/$ac_unique_file; then + if test "$ac_srcdir_defaulted" = yes; then + { echo "$as_me: error: cannot find sources ($ac_unique_file) in $ac_confdir or .." >&2 + { (exit 1); exit 1; }; } + else + { echo "$as_me: error: cannot find sources ($ac_unique_file) in $srcdir" >&2 + { (exit 1); exit 1; }; } + fi +fi +(cd $srcdir && test -r ./$ac_unique_file) 2>/dev/null || + { echo "$as_me: error: sources are in $srcdir, but \`cd $srcdir' does not work" >&2 + { (exit 1); exit 1; }; } +srcdir=`echo "$srcdir" | sed 's%\([^\\/]\)[\\/]*$%\1%'` +ac_env_build_alias_set=${build_alias+set} +ac_env_build_alias_value=$build_alias +ac_cv_env_build_alias_set=${build_alias+set} +ac_cv_env_build_alias_value=$build_alias +ac_env_host_alias_set=${host_alias+set} +ac_env_host_alias_value=$host_alias +ac_cv_env_host_alias_set=${host_alias+set} +ac_cv_env_host_alias_value=$host_alias +ac_env_target_alias_set=${target_alias+set} +ac_env_target_alias_value=$target_alias +ac_cv_env_target_alias_set=${target_alias+set} +ac_cv_env_target_alias_value=$target_alias + +# +# Report the --help message. +# +if test "$ac_init_help" = "long"; then + # Omit some internal or obsolete options to make the list less imposing. + # This message is too long to be a string in the A/UX 3.1 sh. + cat <<_ACEOF +\`configure' configures this package to adapt to many kinds of systems. + +Usage: $0 [OPTION]... [VAR=VALUE]... + +To assign environment variables (e.g., CC, CFLAGS...), specify them as +VAR=VALUE. See below for descriptions of some of the useful variables. + +Defaults for the options are specified in brackets. + +Configuration: + -h, --help display this help and exit + --help=short display options specific to this package + --help=recursive display the short help of all the included packages + -V, --version display version information and exit + -q, --quiet, --silent do not print \`checking...' messages + --cache-file=FILE cache test results in FILE [disabled] + -C, --config-cache alias for \`--cache-file=config.cache' + -n, --no-create do not create output files + --srcdir=DIR find the sources in DIR [configure dir or \`..'] + +_ACEOF + + cat <<_ACEOF +Installation directories: + --prefix=PREFIX install architecture-independent files in PREFIX + [$ac_default_prefix] + --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX + [PREFIX] + +By default, \`make install' will install all the files in +\`$ac_default_prefix/bin', \`$ac_default_prefix/lib' etc. You can specify +an installation prefix other than \`$ac_default_prefix' using \`--prefix', +for instance \`--prefix=\$HOME'. + +For better control, use the options below. + +Fine tuning of the installation directories: + --bindir=DIR user executables [EPREFIX/bin] + --sbindir=DIR system admin executables [EPREFIX/sbin] + --libexecdir=DIR program executables [EPREFIX/libexec] + --datadir=DIR read-only architecture-independent data [PREFIX/share] + --sysconfdir=DIR read-only single-machine data [PREFIX/etc] + --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com] + --localstatedir=DIR modifiable single-machine data [PREFIX/var] + --libdir=DIR object code libraries [EPREFIX/lib] + --includedir=DIR C header files [PREFIX/include] + --oldincludedir=DIR C header files for non-gcc [/usr/include] + --infodir=DIR info documentation [PREFIX/info] + --mandir=DIR man documentation [PREFIX/man] +_ACEOF + + cat <<\_ACEOF +_ACEOF +fi + +if test -n "$ac_init_help"; then + + cat <<\_ACEOF + +Optional Packages: + --with-PACKAGE[=ARG] use PACKAGE [ARG=yes] + --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no) + --with-emacs Use Emacs to build + +_ACEOF +fi + +if test "$ac_init_help" = "recursive"; then + # If there are subdirs, report their specific --help. + ac_popdir=`pwd` + for ac_dir in : $ac_subdirs_all; do test "x$ac_dir" = x: && continue + test -d $ac_dir || continue + ac_builddir=. + +if test "$ac_dir" != .; then + ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'` + # A "../" for each directory in $ac_dir_suffix. + ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'` +else + ac_dir_suffix= ac_top_builddir= +fi + +case $srcdir in + .) # No --srcdir option. We are building in place. + ac_srcdir=. + if test -z "$ac_top_builddir"; then + ac_top_srcdir=. + else + ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'` + fi ;; + [\\/]* | ?:[\\/]* ) # Absolute path. + ac_srcdir=$srcdir$ac_dir_suffix; + ac_top_srcdir=$srcdir ;; + *) # Relative path. + ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix + ac_top_srcdir=$ac_top_builddir$srcdir ;; +esac + +# Do not use `cd foo && pwd` to compute absolute paths, because +# the directories may not exist. +case `pwd` in +.) ac_abs_builddir="$ac_dir";; +*) + case "$ac_dir" in + .) ac_abs_builddir=`pwd`;; + [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";; + *) ac_abs_builddir=`pwd`/"$ac_dir";; + esac;; +esac +case $ac_abs_builddir in +.) ac_abs_top_builddir=${ac_top_builddir}.;; +*) + case ${ac_top_builddir}. in + .) ac_abs_top_builddir=$ac_abs_builddir;; + [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;; + *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;; + esac;; +esac +case $ac_abs_builddir in +.) ac_abs_srcdir=$ac_srcdir;; +*) + case $ac_srcdir in + .) ac_abs_srcdir=$ac_abs_builddir;; + [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;; + *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;; + esac;; +esac +case $ac_abs_builddir in +.) ac_abs_top_srcdir=$ac_top_srcdir;; +*) + case $ac_top_srcdir in + .) ac_abs_top_srcdir=$ac_abs_builddir;; + [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;; + *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;; + esac;; +esac + + cd $ac_dir + # Check for guested configure; otherwise get Cygnus style configure. + if test -f $ac_srcdir/configure.gnu; then + echo + $SHELL $ac_srcdir/configure.gnu --help=recursive + elif test -f $ac_srcdir/configure; then + echo + $SHELL $ac_srcdir/configure --help=recursive + elif test -f $ac_srcdir/configure.ac || + test -f $ac_srcdir/configure.in; then + echo + $ac_configure --help + else + echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2 + fi + cd $ac_popdir + done +fi + +test -n "$ac_init_help" && exit 0 +if $ac_init_version; then + cat <<\_ACEOF + +Copyright (C) 2003 Free Software Foundation, Inc. +This configure script is free software; the Free Software Foundation +gives unlimited permission to copy, distribute and modify it. +_ACEOF + exit 0 +fi +exec 5>config.log +cat >&5 <<_ACEOF +This file contains any messages produced by compilers while +running configure, to aid debugging if configure makes a mistake. + +It was created by $as_me, which was +generated by GNU Autoconf 2.59. Invocation command line was + + $ $0 $@ + +_ACEOF +{ +cat <<_ASUNAME +## --------- ## +## Platform. ## +## --------- ## + +hostname = `(hostname || uname -n) 2>/dev/null | sed 1q` +uname -m = `(uname -m) 2>/dev/null || echo unknown` +uname -r = `(uname -r) 2>/dev/null || echo unknown` +uname -s = `(uname -s) 2>/dev/null || echo unknown` +uname -v = `(uname -v) 2>/dev/null || echo unknown` + +/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null || echo unknown` +/bin/uname -X = `(/bin/uname -X) 2>/dev/null || echo unknown` + +/bin/arch = `(/bin/arch) 2>/dev/null || echo unknown` +/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null || echo unknown` +/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null || echo unknown` +hostinfo = `(hostinfo) 2>/dev/null || echo unknown` +/bin/machine = `(/bin/machine) 2>/dev/null || echo unknown` +/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null || echo unknown` +/bin/universe = `(/bin/universe) 2>/dev/null || echo unknown` + +_ASUNAME + +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + echo "PATH: $as_dir" +done + +} >&5 + +cat >&5 <<_ACEOF + + +## ----------- ## +## Core tests. ## +## ----------- ## + +_ACEOF + + +# Keep a trace of the command line. +# Strip out --no-create and --no-recursion so they do not pile up. +# Strip out --silent because we don't want to record it for future runs. +# Also quote any args containing shell meta-characters. +# Make two passes to allow for proper duplicate-argument suppression. +ac_configure_args= +ac_configure_args0= +ac_configure_args1= +ac_sep= +ac_must_keep_next=false +for ac_pass in 1 2 +do + for ac_arg + do + case $ac_arg in + -no-create | --no-c* | -n | -no-recursion | --no-r*) continue ;; + -q | -quiet | --quiet | --quie | --qui | --qu | --q \ + | -silent | --silent | --silen | --sile | --sil) + continue ;; + *" "*|*" "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?\"\']*) + ac_arg=`echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;; + esac + case $ac_pass in + 1) ac_configure_args0="$ac_configure_args0 '$ac_arg'" ;; + 2) + ac_configure_args1="$ac_configure_args1 '$ac_arg'" + if test $ac_must_keep_next = true; then + ac_must_keep_next=false # Got value, back to normal. + else + case $ac_arg in + *=* | --config-cache | -C | -disable-* | --disable-* \ + | -enable-* | --enable-* | -gas | --g* | -nfp | --nf* \ + | -q | -quiet | --q* | -silent | --sil* | -v | -verb* \ + | -with-* | --with-* | -without-* | --without-* | --x) + case "$ac_configure_args0 " in + "$ac_configure_args1"*" '$ac_arg' "* ) continue ;; + esac + ;; + -* ) ac_must_keep_next=true ;; + esac + fi + ac_configure_args="$ac_configure_args$ac_sep'$ac_arg'" + # Get rid of the leading space. + ac_sep=" " + ;; + esac + done +done +$as_unset ac_configure_args0 || test "${ac_configure_args0+set}" != set || { ac_configure_args0=; export ac_configure_args0; } +$as_unset ac_configure_args1 || test "${ac_configure_args1+set}" != set || { ac_configure_args1=; export ac_configure_args1; } + +# When interrupted or exit'd, cleanup temporary files, and complete +# config.log. We remove comments because anyway the quotes in there +# would cause problems or look ugly. +# WARNING: Be sure not to use single quotes in there, as some shells, +# such as our DU 5.0 friend, will then `close' the trap. +trap 'exit_status=$? + # Save into config.log some information that might help in debugging. + { + echo + + cat <<\_ASBOX +## ---------------- ## +## Cache variables. ## +## ---------------- ## +_ASBOX + echo + # The following way of writing the cache mishandles newlines in values, +{ + (set) 2>&1 | + case `(ac_space='"'"' '"'"'; set | grep ac_space) 2>&1` in + *ac_space=\ *) + sed -n \ + "s/'"'"'/'"'"'\\\\'"'"''"'"'/g; + s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='"'"'\\2'"'"'/p" + ;; + *) + sed -n \ + "s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1=\\2/p" + ;; + esac; +} + echo + + cat <<\_ASBOX +## ----------------- ## +## Output variables. ## +## ----------------- ## +_ASBOX + echo + for ac_var in $ac_subst_vars + do + eval ac_val=$`echo $ac_var` + echo "$ac_var='"'"'$ac_val'"'"'" + done | sort + echo + + if test -n "$ac_subst_files"; then + cat <<\_ASBOX +## ------------- ## +## Output files. ## +## ------------- ## +_ASBOX + echo + for ac_var in $ac_subst_files + do + eval ac_val=$`echo $ac_var` + echo "$ac_var='"'"'$ac_val'"'"'" + done | sort + echo + fi + + if test -s confdefs.h; then + cat <<\_ASBOX +## ----------- ## +## confdefs.h. ## +## ----------- ## +_ASBOX + echo + sed "/^$/d" confdefs.h | sort + echo + fi + test "$ac_signal" != 0 && + echo "$as_me: caught signal $ac_signal" + echo "$as_me: exit $exit_status" + } >&5 + rm -f core *.core && + rm -rf conftest* confdefs* conf$$* $ac_clean_files && + exit $exit_status + ' 0 +for ac_signal in 1 2 13 15; do + trap 'ac_signal='$ac_signal'; { (exit 1); exit 1; }' $ac_signal +done +ac_signal=0 + +# confdefs.h avoids OS command line length limits that DEFS can exceed. +rm -rf conftest* confdefs.h +# AIX cpp loses on an empty file, so make sure it contains at least a newline. +echo >confdefs.h + +# Predefined preprocessor variables. + +cat >>confdefs.h <<_ACEOF +#define PACKAGE_NAME "$PACKAGE_NAME" +_ACEOF + + +cat >>confdefs.h <<_ACEOF +#define PACKAGE_TARNAME "$PACKAGE_TARNAME" +_ACEOF + + +cat >>confdefs.h <<_ACEOF +#define PACKAGE_VERSION "$PACKAGE_VERSION" +_ACEOF + + +cat >>confdefs.h <<_ACEOF +#define PACKAGE_STRING "$PACKAGE_STRING" +_ACEOF + + +cat >>confdefs.h <<_ACEOF +#define PACKAGE_BUGREPORT "$PACKAGE_BUGREPORT" +_ACEOF + + +# Let the site file select an alternate cache file if it wants to. +# Prefer explicitly selected file to automatically selected ones. +if test -z "$CONFIG_SITE"; then + if test "x$prefix" != xNONE; then + CONFIG_SITE="$prefix/share/config.site $prefix/etc/config.site" + else + CONFIG_SITE="$ac_default_prefix/share/config.site $ac_default_prefix/etc/config.site" + fi +fi +for ac_site_file in $CONFIG_SITE; do + if test -r "$ac_site_file"; then + { echo "$as_me:$LINENO: loading site script $ac_site_file" >&5 +echo "$as_me: loading site script $ac_site_file" >&6;} + sed 's/^/| /' "$ac_site_file" >&5 + . "$ac_site_file" + fi +done + +if test -r "$cache_file"; then + # Some versions of bash will fail to source /dev/null (special + # files actually), so we avoid doing that. + if test -f "$cache_file"; then + { echo "$as_me:$LINENO: loading cache $cache_file" >&5 +echo "$as_me: loading cache $cache_file" >&6;} + case $cache_file in + [\\/]* | ?:[\\/]* ) . $cache_file;; + *) . ./$cache_file;; + esac + fi +else + { echo "$as_me:$LINENO: creating cache $cache_file" >&5 +echo "$as_me: creating cache $cache_file" >&6;} + >$cache_file +fi + +# Check that the precious variables saved in the cache have kept the same +# value. +ac_cache_corrupted=false +for ac_var in `(set) 2>&1 | + sed -n 's/^ac_env_\([a-zA-Z_0-9]*\)_set=.*/\1/p'`; do + eval ac_old_set=\$ac_cv_env_${ac_var}_set + eval ac_new_set=\$ac_env_${ac_var}_set + eval ac_old_val="\$ac_cv_env_${ac_var}_value" + eval ac_new_val="\$ac_env_${ac_var}_value" + case $ac_old_set,$ac_new_set in + set,) + { echo "$as_me:$LINENO: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5 +echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;} + ac_cache_corrupted=: ;; + ,set) + { echo "$as_me:$LINENO: error: \`$ac_var' was not set in the previous run" >&5 +echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;} + ac_cache_corrupted=: ;; + ,);; + *) + if test "x$ac_old_val" != "x$ac_new_val"; then + { echo "$as_me:$LINENO: error: \`$ac_var' has changed since the previous run:" >&5 +echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;} + { echo "$as_me:$LINENO: former value: $ac_old_val" >&5 +echo "$as_me: former value: $ac_old_val" >&2;} + { echo "$as_me:$LINENO: current value: $ac_new_val" >&5 +echo "$as_me: current value: $ac_new_val" >&2;} + ac_cache_corrupted=: + fi;; + esac + # Pass precious variables to config.status. + if test "$ac_new_set" = set; then + case $ac_new_val in + *" "*|*" "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?\"\']*) + ac_arg=$ac_var=`echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;; + *) ac_arg=$ac_var=$ac_new_val ;; + esac + case " $ac_configure_args " in + *" '$ac_arg' "*) ;; # Avoid dups. Use of quotes ensures accuracy. + *) ac_configure_args="$ac_configure_args '$ac_arg'" ;; + esac + fi +done +if $ac_cache_corrupted; then + { echo "$as_me:$LINENO: error: changes in the environment can compromise the build" >&5 +echo "$as_me: error: changes in the environment can compromise the build" >&2;} + { { echo "$as_me:$LINENO: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&5 +echo "$as_me: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&2;} + { (exit 1); exit 1; }; } +fi + +ac_ext=c +ac_cpp='$CPP $CPPFLAGS' +ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_c_compiler_gnu + + + + + + + + + + + + + + + + + + + +ac_aux_dir= +for ac_dir in $srcdir $srcdir/.. $srcdir/../..; do + if test -f $ac_dir/install-sh; then + ac_aux_dir=$ac_dir + ac_install_sh="$ac_aux_dir/install-sh -c" + break + elif test -f $ac_dir/install.sh; then + ac_aux_dir=$ac_dir + ac_install_sh="$ac_aux_dir/install.sh -c" + break + elif test -f $ac_dir/shtool; then + ac_aux_dir=$ac_dir + ac_install_sh="$ac_aux_dir/shtool install -c" + break + fi +done +if test -z "$ac_aux_dir"; then + { { echo "$as_me:$LINENO: error: cannot find install-sh or install.sh in $srcdir $srcdir/.. $srcdir/../.." >&5 +echo "$as_me: error: cannot find install-sh or install.sh in $srcdir $srcdir/.. $srcdir/../.." >&2;} + { (exit 1); exit 1; }; } +fi +ac_config_guess="$SHELL $ac_aux_dir/config.guess" +ac_config_sub="$SHELL $ac_aux_dir/config.sub" +ac_configure="$SHELL $ac_aux_dir/configure" # This should be Cygnus configure. + +# Find a good install program. We prefer a C program (faster), +# so one script is as good as another. But avoid the broken or +# incompatible versions: +# SysV /etc/install, /usr/sbin/install +# SunOS /usr/etc/install +# IRIX /sbin/install +# AIX /bin/install +# AmigaOS /C/install, which installs bootblocks on floppy discs +# AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag +# AFS /usr/afsws/bin/install, which mishandles nonexistent args +# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff" +# OS/2's system install, which has a completely different semantic +# ./install, which can be erroneously created by make from ./install.sh. +echo "$as_me:$LINENO: checking for a BSD-compatible install" >&5 +echo $ECHO_N "checking for a BSD-compatible install... $ECHO_C" >&6 +if test -z "$INSTALL"; then +if test "${ac_cv_path_install+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + # Account for people who put trailing slashes in PATH elements. +case $as_dir/ in + ./ | .// | /cC/* | \ + /etc/* | /usr/sbin/* | /usr/etc/* | /sbin/* | /usr/afsws/bin/* | \ + ?:\\/os2\\/install\\/* | ?:\\/OS2\\/INSTALL\\/* | \ + /usr/ucb/* ) ;; + *) + # OSF1 and SCO ODT 3.0 have their own names for install. + # Don't use installbsd from OSF since it installs stuff as root + # by default. + for ac_prog in ginstall scoinst install; do + for ac_exec_ext in '' $ac_executable_extensions; do + if $as_executable_p "$as_dir/$ac_prog$ac_exec_ext"; then + if test $ac_prog = install && + grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then + # AIX install. It has an incompatible calling convention. + : + elif test $ac_prog = install && + grep pwplus "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then + # program-specific install script used by HP pwplus--don't use. + : + else + ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c" + break 3 + fi + fi + done + done + ;; +esac +done + + +fi + if test "${ac_cv_path_install+set}" = set; then + INSTALL=$ac_cv_path_install + else + # As a last resort, use the slow shell script. We don't cache a + # path for INSTALL within a source directory, because that will + # break other packages using the cache if that directory is + # removed, or if the path is relative. + INSTALL=$ac_install_sh + fi +fi +echo "$as_me:$LINENO: result: $INSTALL" >&5 +echo "${ECHO_T}$INSTALL" >&6 + +# Use test -z because SunOS4 sh mishandles braces in ${var-val}. +# It thinks the first close brace ends the variable substitution. +test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}' + +test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}' + +test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644' + + +if test "${EMACS}" = "t"; then + EMACS="" +fi + + +# Check whether --with-emacs or --without-emacs was given. +if test "${with_emacs+set}" = set; then + withval="$with_emacs" + if test "${withval}" = "yes"; then EMACS=emacs; else EMACS=${withval}; fi +fi; +# Extract the first word of "emacs", so it can be a program name with args. +set dummy emacs; ac_word=$2 +echo "$as_me:$LINENO: checking for $ac_word" >&5 +echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 +if test "${ac_cv_prog_EMACS+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + if test -n "$EMACS"; then + ac_cv_prog_EMACS="$EMACS" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_EMACS="emacs" + echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done +done + + test -z "$ac_cv_prog_EMACS" && ac_cv_prog_EMACS="xemacs" +fi +fi +EMACS=$ac_cv_prog_EMACS +if test -n "$EMACS"; then + echo "$as_me:$LINENO: result: $EMACS" >&5 +echo "${ECHO_T}$EMACS" >&6 +else + echo "$as_me:$LINENO: result: no" >&5 +echo "${ECHO_T}no" >&6 +fi + + +# Extract the first word of "jbibtex", so it can be a program name with args. +set dummy jbibtex; ac_word=$2 +echo "$as_me:$LINENO: checking for $ac_word" >&5 +echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 +if test "${ac_cv_prog_JBIBTEX+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + if test -n "$JBIBTEX"; then + ac_cv_prog_JBIBTEX="$JBIBTEX" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_JBIBTEX="jbibtex" + echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done +done + + test -z "$ac_cv_prog_JBIBTEX" && ac_cv_prog_JBIBTEX="false" +fi +fi +JBIBTEX=$ac_cv_prog_JBIBTEX +if test -n "$JBIBTEX"; then + echo "$as_me:$LINENO: result: $JBIBTEX" >&5 +echo "${ECHO_T}$JBIBTEX" >&6 +else + echo "$as_me:$LINENO: result: no" >&5 +echo "${ECHO_T}no" >&6 +fi + +# Extract the first word of "ptex", so it can be a program name with args. +set dummy ptex; ac_word=$2 +echo "$as_me:$LINENO: checking for $ac_word" >&5 +echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 +if test "${ac_cv_prog_PTEX+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + if test -n "$PTEX"; then + ac_cv_prog_PTEX="$PTEX" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_PTEX="ptex" + echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done +done + + test -z "$ac_cv_prog_PTEX" && ac_cv_prog_PTEX="false" +fi +fi +PTEX=$ac_cv_prog_PTEX +if test -n "$PTEX"; then + echo "$as_me:$LINENO: result: $PTEX" >&5 +echo "${ECHO_T}$PTEX" >&6 +else + echo "$as_me:$LINENO: result: no" >&5 +echo "${ECHO_T}no" >&6 +fi + +# Extract the first word of "texi2dvi", so it can be a program name with args. +set dummy texi2dvi; ac_word=$2 +echo "$as_me:$LINENO: checking for $ac_word" >&5 +echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 +if test "${ac_cv_prog_TEXI2DVI+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + if test -n "$TEXI2DVI"; then + ac_cv_prog_TEXI2DVI="$TEXI2DVI" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_TEXI2DVI="texi2dvi" + echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done +done + + test -z "$ac_cv_prog_TEXI2DVI" && ac_cv_prog_TEXI2DVI="false" +fi +fi +TEXI2DVI=$ac_cv_prog_TEXI2DVI +if test -n "$TEXI2DVI"; then + echo "$as_me:$LINENO: result: $TEXI2DVI" >&5 +echo "${ECHO_T}$TEXI2DVI" >&6 +else + echo "$as_me:$LINENO: result: no" >&5 +echo "${ECHO_T}no" >&6 +fi + + + ac_config_files="$ac_config_files Makefile" +cat >confcache <<\_ACEOF +# This file is a shell script that caches the results of configure +# tests run on this system so they can be shared between configure +# scripts and configure runs, see configure's option --config-cache. +# It is not useful on other systems. If it contains results you don't +# want to keep, you may remove or edit it. +# +# config.status only pays attention to the cache file if you give it +# the --recheck option to rerun configure. +# +# `ac_cv_env_foo' variables (set or unset) will be overridden when +# loading this file, other *unset* `ac_cv_foo' will be assigned the +# following values. + +_ACEOF + +# The following way of writing the cache mishandles newlines in values, +# but we know of no workaround that is simple, portable, and efficient. +# So, don't put newlines in cache variables' values. +# Ultrix sh set writes to stderr and can't be redirected directly, +# and sets the high bit in the cache file unless we assign to the vars. +{ + (set) 2>&1 | + case `(ac_space=' '; set | grep ac_space) 2>&1` in + *ac_space=\ *) + # `set' does not quote correctly, so add quotes (double-quote + # substitution turns \\\\ into \\, and sed turns \\ into \). + sed -n \ + "s/'/'\\\\''/g; + s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p" + ;; + *) + # `set' quotes correctly as required by POSIX, so do not add quotes. + sed -n \ + "s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1=\\2/p" + ;; + esac; +} | + sed ' + t clear + : clear + s/^\([^=]*\)=\(.*[{}].*\)$/test "${\1+set}" = set || &/ + t end + /^ac_cv_env/!s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/ + : end' >>confcache +if diff $cache_file confcache >/dev/null 2>&1; then :; else + if test -w $cache_file; then + test "x$cache_file" != "x/dev/null" && echo "updating cache $cache_file" + cat confcache >$cache_file + else + echo "not updating unwritable cache $cache_file" + fi +fi +rm -f confcache + +test "x$prefix" = xNONE && prefix=$ac_default_prefix +# Let make expand exec_prefix. +test "x$exec_prefix" = xNONE && exec_prefix='${prefix}' + +# VPATH may cause trouble with some makes, so we remove $(srcdir), +# ${srcdir} and @srcdir@ from VPATH if srcdir is ".", strip leading and +# trailing colons and then remove the whole line if VPATH becomes empty +# (actually we leave an empty line to preserve line numbers). +if test "x$srcdir" = x.; then + ac_vpsub='/^[ ]*VPATH[ ]*=/{ +s/:*\$(srcdir):*/:/; +s/:*\${srcdir}:*/:/; +s/:*@srcdir@:*/:/; +s/^\([^=]*=[ ]*\):*/\1/; +s/:*$//; +s/^[^=]*=[ ]*$//; +}' +fi + +# Transform confdefs.h into DEFS. +# Protect against shell expansion while executing Makefile rules. +# Protect against Makefile macro expansion. +# +# If the first sed substitution is executed (which looks for macros that +# take arguments), then we branch to the quote section. Otherwise, +# look for a macro that doesn't take arguments. +cat >confdef2opt.sed <<\_ACEOF +t clear +: clear +s,^[ ]*#[ ]*define[ ][ ]*\([^ (][^ (]*([^)]*)\)[ ]*\(.*\),-D\1=\2,g +t quote +s,^[ ]*#[ ]*define[ ][ ]*\([^ ][^ ]*\)[ ]*\(.*\),-D\1=\2,g +t quote +d +: quote +s,[ `~#$^&*(){}\\|;'"<>?],\\&,g +s,\[,\\&,g +s,\],\\&,g +s,\$,$$,g +p +_ACEOF +# We use echo to avoid assuming a particular line-breaking character. +# The extra dot is to prevent the shell from consuming trailing +# line-breaks from the sub-command output. A line-break within +# single-quotes doesn't work because, if this script is created in a +# platform that uses two characters for line-breaks (e.g., DOS), tr +# would break. +ac_LF_and_DOT=`echo; echo .` +DEFS=`sed -n -f confdef2opt.sed confdefs.h | tr "$ac_LF_and_DOT" ' .'` +rm -f confdef2opt.sed + + +ac_libobjs= +ac_ltlibobjs= +for ac_i in : $LIBOBJS; do test "x$ac_i" = x: && continue + # 1. Remove the extension, and $U if already installed. + ac_i=`echo "$ac_i" | + sed 's/\$U\././;s/\.o$//;s/\.obj$//'` + # 2. Add them. + ac_libobjs="$ac_libobjs $ac_i\$U.$ac_objext" + ac_ltlibobjs="$ac_ltlibobjs $ac_i"'$U.lo' +done +LIBOBJS=$ac_libobjs + +LTLIBOBJS=$ac_ltlibobjs + + + +: ${CONFIG_STATUS=./config.status} +ac_clean_files_save=$ac_clean_files +ac_clean_files="$ac_clean_files $CONFIG_STATUS" +{ echo "$as_me:$LINENO: creating $CONFIG_STATUS" >&5 +echo "$as_me: creating $CONFIG_STATUS" >&6;} +cat >$CONFIG_STATUS <<_ACEOF +#! $SHELL +# Generated by $as_me. +# Run this file to recreate the current configuration. +# Compiler output produced by configure, useful for debugging +# configure, is in config.log if it exists. + +debug=false +ac_cs_recheck=false +ac_cs_silent=false +SHELL=\${CONFIG_SHELL-$SHELL} +_ACEOF + +cat >>$CONFIG_STATUS <<\_ACEOF +## --------------------- ## +## M4sh Initialization. ## +## --------------------- ## + +# Be Bourne compatible +if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then + emulate sh + NULLCMD=: + # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which + # is contrary to our usage. Disable this feature. + alias -g '${1+"$@"}'='"$@"' +elif test -n "${BASH_VERSION+set}" && (set -o posix) >/dev/null 2>&1; then + set -o posix +fi +DUALCASE=1; export DUALCASE # for MKS sh + +# Support unset when possible. +if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then + as_unset=unset +else + as_unset=false +fi + + +# Work around bugs in pre-3.0 UWIN ksh. +$as_unset ENV MAIL MAILPATH +PS1='$ ' +PS2='> ' +PS4='+ ' + +# NLS nuisances. +for as_var in \ + LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \ + LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \ + LC_TELEPHONE LC_TIME +do + if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then + eval $as_var=C; export $as_var + else + $as_unset $as_var + fi +done + +# Required to use basename. +if expr a : '\(a\)' >/dev/null 2>&1; then + as_expr=expr +else + as_expr=false +fi + +if (basename /) >/dev/null 2>&1 && test "X`basename / 2>&1`" = "X/"; then + as_basename=basename +else + as_basename=false +fi + + +# Name of the executable. +as_me=`$as_basename "$0" || +$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ + X"$0" : 'X\(//\)$' \| \ + X"$0" : 'X\(/\)$' \| \ + . : '\(.\)' 2>/dev/null || +echo X/"$0" | + sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/; q; } + /^X\/\(\/\/\)$/{ s//\1/; q; } + /^X\/\(\/\).*/{ s//\1/; q; } + s/.*/./; q'` + + +# PATH needs CR, and LINENO needs CR and PATH. +# Avoid depending upon Character Ranges. +as_cr_letters='abcdefghijklmnopqrstuvwxyz' +as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' +as_cr_Letters=$as_cr_letters$as_cr_LETTERS +as_cr_digits='0123456789' +as_cr_alnum=$as_cr_Letters$as_cr_digits + +# The user is always right. +if test "${PATH_SEPARATOR+set}" != set; then + echo "#! /bin/sh" >conf$$.sh + echo "exit 0" >>conf$$.sh + chmod +x conf$$.sh + if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then + PATH_SEPARATOR=';' + else + PATH_SEPARATOR=: + fi + rm -f conf$$.sh +fi + + + as_lineno_1=$LINENO + as_lineno_2=$LINENO + as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null` + test "x$as_lineno_1" != "x$as_lineno_2" && + test "x$as_lineno_3" = "x$as_lineno_2" || { + # Find who we are. Look in the path if we contain no path at all + # relative or not. + case $0 in + *[\\/]* ) as_myself=$0 ;; + *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break +done + + ;; + esac + # We did not find ourselves, most probably we were run as `sh COMMAND' + # in which case we are not to be found in the path. + if test "x$as_myself" = x; then + as_myself=$0 + fi + if test ! -f "$as_myself"; then + { { echo "$as_me:$LINENO: error: cannot find myself; rerun with an absolute path" >&5 +echo "$as_me: error: cannot find myself; rerun with an absolute path" >&2;} + { (exit 1); exit 1; }; } + fi + case $CONFIG_SHELL in + '') + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for as_base in sh bash ksh sh5; do + case $as_dir in + /*) + if ("$as_dir/$as_base" -c ' + as_lineno_1=$LINENO + as_lineno_2=$LINENO + as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null` + test "x$as_lineno_1" != "x$as_lineno_2" && + test "x$as_lineno_3" = "x$as_lineno_2" ') 2>/dev/null; then + $as_unset BASH_ENV || test "${BASH_ENV+set}" != set || { BASH_ENV=; export BASH_ENV; } + $as_unset ENV || test "${ENV+set}" != set || { ENV=; export ENV; } + CONFIG_SHELL=$as_dir/$as_base + export CONFIG_SHELL + exec "$CONFIG_SHELL" "$0" ${1+"$@"} + fi;; + esac + done +done +;; + esac + + # Create $as_me.lineno as a copy of $as_myself, but with $LINENO + # uniformly replaced by the line number. The first 'sed' inserts a + # line-number line before each line; the second 'sed' does the real + # work. The second script uses 'N' to pair each line-number line + # with the numbered line, and appends trailing '-' during + # substitution so that $LINENO is not a special case at line end. + # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the + # second 'sed' script. Blame Lee E. McMahon for sed's syntax. :-) + sed '=' <$as_myself | + sed ' + N + s,$,-, + : loop + s,^\(['$as_cr_digits']*\)\(.*\)[$]LINENO\([^'$as_cr_alnum'_]\),\1\2\1\3, + t loop + s,-$,, + s,^['$as_cr_digits']*\n,, + ' >$as_me.lineno && + chmod +x $as_me.lineno || + { { echo "$as_me:$LINENO: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&5 +echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2;} + { (exit 1); exit 1; }; } + + # Don't try to exec as it changes $[0], causing all sort of problems + # (the dirname of $[0] is not the place where we might find the + # original and so on. Autoconf is especially sensible to this). + . ./$as_me.lineno + # Exit status is that of the last command. + exit +} + + +case `echo "testing\c"; echo 1,2,3`,`echo -n testing; echo 1,2,3` in + *c*,-n*) ECHO_N= ECHO_C=' +' ECHO_T=' ' ;; + *c*,* ) ECHO_N=-n ECHO_C= ECHO_T= ;; + *) ECHO_N= ECHO_C='\c' ECHO_T= ;; +esac + +if expr a : '\(a\)' >/dev/null 2>&1; then + as_expr=expr +else + as_expr=false +fi + +rm -f conf$$ conf$$.exe conf$$.file +echo >conf$$.file +if ln -s conf$$.file conf$$ 2>/dev/null; then + # We could just check for DJGPP; but this test a) works b) is more generic + # and c) will remain valid once DJGPP supports symlinks (DJGPP 2.04). + if test -f conf$$.exe; then + # Don't use ln at all; we don't have any links + as_ln_s='cp -p' + else + as_ln_s='ln -s' + fi +elif ln conf$$.file conf$$ 2>/dev/null; then + as_ln_s=ln +else + as_ln_s='cp -p' +fi +rm -f conf$$ conf$$.exe conf$$.file + +if mkdir -p . 2>/dev/null; then + as_mkdir_p=: +else + test -d ./-p && rmdir ./-p + as_mkdir_p=false +fi + +as_executable_p="test -f" + +# Sed expression to map a string onto a valid CPP name. +as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" + +# Sed expression to map a string onto a valid variable name. +as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" + + +# IFS +# We need space, tab and new line, in precisely that order. +as_nl=' +' +IFS=" $as_nl" + +# CDPATH. +$as_unset CDPATH + +exec 6>&1 + +# Open the log real soon, to keep \$[0] and so on meaningful, and to +# report actual input values of CONFIG_FILES etc. instead of their +# values after options handling. Logging --version etc. is OK. +exec 5>>config.log +{ + echo + sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX +## Running $as_me. ## +_ASBOX +} >&5 +cat >&5 <<_CSEOF + +This file was extended by $as_me, which was +generated by GNU Autoconf 2.59. Invocation command line was + + CONFIG_FILES = $CONFIG_FILES + CONFIG_HEADERS = $CONFIG_HEADERS + CONFIG_LINKS = $CONFIG_LINKS + CONFIG_COMMANDS = $CONFIG_COMMANDS + $ $0 $@ + +_CSEOF +echo "on `(hostname || uname -n) 2>/dev/null | sed 1q`" >&5 +echo >&5 +_ACEOF + +# Files that config.status was made for. +if test -n "$ac_config_files"; then + echo "config_files=\"$ac_config_files\"" >>$CONFIG_STATUS +fi + +if test -n "$ac_config_headers"; then + echo "config_headers=\"$ac_config_headers\"" >>$CONFIG_STATUS +fi + +if test -n "$ac_config_links"; then + echo "config_links=\"$ac_config_links\"" >>$CONFIG_STATUS +fi + +if test -n "$ac_config_commands"; then + echo "config_commands=\"$ac_config_commands\"" >>$CONFIG_STATUS +fi + +cat >>$CONFIG_STATUS <<\_ACEOF + +ac_cs_usage="\ +\`$as_me' instantiates files from templates according to the +current configuration. + +Usage: $0 [OPTIONS] [FILE]... + + -h, --help print this help, then exit + -V, --version print version number, then exit + -q, --quiet do not print progress messages + -d, --debug don't remove temporary files + --recheck update $as_me by reconfiguring in the same conditions + --file=FILE[:TEMPLATE] + instantiate the configuration file FILE + +Configuration files: +$config_files + +Report bugs to ." +_ACEOF + +cat >>$CONFIG_STATUS <<_ACEOF +ac_cs_version="\\ +config.status +configured by $0, generated by GNU Autoconf 2.59, + with options \\"`echo "$ac_configure_args" | sed 's/[\\""\`\$]/\\\\&/g'`\\" + +Copyright (C) 2003 Free Software Foundation, Inc. +This config.status script is free software; the Free Software Foundation +gives unlimited permission to copy, distribute and modify it." +srcdir=$srcdir +INSTALL="$INSTALL" +_ACEOF + +cat >>$CONFIG_STATUS <<\_ACEOF +# If no file are specified by the user, then we need to provide default +# value. By we need to know if files were specified by the user. +ac_need_defaults=: +while test $# != 0 +do + case $1 in + --*=*) + ac_option=`expr "x$1" : 'x\([^=]*\)='` + ac_optarg=`expr "x$1" : 'x[^=]*=\(.*\)'` + ac_shift=: + ;; + -*) + ac_option=$1 + ac_optarg=$2 + ac_shift=shift + ;; + *) # This is not an option, so the user has probably given explicit + # arguments. + ac_option=$1 + ac_need_defaults=false;; + esac + + case $ac_option in + # Handling of the options. +_ACEOF +cat >>$CONFIG_STATUS <<\_ACEOF + -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r) + ac_cs_recheck=: ;; + --version | --vers* | -V ) + echo "$ac_cs_version"; exit 0 ;; + --he | --h) + # Conflict between --help and --header + { { echo "$as_me:$LINENO: error: ambiguous option: $1 +Try \`$0 --help' for more information." >&5 +echo "$as_me: error: ambiguous option: $1 +Try \`$0 --help' for more information." >&2;} + { (exit 1); exit 1; }; };; + --help | --hel | -h ) + echo "$ac_cs_usage"; exit 0 ;; + --debug | --d* | -d ) + debug=: ;; + --file | --fil | --fi | --f ) + $ac_shift + CONFIG_FILES="$CONFIG_FILES $ac_optarg" + ac_need_defaults=false;; + --header | --heade | --head | --hea ) + $ac_shift + CONFIG_HEADERS="$CONFIG_HEADERS $ac_optarg" + ac_need_defaults=false;; + -q | -quiet | --quiet | --quie | --qui | --qu | --q \ + | -silent | --silent | --silen | --sile | --sil | --si | --s) + ac_cs_silent=: ;; + + # This is an error. + -*) { { echo "$as_me:$LINENO: error: unrecognized option: $1 +Try \`$0 --help' for more information." >&5 +echo "$as_me: error: unrecognized option: $1 +Try \`$0 --help' for more information." >&2;} + { (exit 1); exit 1; }; } ;; + + *) ac_config_targets="$ac_config_targets $1" ;; + + esac + shift +done + +ac_configure_extra_args= + +if $ac_cs_silent; then + exec 6>/dev/null + ac_configure_extra_args="$ac_configure_extra_args --silent" +fi + +_ACEOF +cat >>$CONFIG_STATUS <<_ACEOF +if \$ac_cs_recheck; then + echo "running $SHELL $0 " $ac_configure_args \$ac_configure_extra_args " --no-create --no-recursion" >&6 + exec $SHELL $0 $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion +fi + +_ACEOF + + + + + +cat >>$CONFIG_STATUS <<\_ACEOF +for ac_config_target in $ac_config_targets +do + case "$ac_config_target" in + # Handling of arguments. + "Makefile" ) CONFIG_FILES="$CONFIG_FILES Makefile" ;; + *) { { echo "$as_me:$LINENO: error: invalid argument: $ac_config_target" >&5 +echo "$as_me: error: invalid argument: $ac_config_target" >&2;} + { (exit 1); exit 1; }; };; + esac +done + +# If the user did not use the arguments to specify the items to instantiate, +# then the envvar interface is used. Set only those that are not. +# We use the long form for the default assignment because of an extremely +# bizarre bug on SunOS 4.1.3. +if $ac_need_defaults; then + test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files +fi + +# Have a temporary directory for convenience. Make it in the build tree +# simply because there is no reason to put it here, and in addition, +# creating and moving files from /tmp can sometimes cause problems. +# Create a temporary directory, and hook for its removal unless debugging. +$debug || +{ + trap 'exit_status=$?; rm -rf $tmp && exit $exit_status' 0 + trap '{ (exit 1); exit 1; }' 1 2 13 15 +} + +# Create a (secure) tmp directory for tmp files. + +{ + tmp=`(umask 077 && mktemp -d -q "./confstatXXXXXX") 2>/dev/null` && + test -n "$tmp" && test -d "$tmp" +} || +{ + tmp=./confstat$$-$RANDOM + (umask 077 && mkdir $tmp) +} || +{ + echo "$me: cannot create a temporary directory in ." >&2 + { (exit 1); exit 1; } +} + +_ACEOF + +cat >>$CONFIG_STATUS <<_ACEOF + +# +# CONFIG_FILES section. +# + +# No need to generate the scripts if there are no CONFIG_FILES. +# This happens for instance when ./config.status config.h +if test -n "\$CONFIG_FILES"; then + # Protect against being on the right side of a sed subst in config.status. + sed 's/,@/@@/; s/@,/@@/; s/,;t t\$/@;t t/; /@;t t\$/s/[\\\\&,]/\\\\&/g; + s/@@/,@/; s/@@/@,/; s/@;t t\$/,;t t/' >\$tmp/subs.sed <<\\CEOF +s,@SHELL@,$SHELL,;t t +s,@PATH_SEPARATOR@,$PATH_SEPARATOR,;t t +s,@PACKAGE_NAME@,$PACKAGE_NAME,;t t +s,@PACKAGE_TARNAME@,$PACKAGE_TARNAME,;t t +s,@PACKAGE_VERSION@,$PACKAGE_VERSION,;t t +s,@PACKAGE_STRING@,$PACKAGE_STRING,;t t +s,@PACKAGE_BUGREPORT@,$PACKAGE_BUGREPORT,;t t +s,@exec_prefix@,$exec_prefix,;t t +s,@prefix@,$prefix,;t t +s,@program_transform_name@,$program_transform_name,;t t +s,@bindir@,$bindir,;t t +s,@sbindir@,$sbindir,;t t +s,@libexecdir@,$libexecdir,;t t +s,@datadir@,$datadir,;t t +s,@sysconfdir@,$sysconfdir,;t t +s,@sharedstatedir@,$sharedstatedir,;t t +s,@localstatedir@,$localstatedir,;t t +s,@libdir@,$libdir,;t t +s,@includedir@,$includedir,;t t +s,@oldincludedir@,$oldincludedir,;t t +s,@infodir@,$infodir,;t t +s,@mandir@,$mandir,;t t +s,@build_alias@,$build_alias,;t t +s,@host_alias@,$host_alias,;t t +s,@target_alias@,$target_alias,;t t +s,@DEFS@,$DEFS,;t t +s,@ECHO_C@,$ECHO_C,;t t +s,@ECHO_N@,$ECHO_N,;t t +s,@ECHO_T@,$ECHO_T,;t t +s,@LIBS@,$LIBS,;t t +s,@INSTALL_PROGRAM@,$INSTALL_PROGRAM,;t t +s,@INSTALL_SCRIPT@,$INSTALL_SCRIPT,;t t +s,@INSTALL_DATA@,$INSTALL_DATA,;t t +s,@EMACS@,$EMACS,;t t +s,@JBIBTEX@,$JBIBTEX,;t t +s,@PTEX@,$PTEX,;t t +s,@TEXI2DVI@,$TEXI2DVI,;t t +s,@LIBOBJS@,$LIBOBJS,;t t +s,@LTLIBOBJS@,$LTLIBOBJS,;t t +CEOF + +_ACEOF + + cat >>$CONFIG_STATUS <<\_ACEOF + # Split the substitutions into bite-sized pieces for seds with + # small command number limits, like on Digital OSF/1 and HP-UX. + ac_max_sed_lines=48 + ac_sed_frag=1 # Number of current file. + ac_beg=1 # First line for current file. + ac_end=$ac_max_sed_lines # Line after last line for current file. + ac_more_lines=: + ac_sed_cmds= + while $ac_more_lines; do + if test $ac_beg -gt 1; then + sed "1,${ac_beg}d; ${ac_end}q" $tmp/subs.sed >$tmp/subs.frag + else + sed "${ac_end}q" $tmp/subs.sed >$tmp/subs.frag + fi + if test ! -s $tmp/subs.frag; then + ac_more_lines=false + else + # The purpose of the label and of the branching condition is to + # speed up the sed processing (if there are no `@' at all, there + # is no need to browse any of the substitutions). + # These are the two extra sed commands mentioned above. + (echo ':t + /@[a-zA-Z_][a-zA-Z_0-9]*@/!b' && cat $tmp/subs.frag) >$tmp/subs-$ac_sed_frag.sed + if test -z "$ac_sed_cmds"; then + ac_sed_cmds="sed -f $tmp/subs-$ac_sed_frag.sed" + else + ac_sed_cmds="$ac_sed_cmds | sed -f $tmp/subs-$ac_sed_frag.sed" + fi + ac_sed_frag=`expr $ac_sed_frag + 1` + ac_beg=$ac_end + ac_end=`expr $ac_end + $ac_max_sed_lines` + fi + done + if test -z "$ac_sed_cmds"; then + ac_sed_cmds=cat + fi +fi # test -n "$CONFIG_FILES" + +_ACEOF +cat >>$CONFIG_STATUS <<\_ACEOF +for ac_file in : $CONFIG_FILES; do test "x$ac_file" = x: && continue + # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in". + case $ac_file in + - | *:- | *:-:* ) # input from stdin + cat >$tmp/stdin + ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'` + ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;; + *:* ) ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'` + ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;; + * ) ac_file_in=$ac_file.in ;; + esac + + # Compute @srcdir@, @top_srcdir@, and @INSTALL@ for subdirectories. + ac_dir=`(dirname "$ac_file") 2>/dev/null || +$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$ac_file" : 'X\(//\)[^/]' \| \ + X"$ac_file" : 'X\(//\)$' \| \ + X"$ac_file" : 'X\(/\)' \| \ + . : '\(.\)' 2>/dev/null || +echo X"$ac_file" | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } + /^X\(\/\/\)[^/].*/{ s//\1/; q; } + /^X\(\/\/\)$/{ s//\1/; q; } + /^X\(\/\).*/{ s//\1/; q; } + s/.*/./; q'` + { if $as_mkdir_p; then + mkdir -p "$ac_dir" + else + as_dir="$ac_dir" + as_dirs= + while test ! -d "$as_dir"; do + as_dirs="$as_dir $as_dirs" + as_dir=`(dirname "$as_dir") 2>/dev/null || +$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$as_dir" : 'X\(//\)[^/]' \| \ + X"$as_dir" : 'X\(//\)$' \| \ + X"$as_dir" : 'X\(/\)' \| \ + . : '\(.\)' 2>/dev/null || +echo X"$as_dir" | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } + /^X\(\/\/\)[^/].*/{ s//\1/; q; } + /^X\(\/\/\)$/{ s//\1/; q; } + /^X\(\/\).*/{ s//\1/; q; } + s/.*/./; q'` + done + test ! -n "$as_dirs" || mkdir $as_dirs + fi || { { echo "$as_me:$LINENO: error: cannot create directory \"$ac_dir\"" >&5 +echo "$as_me: error: cannot create directory \"$ac_dir\"" >&2;} + { (exit 1); exit 1; }; }; } + + ac_builddir=. + +if test "$ac_dir" != .; then + ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'` + # A "../" for each directory in $ac_dir_suffix. + ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'` +else + ac_dir_suffix= ac_top_builddir= +fi + +case $srcdir in + .) # No --srcdir option. We are building in place. + ac_srcdir=. + if test -z "$ac_top_builddir"; then + ac_top_srcdir=. + else + ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'` + fi ;; + [\\/]* | ?:[\\/]* ) # Absolute path. + ac_srcdir=$srcdir$ac_dir_suffix; + ac_top_srcdir=$srcdir ;; + *) # Relative path. + ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix + ac_top_srcdir=$ac_top_builddir$srcdir ;; +esac + +# Do not use `cd foo && pwd` to compute absolute paths, because +# the directories may not exist. +case `pwd` in +.) ac_abs_builddir="$ac_dir";; +*) + case "$ac_dir" in + .) ac_abs_builddir=`pwd`;; + [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";; + *) ac_abs_builddir=`pwd`/"$ac_dir";; + esac;; +esac +case $ac_abs_builddir in +.) ac_abs_top_builddir=${ac_top_builddir}.;; +*) + case ${ac_top_builddir}. in + .) ac_abs_top_builddir=$ac_abs_builddir;; + [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;; + *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;; + esac;; +esac +case $ac_abs_builddir in +.) ac_abs_srcdir=$ac_srcdir;; +*) + case $ac_srcdir in + .) ac_abs_srcdir=$ac_abs_builddir;; + [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;; + *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;; + esac;; +esac +case $ac_abs_builddir in +.) ac_abs_top_srcdir=$ac_top_srcdir;; +*) + case $ac_top_srcdir in + .) ac_abs_top_srcdir=$ac_abs_builddir;; + [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;; + *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;; + esac;; +esac + + + case $INSTALL in + [\\/$]* | ?:[\\/]* ) ac_INSTALL=$INSTALL ;; + *) ac_INSTALL=$ac_top_builddir$INSTALL ;; + esac + + if test x"$ac_file" != x-; then + { echo "$as_me:$LINENO: creating $ac_file" >&5 +echo "$as_me: creating $ac_file" >&6;} + rm -f "$ac_file" + fi + # Let's still pretend it is `configure' which instantiates (i.e., don't + # use $as_me), people would be surprised to read: + # /* config.h. Generated by config.status. */ + if test x"$ac_file" = x-; then + configure_input= + else + configure_input="$ac_file. " + fi + configure_input=$configure_input"Generated from `echo $ac_file_in | + sed 's,.*/,,'` by configure." + + # First look for the input files in the build tree, otherwise in the + # src tree. + ac_file_inputs=`IFS=: + for f in $ac_file_in; do + case $f in + -) echo $tmp/stdin ;; + [\\/$]*) + # Absolute (can't be DOS-style, as IFS=:) + test -f "$f" || { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5 +echo "$as_me: error: cannot find input file: $f" >&2;} + { (exit 1); exit 1; }; } + echo "$f";; + *) # Relative + if test -f "$f"; then + # Build tree + echo "$f" + elif test -f "$srcdir/$f"; then + # Source tree + echo "$srcdir/$f" + else + # /dev/null tree + { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5 +echo "$as_me: error: cannot find input file: $f" >&2;} + { (exit 1); exit 1; }; } + fi;; + esac + done` || { (exit 1); exit 1; } +_ACEOF +cat >>$CONFIG_STATUS <<_ACEOF + sed "$ac_vpsub +$extrasub +_ACEOF +cat >>$CONFIG_STATUS <<\_ACEOF +:t +/@[a-zA-Z_][a-zA-Z_0-9]*@/!b +s,@configure_input@,$configure_input,;t t +s,@srcdir@,$ac_srcdir,;t t +s,@abs_srcdir@,$ac_abs_srcdir,;t t +s,@top_srcdir@,$ac_top_srcdir,;t t +s,@abs_top_srcdir@,$ac_abs_top_srcdir,;t t +s,@builddir@,$ac_builddir,;t t +s,@abs_builddir@,$ac_abs_builddir,;t t +s,@top_builddir@,$ac_top_builddir,;t t +s,@abs_top_builddir@,$ac_abs_top_builddir,;t t +s,@INSTALL@,$ac_INSTALL,;t t +" $ac_file_inputs | (eval "$ac_sed_cmds") >$tmp/out + rm -f $tmp/stdin + if test x"$ac_file" != x-; then + mv $tmp/out $ac_file + else + cat $tmp/out + rm -f $tmp/out + fi + +done +_ACEOF + +cat >>$CONFIG_STATUS <<\_ACEOF + +{ (exit 0); exit 0; } +_ACEOF +chmod +x $CONFIG_STATUS +ac_clean_files=$ac_clean_files_save + + +# configure is writing to config.log, and then calls config.status. +# config.status does its own redirection, appending to config.log. +# Unfortunately, on DOS this fails, as config.log is still kept open +# by configure, so config.status won't be able to write to it; its +# output is simply discarded. So we exec the FD to /dev/null, +# effectively closing config.log, so it can be properly (re)opened and +# appended to by config.status. When coming back to configure, we +# need to make the FD available again. +if test "$no_create" != yes; then + ac_cs_success=: + ac_config_status_args= + test "$silent" = yes && + ac_config_status_args="$ac_config_status_args --quiet" + exec 5>/dev/null + $SHELL $CONFIG_STATUS $ac_config_status_args || ac_cs_success=false + exec 5>>config.log + # Use ||, not &&, to avoid exiting from the if with $? = 1, which + # would make configure fail if this is the last instruction. + $ac_cs_success || { (exit 1); exit 1; } +fi + diff --git a/configure.ac b/configure.ac new file mode 100644 index 0000000..884e2ca --- /dev/null +++ b/configure.ac @@ -0,0 +1,18 @@ +AC_INIT(gnus-ja.texi) +AC_PROG_INSTALL + +dnl Apparently, if you run a shell window in Emacs, it sets the EMACS +dnl environment variable to 't'. Lets undo the damage. +if test "${EMACS}" = "t"; then + EMACS="" +fi + +AC_ARG_WITH(emacs,[ --with-emacs Use Emacs to build], + [ if test "${withval}" = "yes"; then EMACS=emacs; else EMACS=${withval}; fi ]) +AC_CHECK_PROG(EMACS, emacs, emacs, xemacs) + +AC_CHECK_PROG(JBIBTEX, jbibtex, jbibtex, false) +AC_CHECK_PROG(PTEX, ptex, ptex, false) +AC_CHECK_PROG(TEXI2DVI, texi2dvi, texi2dvi, false) + +AC_OUTPUT(Makefile) diff --git a/doclicense.texi b/doclicense.texi new file mode 100644 index 0000000..5bcd61b --- /dev/null +++ b/doclicense.texi @@ -0,0 +1,368 @@ +@c -*-texinfo-*- +@node GNU Free Documentation License, Intro, Copying, Top + +@appendix GNU Free Documentation License +@center Version 1.1, March 2000 + +@display +Copyright (C) 2000 Free Software Foundation, Inc. +51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + +Everyone is permitted to copy and distribute verbatim copies +of this license document, but changing it is not allowed. +@end display +@sp 1 +@enumerate 0 +@item +PREAMBLE + +The purpose of this License is to make a manual, textbook, or other +written document ``free'' in the sense of freedom: to assure everyone +the effective freedom to copy and redistribute it, with or without +modifying it, either commercially or noncommercially. Secondarily, +this License preserves for the author and publisher a way to get +credit for their work, while not being considered responsible for +modifications made by others. + +This License is a kind of ``copyleft'', which means that derivative +works of the document must themselves be free in the same sense. It +complements the GNU General Public License, which is a copyleft +license designed for free software. + +We have designed this License in order to use it for manuals for free +software, because free software needs free documentation: a free +program should come with manuals providing the same freedoms that the +software does. But this License is not limited to software manuals; +it can be used for any textual work, regardless of subject matter or +whether it is published as a printed book. We recommend this License +principally for works whose purpose is instruction or reference. + +@sp 1 +@item +APPLICABILITY AND DEFINITIONS + +This License applies to any manual or other work that contains a +notice placed by the copyright holder saying it can be distributed +under the terms of this License. The ``Document'', below, refers to any +such manual or work. Any member of the public is a licensee, and is +addressed as ``you''. + +A ``Modified Version'' of the Document means any work containing the +Document or a portion of it, either copied verbatim, or with +modifications and/or translated into another language. + +A ``Secondary Section'' is a named appendix or a front-matter section of +the Document that deals exclusively with the relationship of the +publishers or authors of the Document to the Document's overall subject +(or to related matters) and contains nothing that could fall directly +within that overall subject. (For example, if the Document is in part a +textbook of mathematics, a Secondary Section may not explain any +mathematics.) The relationship could be a matter of historical +connection with the subject or with related matters, or of legal, +commercial, philosophical, ethical or political position regarding +them. + +The ``Invariant Sections'' are certain Secondary Sections whose titles +are designated, as being those of Invariant Sections, in the notice +that says that the Document is released under this License. + +The ``Cover Texts'' are certain short passages of text that are listed, +as Front-Cover Texts or Back-Cover Texts, in the notice that says that +the Document is released under this License. + +A ``Transparent'' copy of the Document means a machine-readable copy, +represented in a format whose specification is available to the +general public, whose contents can be viewed and edited directly and +straightforwardly with generic text editors or (for images composed of +pixels) generic paint programs or (for drawings) some widely available +drawing editor, and that is suitable for input to text formatters or +for automatic translation to a variety of formats suitable for input +to text formatters. A copy made in an otherwise Transparent file +format whose markup has been designed to thwart or discourage +subsequent modification by readers is not Transparent. A copy that is +not ``Transparent'' is called ``Opaque''. + +Examples of suitable formats for Transparent copies include plain +ASCII without markup, Texinfo input format, LaTeX input format, SGML +or XML using a publicly available DTD, and standard-conforming simple +HTML designed for human modification. Opaque formats include +PostScript, PDF, proprietary formats that can be read and edited only +by proprietary word processors, SGML or XML for which the DTD and/or +processing tools are not generally available, and the +machine-generated HTML produced by some word processors for output +purposes only. + +The ``Title Page'' means, for a printed book, the title page itself, +plus such following pages as are needed to hold, legibly, the material +this License requires to appear in the title page. For works in +formats which do not have any title page as such, ``Title Page'' means +the text near the most prominent appearance of the work's title, +preceding the beginning of the body of the text. +@sp 1 +@item +VERBATIM COPYING + +You may copy and distribute the Document in any medium, either +commercially or noncommercially, provided that this License, the +copyright notices, and the license notice saying this License applies +to the Document are reproduced in all copies, and that you add no other +conditions whatsoever to those of this License. You may not use +technical measures to obstruct or control the reading or further +copying of the copies you make or distribute. However, you may accept +compensation in exchange for copies. If you distribute a large enough +number of copies you must also follow the conditions in section 3. + +You may also lend copies, under the same conditions stated above, and +you may publicly display copies. +@sp 1 +@item +COPYING IN QUANTITY + +If you publish printed copies of the Document numbering more than 100, +and the Document's license notice requires Cover Texts, you must enclose +the copies in covers that carry, clearly and legibly, all these Cover +Texts: Front-Cover Texts on the front cover, and Back-Cover Texts on +the back cover. Both covers must also clearly and legibly identify +you as the publisher of these copies. The front cover must present +the full title with all words of the title equally prominent and +visible. You may add other material on the covers in addition. +Copying with changes limited to the covers, as long as they preserve +the title of the Document and satisfy these conditions, can be treated +as verbatim copying in other respects. + +If the required texts for either cover are too voluminous to fit +legibly, you should put the first ones listed (as many as fit +reasonably) on the actual cover, and continue the rest onto adjacent +pages. + +If you publish or distribute Opaque copies of the Document numbering +more than 100, you must either include a machine-readable Transparent +copy along with each Opaque copy, or state in or with each Opaque copy +a publicly-accessible computer-network location containing a complete +Transparent copy of the Document, free of added material, which the +general network-using public has access to download anonymously at no +charge using public-standard network protocols. If you use the latter +option, you must take reasonably prudent steps, when you begin +distribution of Opaque copies in quantity, to ensure that this +Transparent copy will remain thus accessible at the stated location +until at least one year after the last time you distribute an Opaque +copy (directly or through your agents or retailers) of that edition to +the public. + +It is requested, but not required, that you contact the authors of the +Document well before redistributing any large number of copies, to give +them a chance to provide you with an updated version of the Document. +@sp 1 +@item +MODIFICATIONS + +You may copy and distribute a Modified Version of the Document under +the conditions of sections 2 and 3 above, provided that you release +the Modified Version under precisely this License, with the Modified +Version filling the role of the Document, thus licensing distribution +and modification of the Modified Version to whoever possesses a copy +of it. In addition, you must do these things in the Modified Version: + +A. Use in the Title Page (and on the covers, if any) a title distinct + from that of the Document, and from those of previous versions + (which should, if there were any, be listed in the History section + of the Document). You may use the same title as a previous version + if the original publisher of that version gives permission.@* +B. List on the Title Page, as authors, one or more persons or entities + responsible for authorship of the modifications in the Modified + Version, together with at least five of the principal authors of the + Document (all of its principal authors, if it has less than five).@* +C. State on the Title page the name of the publisher of the + Modified Version, as the publisher.@* +D. Preserve all the copyright notices of the Document.@* +E. Add an appropriate copyright notice for your modifications + adjacent to the other copyright notices.@* +F. Include, immediately after the copyright notices, a license notice + giving the public permission to use the Modified Version under the + terms of this License, in the form shown in the Addendum below.@* +G. Preserve in that license notice the full lists of Invariant Sections + and required Cover Texts given in the Document's license notice.@* +H. Include an unaltered copy of this License.@* +I. Preserve the section entitled ``History'', and its title, and add to + it an item stating at least the title, year, new authors, and + publisher of the Modified Version as given on the Title Page. If + there is no section entitled ``History'' in the Document, create one + stating the title, year, authors, and publisher of the Document as + given on its Title Page, then add an item describing the Modified + Version as stated in the previous sentence.@* +J. Preserve the network location, if any, given in the Document for + public access to a Transparent copy of the Document, and likewise + the network locations given in the Document for previous versions + it was based on. These may be placed in the ``History'' section. + You may omit a network location for a work that was published at + least four years before the Document itself, or if the original + publisher of the version it refers to gives permission.@* +K. In any section entitled ``Acknowledgements'' or ``Dedications'', + preserve the section's title, and preserve in the section all the + substance and tone of each of the contributor acknowledgements + and/or dedications given therein.@* +L. Preserve all the Invariant Sections of the Document, + unaltered in their text and in their titles. Section numbers + or the equivalent are not considered part of the section titles.@* +M. Delete any section entitled ``Endorsements''. Such a section + may not be included in the Modified Version.@* +N. Do not retitle any existing section as ``Endorsements'' + or to conflict in title with any Invariant Section.@* +@sp 1 +If the Modified Version includes new front-matter sections or +appendices that qualify as Secondary Sections and contain no material +copied from the Document, you may at your option designate some or all +of these sections as invariant. To do this, add their titles to the +list of Invariant Sections in the Modified Version's license notice. +These titles must be distinct from any other section titles. + +You may add a section entitled ``Endorsements'', provided it contains +nothing but endorsements of your Modified Version by various +parties--for example, statements of peer review or that the text has +been approved by an organization as the authoritative definition of a +standard. + +You may add a passage of up to five words as a Front-Cover Text, and a +passage of up to 25 words as a Back-Cover Text, to the end of the list +of Cover Texts in the Modified Version. Only one passage of +Front-Cover Text and one of Back-Cover Text may be added by (or +through arrangements made by) any one entity. If the Document already +includes a cover text for the same cover, previously added by you or +by arrangement made by the same entity you are acting on behalf of, +you may not add another; but you may replace the old one, on explicit +permission from the previous publisher that added the old one. + +The author(s) and publisher(s) of the Document do not by this License +give permission to use their names for publicity for or to assert or +imply endorsement of any Modified Version. +@sp 1 +@item +COMBINING DOCUMENTS + +You may combine the Document with other documents released under this +License, under the terms defined in section 4 above for modified +versions, provided that you include in the combination all of the +Invariant Sections of all of the original documents, unmodified, and +list them all as Invariant Sections of your combined work in its +license notice. + +The combined work need only contain one copy of this License, and +multiple identical Invariant Sections may be replaced with a single +copy. If there are multiple Invariant Sections with the same name but +different contents, make the title of each such section unique by +adding at the end of it, in parentheses, the name of the original +author or publisher of that section if known, or else a unique number. +Make the same adjustment to the section titles in the list of +Invariant Sections in the license notice of the combined work. + +In the combination, you must combine any sections entitled ``History'' +in the various original documents, forming one section entitled +``History''; likewise combine any sections entitled ``Acknowledgements'', +and any sections entitled ``Dedications''. You must delete all sections +entitled ``Endorsements.'' +@sp 1 +@item +COLLECTIONS OF DOCUMENTS + +You may make a collection consisting of the Document and other documents +released under this License, and replace the individual copies of this +License in the various documents with a single copy that is included in +the collection, provided that you follow the rules of this License for +verbatim copying of each of the documents in all other respects. + +You may extract a single document from such a collection, and distribute +it individually under this License, provided you insert a copy of this +License into the extracted document, and follow this License in all +other respects regarding verbatim copying of that document. +@sp 1 +@item +AGGREGATION WITH INDEPENDENT WORKS + +A compilation of the Document or its derivatives with other separate +and independent documents or works, in or on a volume of a storage or +distribution medium, does not as a whole count as a Modified Version +of the Document, provided no compilation copyright is claimed for the +compilation. Such a compilation is called an ``aggregate'', and this +License does not apply to the other self-contained works thus compiled +with the Document, on account of their being thus compiled, if they +are not themselves derivative works of the Document. + +If the Cover Text requirement of section 3 is applicable to these +copies of the Document, then if the Document is less than one quarter +of the entire aggregate, the Document's Cover Texts may be placed on +covers that surround only the Document within the aggregate. +Otherwise they must appear on covers around the whole aggregate. +@sp 1 +@item +TRANSLATION + +Translation is considered a kind of modification, so you may +distribute translations of the Document under the terms of section 4. +Replacing Invariant Sections with translations requires special +permission from their copyright holders, but you may include +translations of some or all Invariant Sections in addition to the +original versions of these Invariant Sections. You may include a +translation of this License provided that you also include the +original English version of this License. In case of a disagreement +between the translation and the original English version of this +License, the original English version will prevail. +@sp 1 +@item +TERMINATION + +You may not copy, modify, sublicense, or distribute the Document except +as expressly provided for under this License. Any other attempt to +copy, modify, sublicense or distribute the Document is void, and will +automatically terminate your rights under this License. However, +parties who have received copies, or rights, from you under this +License will not have their licenses terminated so long as such +parties remain in full compliance. +@sp 1 +@item +FUTURE REVISIONS OF THIS LICENSE + +The Free Software Foundation may publish new, revised versions +of the GNU Free Documentation License from time to time. Such new +versions will be similar in spirit to the present version, but may +differ in detail to address new problems or concerns. See +http://www.gnu.org/copyleft/. + +Each version of the License is given a distinguishing version number. +If the Document specifies that a particular numbered version of this +License ``or any later version'' applies to it, you have the option of +following the terms and conditions either of that specified version or +of any later version that has been published (not as a draft) by the +Free Software Foundation. If the Document does not specify a version +number of this License, you may choose any version ever published (not +as a draft) by the Free Software Foundation. + +@end enumerate + +@unnumberedsec ADDENDUM: How to use this License for your documents + +To use this License in a document you have written, include a copy of +the License in the document and put the following copyright and +license notices just after the title page: + +@smallexample +@group + + Copyright (C) @var{year} @var{your name}. + Permission is granted to copy, distribute and/or modify this document + under the terms of the GNU Free Documentation License, Version 1.1 + or any later version published by the Free Software Foundation; + with the Invariant Sections being @var{list their titles}, with the + Front-Cover Texts being @var{list}, and with the Back-Cover Texts being @var{list}. + A copy of the license is included in the section entitled ``GNU + Free Documentation License''. +@end group +@end smallexample +If you have no Invariant Sections, write ``with no Invariant Sections'' +instead of saying which ones are invariant. If you have no +Front-Cover Texts, write ``no Front-Cover Texts'' instead of +``Front-Cover Texts being @var{list}''; likewise for Back-Cover Texts. + +If your document contains nontrivial examples of program code, we +recommend releasing these examples in parallel under your choice of +free software license, such as the GNU General Public License, +to permit their use in free software. diff --git a/emacs-mime-ja.texi b/emacs-mime-ja.texi new file mode 100644 index 0000000..6134c5e --- /dev/null +++ b/emacs-mime-ja.texi @@ -0,0 +1,1799 @@ +\input texinfo + +@setfilename emacs-mime-ja +@settitle Emacs MIME Manual +@synindex fn cp +@synindex vr cp +@synindex pg cp + +@copying +This file documents the Emacs MIME interface functionality. + +Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003 + Free Software Foundation, Inc. + +@quotation +Permission is granted to copy, distribute and/or modify this document +under the terms of the GNU Free Documentation License, Version 1.1 or +any later version published by the Free Software Foundation; with no +Invariant Sections, with the Front-Cover texts being ``A GNU +Manual'', and with the Back-Cover Texts as in (a) below. A copy of the +license is included in the section entitled ``GNU Free Documentation +License'' in the Emacs manual. + +(a) The FSF's Back-Cover Text is: ``You have freedom to copy and modify +this GNU Manual, like GNU software. Copies published by the Free +Software Foundation raise funds for GNU development.'' + +This document is part of a collection distributed under the GNU Free +Documentation License. If you want to distribute this document +separately from the collection, you can do so by adding a copy of the +license to the document, as described in section 6 of the license. +@end quotation +@end copying + +@dircategory Emacs +@direntry +* Emacs MIME: (emacs-mime-ja). Emacs MIME de/composition library. +@end direntry +@iftex +@finalout +@end iftex +@setchapternewpage odd + +@titlepage +@title Emacs MIME Manual + +@author by Lars Magne Ingebrigtsen +@page +@vskip 0pt plus 1filll +@insertcopying +@end titlepage + +@node Top +@top Emacs MIME + +This manual documents the libraries used to compose and display +@acronym{MIME} messages. + +This manual is directed at users who want to modify the behavior of +the @acronym{MIME} encoding/decoding process or want a more detailed +picture of how the Emacs @acronym{MIME} library works, and people who want +to write functions and commands that manipulate @acronym{MIME} elements. + +@acronym{MIME} is short for @dfn{Multipurpose Internet Mail Extensions}. +This standard is documented in a number of RFCs; mainly RFC2045 (Format +of Internet Message Bodies), RFC2046 (Media Types), RFC2047 (Message +Header Extensions for Non-@acronym{ASCII} Text), RFC2048 (Registration +Procedures), RFC2049 (Conformance Criteria and Examples). It is highly +recommended that anyone who intends writing @acronym{MIME}-compliant software +read at least RFC2045 and RFC2047. + +@menu +* Decoding and Viewing:: A framework for decoding and viewing. +* Composing:: @acronym{MML}; a language for describing @acronym{MIME} parts. +* Interface Functions:: An abstraction over the basic functions. +* Basic Functions:: Utility and basic parsing functions. +* Standards:: A summary of RFCs and working documents used. +* Index:: Function and variable index. +@end menu + + +@node Decoding and Viewing +@chapter Decoding and Viewing + +This chapter deals with decoding and viewing @acronym{MIME} messages on a +higher level. + +The main idea is to first analyze a @acronym{MIME} article, and then allow +other programs to do things based on the list of @dfn{handles} that are +returned as a result of this analysis. + +@menu +* Dissection:: Analyzing a @acronym{MIME} message. +* Non-MIME:: Analyzing a non-@acronym{MIME} message. +* Handles:: Handle manipulations. +* Display:: Displaying handles. +* Display Customization:: Variables that affect display. +* Files and Directories:: Saving and naming attachments. +* New Viewers:: How to write your own viewers. +@end menu + + +@node Dissection +@section Dissection + +The @code{mm-dissect-buffer} is the function responsible for dissecting +a @acronym{MIME} article. If given a multipart message, it will recursively +descend the message, following the structure, and return a tree of +@acronym{MIME} handles that describes the structure of the message. + +@node Non-MIME +@section Non-MIME +@vindex mm-uu-configure-list + +Gnus also understands some non-@acronym{MIME} attachments, such as +postscript, uuencode, binhex, yenc, shar, forward, gnatsweb, pgp, +diff. Each of these features can be disabled by add an item into +@code{mm-uu-configure-list}. For example, + +@lisp +(require 'mm-uu) +(add-to-list 'mm-uu-configure-list '(pgp-signed . disabled)) +@end lisp + +@table @code +@item postscript +@findex postscript +Postscript file. + +@item uu +@findex uu +Uuencoded file. + +@item binhex +@findex binhex +Binhex encoded file. + +@item yenc +@findex yenc +Yenc encoded file. + +@item shar +@findex shar +Shar archive file. + +@item forward +@findex forward +Non-@acronym{MIME} forwarded message. + +@item gnatsweb +@findex gnatsweb +Gnatsweb attachment. + +@item pgp-signed +@findex pgp-signed +@acronym{PGP} signed clear text. + +@item pgp-encrypted +@findex pgp-encrypted +@acronym{PGP} encrypted clear text. + +@item pgp-key +@findex pgp-key +@acronym{PGP} public keys. + +@item emacs-sources +@findex emacs-sources +@vindex mm-uu-emacs-sources-regexp +Emacs source code. This item works only in the groups matching +@code{mm-uu-emacs-sources-regexp}. + +@item diff +@vindex diff +@vindex mm-uu-diff-groups-regexp +Patches. This is intended for groups where diffs of committed files +are automatically sent to. It only works in groups matching +@code{mm-uu-diff-groups-regexp}. + +@end table + +@node Handles +@section Handles + +A @acronym{MIME} handle is a list that fully describes a @acronym{MIME} +component. + +The following macros can be used to access elements in a handle: + +@table @code +@item mm-handle-buffer +@findex mm-handle-buffer +Return the buffer that holds the contents of the undecoded @acronym{MIME} +part. + +@item mm-handle-type +@findex mm-handle-type +Return the parsed @code{Content-Type} of the part. + +@item mm-handle-encoding +@findex mm-handle-encoding +Return the @code{Content-Transfer-Encoding} of the part. + +@item mm-handle-undisplayer +@findex mm-handle-undisplayer +Return the object that can be used to remove the displayed part (if it +has been displayed). + +@item mm-handle-set-undisplayer +@findex mm-handle-set-undisplayer +Set the undisplayer object. + +@item mm-handle-disposition +@findex mm-handle-disposition +Return the parsed @code{Content-Disposition} of the part. + +@item mm-handle-disposition +@findex mm-handle-disposition +Return the description of the part. + +@item mm-get-content-id +Returns the handle(s) referred to by @code{Content-ID}. + +@end table + + +@node Display +@section Display + +Functions for displaying, removing and saving. + +@table @code +@item mm-display-part +@findex mm-display-part +Display the part. + +@item mm-remove-part +@findex mm-remove-part +Remove the part (if it has been displayed). + +@item mm-inlinable-p +@findex mm-inlinable-p +Say whether a @acronym{MIME} type can be displayed inline. + +@item mm-automatic-display-p +@findex mm-automatic-display-p +Say whether a @acronym{MIME} type should be displayed automatically. + +@item mm-destroy-part +@findex mm-destroy-part +Free all resources occupied by a part. + +@item mm-save-part +@findex mm-save-part +Offer to save the part in a file. + +@item mm-pipe-part +@findex mm-pipe-part +Offer to pipe the part to some process. + +@item mm-interactively-view-part +@findex mm-interactively-view-part +Prompt for a mailcap method to use to view the part. + +@end table + + +@node Display Customization +@section Display Customization + +@table @code + +@item mm-inline-media-tests +@vindex mm-inline-media-tests +This is an alist where the key is a @acronym{MIME} type, the second element +is a function to display the part @dfn{inline} (i.e., inside Emacs), and +the third element is a form to be @code{eval}ed to say whether the part +can be displayed inline. + +This variable specifies whether a part @emph{can} be displayed inline, +and, if so, how to do it. It does not say whether parts are +@emph{actually} displayed inline. + +@item mm-inlined-types +@vindex mm-inlined-types +This, on the other hand, says what types are to be displayed inline, if +they satisfy the conditions set by the variable above. It's a list of +@acronym{MIME} media types. + +@item mm-automatic-display +@vindex mm-automatic-display +This is a list of types that are to be displayed ``automatically'', but +only if the above variable allows it. That is, only inlinable parts can +be displayed automatically. + +@item mm-automatic-external-display +@vindex mm-automatic-external-display +This is a list of types that will be displayed automatically in an +external viewer. + +@item mm-keep-viewer-alive-types +@vindex mm-keep-viewer-alive-types +This is a list of media types for which the external viewer will not +be killed when selecting a different article. + +@item mm-attachment-override-types +@vindex mm-attachment-override-types +Some @acronym{MIME} agents create parts that have a content-disposition of +@samp{attachment}. This variable allows overriding that disposition and +displaying the part inline. (Note that the disposition is only +overridden if we are able to, and want to, display the part inline.) + +@item mm-discouraged-alternatives +@vindex mm-discouraged-alternatives +List of @acronym{MIME} types that are discouraged when viewing +@samp{multipart/alternative}. Viewing agents are supposed to view the +last possible part of a message, as that is supposed to be the richest. +However, users may prefer other types instead, and this list says what +types are most unwanted. If, for instance, @samp{text/html} parts are +very unwanted, and @samp{text/richtext} parts are somewhat unwanted, +you could say something like: + +@lisp +(setq mm-discouraged-alternatives + '("text/html" "text/richtext") + mm-automatic-display + (remove "text/html" mm-automatic-display)) +@end lisp + +@item mm-inline-large-images +@vindex mm-inline-large-images +When displaying inline images that are larger than the window, Emacs +does not enable scrolling, which means that you cannot see the whole +image. To prevent this, the library tries to determine the image size +before displaying it inline, and if it doesn't fit the window, the +library will display it externally (e.g. with @samp{ImageMagick} or +@samp{xv}). Setting this variable to @code{t} disables this check and +makes the library display all inline images as inline, regardless of +their size. + +@item mm-inline-override-types +@vindex mm-inline-override-types +@code{mm-inlined-types} may include regular expressions, for example to +specify that all @samp{text/.*} parts be displayed inline. If a user +prefers to have a type that matches such a regular expression be treated +as an attachment, that can be accomplished by setting this variable to a +list containing that type. For example assuming @code{mm-inlined-types} +includes @samp{text/.*}, then including @samp{text/html} in this +variable will cause @samp{text/html} parts to be treated as attachments. + +@item mm-text-html-renderer +@vindex mm-text-html-renderer +This selects the function used to render @acronym{HTML}. The predefined +renderers are selected by the symbols @code{w3}, +@code{w3m}@footnote{See @uref{http://emacs-w3m.namazu.org/} for more +information about emacs-w3m}, @code{links}, @code{lynx}, +@code{w3m-standalone} or @code{html2text}. If @code{nil} use an +external viewer. You can also specify a function, which will be +called with a @acronym{MIME} handle as the argument. + +@item mm-inline-text-html-with-images +@vindex mm-inline-text-html-with-images +Some @acronym{HTML} mails might have the trick of spammers using +@samp{} tags. It is likely to be intended to verify whether you +have read the mail. You can prevent your personal informations from +leaking by setting this option to @code{nil} (which is the default). +It is currently ignored by Emacs/w3. For emacs-w3m, you may use the +command @kbd{t} on the image anchor to show an image even if it is +@code{nil}.@footnote{The command @kbd{T} will load all images. If you +have set the option @code{w3m-key-binding} to @code{info}, use @kbd{i} +or @kbd{I} instead.} + +@item mm-w3m-safe-url-regexp +@vindex mm-w3m-safe-url-regexp +A regular expression that matches safe URL names, i.e. URLs that are +unlikely to leak personal information when rendering @acronym{HTML} +email (the default value is @samp{\\`cid:}). If @code{nil} consider +all URLs safe. + +@item mm-inline-text-html-with-w3m-keymap +@vindex mm-inline-text-html-with-w3m-keymap +You can use emacs-w3m command keys in the inlined text/html part by +setting this option to non-@code{nil}. The default value is @code{t}. + +@item mm-external-terminal-program +@vindex mm-external-terminal-program +The program used to start an external terminal. + +@item mm-enable-external +@vindex mm-enable-external +Indicate whether external @acronym{MIME} handlers should be used. + +If @code{t}, all defined external @acronym{MIME} handlers are used. If +@code{nil}, files are saved to disk (@code{mailcap-save-binary-file}). +If it is the symbol @code{ask}, you are prompted before the external +@acronym{MIME} handler is invoked. + +When you launch an attachment through mailcap (@pxref{mailcap}) an +attempt is made to use a safe viewer with the safest options---this isn't +the case if you save it to disk and launch it in a different way +(command line or double-clicking). Anyhow, if you want to be sure not +to launch any external programs, set this variable to @code{nil} or +@code{ask}. + +@end table + +@node Files and Directories +@section Files and Directories + +@table @code + +@item mm-default-directory +@vindex mm-default-directory +The default directory for saving attachments. If @code{nil} use +@code{default-directory}. + +@item mm-tmp-directory +@vindex mm-tmp-directory +Directory for storing temporary files. + +@item mm-file-name-rewrite-functions +@vindex mm-file-name-rewrite-functions +A list of functions used for rewriting file names of @acronym{MIME} +parts. Each function is applied successively to the file name. +Ready-made functions include + +@table @code +@item mm-file-name-delete-control +@findex mm-file-name-delete-control +Delete all control characters. + +@item mm-file-name-delete-gotchas +@findex mm-file-name-delete-gotchas +Delete characters that could have unintended consequences when used +with flawed shell scripts, i.e. @samp{|}, @samp{>} and @samp{<}; and +@samp{-}, @samp{.} as the first character. + +@item mm-file-name-delete-whitespace +@findex mm-file-name-delete-whitespace +Remove all whitespace. + +@item mm-file-name-trim-whitespace +@findex mm-file-name-trim-whitespace +Remove leading and trailing whitespace. + +@item mm-file-name-collapse-whitespace +@findex mm-file-name-collapse-whitespace +Collapse multiple whitespace characters. + +@item mm-file-name-replace-whitespace +@findex mm-file-name-replace-whitespace +@vindex mm-file-name-replace-whitespace +Replace whitespace with underscores. Set the variable +@code{mm-file-name-replace-whitespace} to any other string if you do +not like underscores. +@end table + +The standard Emacs functions @code{capitalize}, @code{downcase}, +@code{upcase} and @code{upcase-initials} might also prove useful. + +@item mm-path-name-rewrite-functions +@vindex mm-path-name-rewrite-functions +List of functions used for rewriting the full file names of @acronym{MIME} +parts. This is used when viewing parts externally, and is meant for +transforming the absolute name so that non-compliant programs can find +the file where it's saved. + +@end table + +@node New Viewers +@section New Viewers + +Here's an example viewer for displaying @code{text/enriched} inline: + +@lisp +(defun mm-display-enriched-inline (handle) + (let (text) + (with-temp-buffer + (mm-insert-part handle) + (save-window-excursion + (enriched-decode (point-min) (point-max)) + (setq text (buffer-string)))) + (mm-insert-inline handle text))) +@end lisp + +We see that the function takes a @acronym{MIME} handle as its parameter. It +then goes to a temporary buffer, inserts the text of the part, does some +work on the text, stores the result, goes back to the buffer it was +called from and inserts the result. + +The two important helper functions here are @code{mm-insert-part} and +@code{mm-insert-inline}. The first function inserts the text of the +handle in the current buffer. It handles charset and/or content +transfer decoding. The second function just inserts whatever text you +tell it to insert, but it also sets things up so that the text can be +``undisplayed'' in a convenient manner. + + +@node Composing +@chapter Composing +@cindex Composing +@cindex MIME Composing +@cindex MML +@cindex MIME Meta Language + +Creating a @acronym{MIME} message is boring and non-trivial. Therefore, +a library called @code{mml} has been defined that parses a language +called @acronym{MML} (@acronym{MIME} Meta Language) and generates +@acronym{MIME} messages. + +@findex mml-generate-mime +The main interface function is @code{mml-generate-mime}. It will +examine the contents of the current (narrowed-to) buffer and return a +string containing the @acronym{MIME} message. + +@menu +* Simple MML Example:: An example @acronym{MML} document. +* MML Definition:: All valid @acronym{MML} elements. +* Advanced MML Example:: Another example @acronym{MML} document. +* Encoding Customization:: Variables that affect encoding. +* Charset Translation:: How charsets are mapped from @sc{mule} to @acronym{MIME}. +* Conversion:: Going from @acronym{MIME} to @acronym{MML} and vice versa. +* Flowed text:: Soft and hard newlines. +@end menu + + +@node Simple MML Example +@section Simple MML Example + +Here's a simple @samp{multipart/alternative}: + +@example +<#multipart type=alternative> +This is a plain text part. +<#part type=text/enriched> +
This is a centered enriched part
+<#/multipart> +@end example + +After running this through @code{mml-generate-mime}, we get this: + +@example +Content-Type: multipart/alternative; boundary="=-=-=" + + +--=-=-= + + +This is a plain text part. + +--=-=-= +Content-Type: text/enriched + + +
This is a centered enriched part
+ +--=-=-=-- +@end example + + +@node MML Definition +@section MML Definition + +The @acronym{MML} language is very simple. It looks a bit like an SGML +application, but it's not. + +The main concept of @acronym{MML} is the @dfn{part}. Each part can be of a +different type or use a different charset. The way to delineate a part +is with a @samp{<#part ...>} tag. Multipart parts can be introduced +with the @samp{<#multipart ...>} tag. Parts are ended by the +@samp{<#/part>} or @samp{<#/multipart>} tags. Parts started with the +@samp{<#part ...>} tags are also closed by the next open tag. + +There's also the @samp{<#external ...>} tag. These introduce +@samp{external/message-body} parts. + +Each tag can contain zero or more parameters on the form +@samp{parameter=value}. The values may be enclosed in quotation marks, +but that's not necessary unless the value contains white space. So +@samp{filename=/home/user/#hello$^yes} is perfectly valid. + +The following parameters have meaning in @acronym{MML}; parameters that have no +meaning are ignored. The @acronym{MML} parameter names are the same as the +@acronym{MIME} parameter names; the things in the parentheses say which +header it will be used in. + +@table @samp +@item type +The @acronym{MIME} type of the part (@code{Content-Type}). + +@item filename +Use the contents of the file in the body of the part +(@code{Content-Disposition}). + +@item charset +The contents of the body of the part are to be encoded in the character +set specified (@code{Content-Type}). @xref{Charset Translation}. + +@item name +Might be used to suggest a file name if the part is to be saved +to a file (@code{Content-Type}). + +@item disposition +Valid values are @samp{inline} and @samp{attachment} +(@code{Content-Disposition}). + +@item encoding +Valid values are @samp{7bit}, @samp{8bit}, @samp{quoted-printable} and +@samp{base64} (@code{Content-Transfer-Encoding}). @xref{Charset +Translation}. + +@item description +A description of the part (@code{Content-Description}). + +@item creation-date +RFC822 date when the part was created (@code{Content-Disposition}). + +@item modification-date +RFC822 date when the part was modified (@code{Content-Disposition}). + +@item read-date +RFC822 date when the part was read (@code{Content-Disposition}). + +@item recipients +Who to encrypt/sign the part to. This field is used to override any +auto-detection based on the To/CC headers. + +@item sender +Identity used to sign the part. This field is used to override the +default key used. + +@item size +The size (in octets) of the part (@code{Content-Disposition}). + +@item sign +What technology to sign this @acronym{MML} part with (@code{smime}, @code{pgp} +or @code{pgpmime}) + +@item encrypt +What technology to encrypt this @acronym{MML} part with (@code{smime}, +@code{pgp} or @code{pgpmime}) + +@end table + +Parameters for @samp{text/plain}: + +@table @samp +@item format +Formatting parameter for the text, valid values include @samp{fixed} +(the default) and @samp{flowed}. Normally you do not specify this +manually, since it requires the textual body to be formatted in a +special way described in RFC 2646. @xref{Flowed text}. +@end table + +Parameters for @samp{application/octet-stream}: + +@table @samp +@item type +Type of the part; informal---meant for human readers +(@code{Content-Type}). +@end table + +Parameters for @samp{message/external-body}: + +@table @samp +@item access-type +A word indicating the supported access mechanism by which the file may +be obtained. Values include @samp{ftp}, @samp{anon-ftp}, @samp{tftp}, +@samp{localfile}, and @samp{mailserver}. (@code{Content-Type}.) + +@item expiration +The RFC822 date after which the file may no longer be fetched. +(@code{Content-Type}.) + +@item size +The size (in octets) of the file. (@code{Content-Type}.) + +@item permission +Valid values are @samp{read} and @samp{read-write} +(@code{Content-Type}). + +@end table + +Parameters for @samp{sign=smime}: + +@table @samp + +@item keyfile +File containing key and certificate for signer. + +@end table + +Parameters for @samp{encrypt=smime}: + +@table @samp + +@item certfile +File containing certificate for recipient. + +@end table + + +@node Advanced MML Example +@section Advanced MML Example + +Here's a complex multipart message. It's a @samp{multipart/mixed} that +contains many parts, one of which is a @samp{multipart/alternative}. + +@example +<#multipart type=mixed> +<#part type=image/jpeg filename=~/rms.jpg disposition=inline> +<#multipart type=alternative> +This is a plain text part. +<#part type=text/enriched name=enriched.txt> +
This is a centered enriched part
+<#/multipart> +This is a new plain text part. +<#part disposition=attachment> +This plain text part is an attachment. +<#/multipart> +@end example + +And this is the resulting @acronym{MIME} message: + +@example +Content-Type: multipart/mixed; boundary="=-=-=" + + +--=-=-= + + + +--=-=-= +Content-Type: image/jpeg; + filename="~/rms.jpg" +Content-Disposition: inline; + filename="~/rms.jpg" +Content-Transfer-Encoding: base64 + +/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcGBQgHBwcJCQgKDBQNDAsLDBkSEw8UHRof +Hh0aHBwgJC4nICIsIxwcKDcpLDAxNDQ0Hyc5PTgyPC4zNDL/wAALCAAwADABAREA/8QAHwAA +AQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQR +BRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6Q0RF +RkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ip +qrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/9oACAEB +AAA/AO/rifFHjldNuGsrDa0qcSSHkA+gHrXKw+LtWLrMb+RgTyhbr+HSug07xNqV9fQtZrNI +AyiaE/NuBPOOOP0rvRNE880KOC8TbXXGCv1FPqjrF4LDR7u5L7SkTFT/ALWOP1xXgTuXfc7E +sx6nua6rwp4IvvEM8chCxWxOdzn7wz6V9AaB4S07w9p5itow0rDLSY5Pt9K43xO66P4xs71m +2QXiGCbA4yOVJ9+1aYORkdK434lyNH4ahCnG66VT9Nj15JFbPdX0MS43M4VQf5/yr2vSpLnw +5ZW8dlCZ8KFXjOPX0/mK6rSPEGt3Angu44fNEReHYNvIH3TzXDeKNO8RX+kSX2ouZkicTIOc +L+g7E810ulFjpVtv3bwgB3HJyK5L4quY/C9sVxk3ij/xx6850u7t1mtp/wDlpEw3An3Jr3Dw +34gsbWza4nBlhC5LDsaW6+IFgupQyCF3iHH7gA7c9R9ay7zx6t7aX9jHC4smhfBkGCvHGfrm +tLQ7hbnRrV1GPkAP1x1/Hr+Ncr8Vzjwrbf8AX6v/AKA9eQRyYlQk8Yx9K6XTNbkgia2ciSIn +7p5Ga9Atte0LTLKO6it4i7dVRFJDcZ4PvXN+JvEMF9bILVGXJLSZ4zkjivRPDaeX4b08HOTC +pOffmua+KkbS+GLVUGT9tT/0B68eeIpIFYjB70+OOVXyoOM9+M1eaWeCLzHPyHGO/NVWvJJm +jQ8KGH1NfQWhXSXmh2c8eArRLwO3HSv/2Q== + +--=-=-= +Content-Type: multipart/alternative; boundary="==-=-=" + + +--==-=-= + + +This is a plain text part. + +--==-=-= +Content-Type: text/enriched; + name="enriched.txt" + + +
This is a centered enriched part
+ +--==-=-=-- + +--=-=-= + +This is a new plain text part. + +--=-=-= +Content-Disposition: attachment + + +This plain text part is an attachment. + +--=-=-=-- +@end example + +@node Encoding Customization +@section Encoding Customization + +@table @code + +@item mm-body-charset-encoding-alist +@vindex mm-body-charset-encoding-alist +Mapping from @acronym{MIME} charset to encoding to use. This variable is +usually used except, e.g., when other requirements force a specific +encoding (digitally signed messages require 7bit encodings). The +default is + +@lisp +((iso-2022-jp . 7bit) + (iso-2022-jp-2 . 7bit) + (utf-16 . base64) + (utf-16be . base64) + (utf-16le . base64)) +@end lisp + +As an example, if you do not want to have ISO-8859-1 characters +quoted-printable encoded, you may add @code{(iso-8859-1 . 8bit)} to +this variable. You can override this setting on a per-message basis +by using the @code{encoding} @acronym{MML} tag (@pxref{MML Definition}). + +@item mm-coding-system-priorities +@vindex mm-coding-system-priorities +Prioritize coding systems to use for outgoing messages. The default +is @code{nil}, which means to use the defaults in Emacs. It is a list of +coding system symbols (aliases of coding systems are also allowed, use +@kbd{M-x describe-coding-system} to make sure you are specifying correct +coding system names). For example, if you have configured Emacs +to prefer UTF-8, but wish that outgoing messages should be sent in +ISO-8859-1 if possible, you can set this variable to +@code{(iso-8859-1)}. You can override this setting on a per-message +basis by using the @code{charset} @acronym{MML} tag (@pxref{MML Definition}). + +@item mm-content-transfer-encoding-defaults +@vindex mm-content-transfer-encoding-defaults +Mapping from @acronym{MIME} types to encoding to use. This variable is usually +used except, e.g., when other requirements force a safer encoding +(digitally signed messages require 7bit encoding). Besides the normal +@acronym{MIME} encodings, @code{qp-or-base64} may be used to indicate that for +each case the most efficient of quoted-printable and base64 should be +used. + +@code{qp-or-base64} has another effect. It will fold long lines so that +MIME parts may not be broken by MTA. So do @code{quoted-printable} and +@code{base64}. + +Note that it affects body encoding only when a part is a raw forwarded +message (which will be made by @code{gnus-summary-mail-forward} with the +arg 2 for example) or is neither the @samp{text/*} type nor the +@samp{message/*} type. Even though in those cases, you can override +this setting on a per-message basis by using the @code{encoding} +@acronym{MML} tag (@pxref{MML Definition}). + +@item mm-use-ultra-safe-encoding +@vindex mm-use-ultra-safe-encoding +When this is non-@code{nil}, it means that textual parts are encoded as +quoted-printable if they contain lines longer than 76 characters or +starting with "From " in the body. Non-7bit encodings (8bit, binary) +are generally disallowed. This reduce the probability that a non-8bit +clean MTA or MDA changes the message. This should never be set +directly, but bound by other functions when necessary (e.g., when +encoding messages that are to be digitally signed). + +@end table + +@node Charset Translation +@section Charset Translation +@cindex charsets + +During translation from @acronym{MML} to @acronym{MIME}, for each +@acronym{MIME} part which has been composed inside Emacs, an appropriate +charset has to be chosen. + +@vindex mail-parse-charset +If you are running a non-@sc{mule} Emacs, this process is simple: If the +part contains any non-@acronym{ASCII} (8-bit) characters, the @acronym{MIME} charset +given by @code{mail-parse-charset} (a symbol) is used. (Never set this +variable directly, though. If you want to change the default charset, +please consult the documentation of the package which you use to process +@acronym{MIME} messages. +@xref{Various Message Variables, , Various Message Variables, message, + Message Manual}, for example.) +If there are only @acronym{ASCII} characters, the @acronym{MIME} charset US-ASCII is +used, of course. + +@cindex MULE +@cindex UTF-8 +@cindex Unicode +@vindex mm-mime-mule-charset-alist +Things are slightly more complicated when running Emacs with @sc{mule} +support. In this case, a list of the @sc{mule} charsets used in the +part is obtained, and the @sc{mule} charsets are translated to @acronym{MIME} +charsets by consulting the variable @code{mm-mime-mule-charset-alist}. +If this results in a single @acronym{MIME} charset, this is used to encode +the part. But if the resulting list of @acronym{MIME} charsets contains more +than one element, two things can happen: If it is possible to encode the +part via UTF-8, this charset is used. (For this, Emacs must support +the @code{utf-8} coding system, and the part must consist entirely of +characters which have Unicode counterparts.) If UTF-8 is not available +for some reason, the part is split into several ones, so that each one +can be encoded with a single @acronym{MIME} charset. The part can only be +split at line boundaries, though---if more than one @acronym{MIME} charset is +required to encode a single line, it is not possible to encode the part. + +When running Emacs with @sc{mule} support, the preferences for which +coding system to use is inherited from Emacs itself. This means that +if Emacs is set up to prefer UTF-8, it will be used when encoding +messages. You can modify this by altering the +@code{mm-coding-system-priorities} variable though (@pxref{Encoding +Customization}). + +The charset to be used can be overridden by setting the @code{charset} +@acronym{MML} tag (@pxref{MML Definition}) when composing the message. + +The encoding of characters (quoted-printable, 8bit etc) is orthogonal +to the discussion here, and is controlled by the variables +@code{mm-body-charset-encoding-alist} and +@code{mm-content-transfer-encoding-defaults} (@pxref{Encoding +Customization}). + +@node Conversion +@section Conversion + +@findex mime-to-mml +A (multipart) @acronym{MIME} message can be converted to @acronym{MML} +with the @code{mime-to-mml} function. It works on the message in the +current buffer, and substitutes @acronym{MML} markup for @acronym{MIME} +boundaries. Non-textual parts do not have their contents in the buffer, +but instead have the contents in separate buffers that are referred to +from the @acronym{MML} tags. + +@findex mml-to-mime +An @acronym{MML} message can be converted back to @acronym{MIME} by the +@code{mml-to-mime} function. + +These functions are in certain senses ``lossy''---you will not get back +an identical message if you run @code{mime-to-mml} and then +@code{mml-to-mime}. Not only will trivial things like the order of the +headers differ, but the contents of the headers may also be different. +For instance, the original message may use base64 encoding on text, +while @code{mml-to-mime} may decide to use quoted-printable encoding, and +so on. + +In essence, however, these two functions should be the inverse of each +other. The resulting contents of the message should remain equivalent, +if not identical. + + +@node Flowed text +@section Flowed text +@cindex format=flowed + +The Emacs @acronym{MIME} library will respect the @code{use-hard-newlines} +variable (@pxref{Hard and Soft Newlines, ,Hard and Soft Newlines, +emacs, Emacs Manual}) when encoding a message, and the +``format=flowed'' Content-Type parameter when decoding a message. + +On encoding text, regardless of @code{use-hard-newlines}, lines +terminated by soft newline characters are filled together and wrapped +after the column decided by @code{fill-flowed-encode-column}. +Quotation marks (matching @samp{^>* ?}) are respected. The variable +controls how the text will look in a client that does not support +flowed text, the default is to wrap after 66 characters. If hard +newline characters are not present in the buffer, no flow encoding +occurs. + +On decoding flowed text, lines with soft newline characters are filled +together and wrapped after the column decided by +@code{fill-flowed-display-column}. The default is to wrap after +@code{fill-column}. + +@table @code +@item mm-fill-flowed +@vindex mm-fill-flowed +If non-@code{nil} a format=flowed article will be displayed flowed. +@end table + + +@node Interface Functions +@chapter Interface Functions +@cindex interface functions +@cindex mail-parse + +The @code{mail-parse} library is an abstraction over the actual +low-level libraries that are described in the next chapter. + +Standards change, and so programs have to change to fit in the new +mold. For instance, RFC2045 describes a syntax for the +@code{Content-Type} header that only allows @acronym{ASCII} characters in the +parameter list. RFC2231 expands on RFC2045 syntax to provide a scheme +for continuation headers and non-@acronym{ASCII} characters. + +The traditional way to deal with this is just to update the library +functions to parse the new syntax. However, this is sometimes the wrong +thing to do. In some instances it may be vital to be able to understand +both the old syntax as well as the new syntax, and if there is only one +library, one must choose between the old version of the library and the +new version of the library. + +The Emacs @acronym{MIME} library takes a different tack. It defines a +series of low-level libraries (@file{rfc2047.el}, @file{rfc2231.el} +and so on) that parses strictly according to the corresponding +standard. However, normal programs would not use the functions +provided by these libraries directly, but instead use the functions +provided by the @code{mail-parse} library. The functions in this +library are just aliases to the corresponding functions in the latest +low-level libraries. Using this scheme, programs get a consistent +interface they can use, and library developers are free to create +write code that handles new standards. + +The following functions are defined by this library: + +@table @code +@item mail-header-parse-content-type +@findex mail-header-parse-content-type +Parse a @code{Content-Type} header and return a list on the following +format: + +@lisp +("type/subtype" + (attribute1 . value1) + (attribute2 . value2) + ...) +@end lisp + +Here's an example: + +@example +(mail-header-parse-content-type + "image/gif; name=\"b980912.gif\"") +@result{} ("image/gif" (name . "b980912.gif")) +@end example + +@item mail-header-parse-content-disposition +@findex mail-header-parse-content-disposition +Parse a @code{Content-Disposition} header and return a list on the same +format as the function above. + +@item mail-content-type-get +@findex mail-content-type-get +Takes two parameters---a list on the format above, and an attribute. +Returns the value of the attribute. + +@example +(mail-content-type-get + '("image/gif" (name . "b980912.gif")) 'name) +@result{} "b980912.gif" +@end example + +@item mail-header-encode-parameter +@findex mail-header-encode-parameter +Takes a parameter string and returns an encoded version of the string. +This is used for parameters in headers like @code{Content-Type} and +@code{Content-Disposition}. + +@item mail-header-remove-comments +@findex mail-header-remove-comments +Return a comment-free version of a header. + +@example +(mail-header-remove-comments + "Gnus/5.070027 (Pterodactyl Gnus v0.27) (Finnish Landrace)") +@result{} "Gnus/5.070027 " +@end example + +@item mail-header-remove-whitespace +@findex mail-header-remove-whitespace +Remove linear white space from a header. Space inside quoted strings +and comments is preserved. + +@example +(mail-header-remove-whitespace + "image/gif; name=\"Name with spaces\"") +@result{} "image/gif;name=\"Name with spaces\"" +@end example + +@item mail-header-get-comment +@findex mail-header-get-comment +Return the last comment in a header. + +@example +(mail-header-get-comment + "Gnus/5.070027 (Pterodactyl Gnus v0.27) (Finnish Landrace)") +@result{} "Finnish Landrace" +@end example + +@item mail-header-parse-address +@findex mail-header-parse-address +Parse an address and return a list containing the mailbox and the +plaintext name. + +@example +(mail-header-parse-address + "Hrvoje Niksic ") +@result{} ("hniksic@@srce.hr" . "Hrvoje Niksic") +@end example + +@item mail-header-parse-addresses +@findex mail-header-parse-addresses +Parse a string with list of addresses and return a list of elements like +the one described above. + +@example +(mail-header-parse-addresses + "Hrvoje Niksic , Steinar Bang ") +@result{} (("hniksic@@srce.hr" . "Hrvoje Niksic") + ("sb@@metis.no" . "Steinar Bang")) +@end example + +@item mail-header-parse-date +@findex mail-header-parse-date +Parse a date string and return an Emacs time structure. + +@item mail-narrow-to-head +@findex mail-narrow-to-head +Narrow the buffer to the header section of the buffer. Point is placed +at the beginning of the narrowed buffer. + +@item mail-header-narrow-to-field +@findex mail-header-narrow-to-field +Narrow the buffer to the header under point. Understands continuation +headers. + +@item mail-header-fold-field +@findex mail-header-fold-field +Fold the header under point. + +@item mail-header-unfold-field +@findex mail-header-unfold-field +Unfold the header under point. + +@item mail-header-field-value +@findex mail-header-field-value +Return the value of the field under point. + +@item mail-encode-encoded-word-region +@findex mail-encode-encoded-word-region +Encode the non-@acronym{ASCII} words in the region. For instance, +@samp{Na@"{@dotless{i}}ve} is encoded as @samp{=?iso-8859-1?q?Na=EFve?=}. + +@item mail-encode-encoded-word-buffer +@findex mail-encode-encoded-word-buffer +Encode the non-@acronym{ASCII} words in the current buffer. This function is +meant to be called narrowed to the headers of a message. + +@item mail-encode-encoded-word-string +@findex mail-encode-encoded-word-string +Encode the words that need encoding in a string, and return the result. + +@example +(mail-encode-encoded-word-string + "This is na@"{@dotless{i}}ve, baby") +@result{} "This is =?iso-8859-1?q?na=EFve,?= baby" +@end example + +@item mail-decode-encoded-word-region +@findex mail-decode-encoded-word-region +Decode the encoded words in the region. + +@item mail-decode-encoded-word-string +@findex mail-decode-encoded-word-string +Decode the encoded words in the string and return the result. + +@example +(mail-decode-encoded-word-string + "This is =?iso-8859-1?q?na=EFve,?= baby") +@result{} "This is na@"{@dotless{i}}ve, baby" +@end example + +@end table + +Currently, @code{mail-parse} is an abstraction over @code{ietf-drums}, +@code{rfc2047}, @code{rfc2045} and @code{rfc2231}. These are documented +in the subsequent sections. + + + +@node Basic Functions +@chapter Basic Functions + +This chapter describes the basic, ground-level functions for parsing and +handling. Covered here is parsing @code{From} lines, removing comments +from header lines, decoding encoded words, parsing date headers and so +on. High-level functionality is dealt with in the next chapter +(@pxref{Decoding and Viewing}). + +@menu +* rfc2045:: Encoding @code{Content-Type} headers. +* rfc2231:: Parsing @code{Content-Type} headers. +* ietf-drums:: Handling mail headers defined by RFC822bis. +* rfc2047:: En/decoding encoded words in headers. +* time-date:: Functions for parsing dates and manipulating time. +* qp:: Quoted-Printable en/decoding. +* base64:: Base64 en/decoding. +* binhex:: Binhex decoding. +* uudecode:: Uuencode decoding. +* yenc:: Yenc decoding. +* rfc1843:: Decoding HZ-encoded text. +* mailcap:: How parts are displayed is specified by the @file{.mailcap} file +@end menu + + +@node rfc2045 +@section rfc2045 + +RFC2045 is the ``main'' @acronym{MIME} document, and as such, one would +imagine that there would be a lot to implement. But there isn't, since +most of the implementation details are delegated to the subsequent +RFCs. + +So @file{rfc2045.el} has only a single function: + +@table @code +@item rfc2045-encode-string +@findex rfc2045-encode-string +Takes a parameter and a value and returns a @samp{PARAM=VALUE} string. +@var{value} will be quoted if there are non-safe characters in it. +@end table + + +@node rfc2231 +@section rfc2231 + +RFC2231 defines a syntax for the @code{Content-Type} and +@code{Content-Disposition} headers. Its snappy name is @dfn{MIME +Parameter Value and Encoded Word Extensions: Character Sets, Languages, +and Continuations}. + +In short, these headers look something like this: + +@example +Content-Type: application/x-stuff; + title*0*=us-ascii'en'This%20is%20even%20more%20; + title*1*=%2A%2A%2Afun%2A%2A%2A%20; + title*2="isn't it!" +@end example + +They usually aren't this bad, though. + +The following functions are defined by this library: + +@table @code +@item rfc2231-parse-string +@findex rfc2231-parse-string +Parse a @code{Content-Type} header and return a list describing its +elements. + +@example +(rfc2231-parse-string + "application/x-stuff; + title*0*=us-ascii'en'This%20is%20even%20more%20; + title*1*=%2A%2A%2Afun%2A%2A%2A%20; + title*2=\"isn't it!\"") +@result{} ("application/x-stuff" + (title . "This is even more ***fun*** isn't it!")) +@end example + +@item rfc2231-get-value +@findex rfc2231-get-value +Takes one of the lists on the format above and returns +the value of the specified attribute. + +@item rfc2231-encode-string +@findex rfc2231-encode-string +Encode a parameter in headers likes @code{Content-Type} and +@code{Content-Disposition}. + +@end table + + +@node ietf-drums +@section ietf-drums + +@dfn{drums} is an IETF working group that is working on the replacement +for RFC822. + +The functions provided by this library include: + +@table @code +@item ietf-drums-remove-comments +@findex ietf-drums-remove-comments +Remove the comments from the argument and return the results. + +@item ietf-drums-remove-whitespace +@findex ietf-drums-remove-whitespace +Remove linear white space from the string and return the results. +Spaces inside quoted strings and comments are left untouched. + +@item ietf-drums-get-comment +@findex ietf-drums-get-comment +Return the last most comment from the string. + +@item ietf-drums-parse-address +@findex ietf-drums-parse-address +Parse an address string and return a list that contains the mailbox and +the plain text name. + +@item ietf-drums-parse-addresses +@findex ietf-drums-parse-addresses +Parse a string that contains any number of comma-separated addresses and +return a list that contains mailbox/plain text pairs. + +@item ietf-drums-parse-date +@findex ietf-drums-parse-date +Parse a date string and return an Emacs time structure. + +@item ietf-drums-narrow-to-header +@findex ietf-drums-narrow-to-header +Narrow the buffer to the header section of the current buffer. + +@end table + + +@node rfc2047 +@section rfc2047 + +RFC2047 (Message Header Extensions for Non-@acronym{ASCII} Text) specifies how +non-@acronym{ASCII} text in headers are to be encoded. This is actually rather +complicated, so a number of variables are necessary to tweak what this +library does. + +The following variables are tweakable: + +@table @code +@item rfc2047-header-encoding-alist +@vindex rfc2047-header-encoding-alist +This is an alist of header / encoding-type pairs. Its main purpose is +to prevent encoding of certain headers. + +The keys can either be header regexps, or @code{t}. + +The values can be @code{nil}, in which case the header(s) in question +won't be encoded, @code{mime}, which means that they will be encoded, or +@code{address-mime}, which means the header(s) will be encoded carefully +assuming they contain addresses. + +@item rfc2047-charset-encoding-alist +@vindex rfc2047-charset-encoding-alist +RFC2047 specifies two forms of encoding---@code{Q} (a +Quoted-Printable-like encoding) and @code{B} (base64). This alist +specifies which charset should use which encoding. + +@item rfc2047-encode-function-alist +@vindex rfc2047-encode-function-alist +This is an alist of encoding / function pairs. The encodings are +@code{Q}, @code{B} and @code{nil}. + +@item rfc2047-encoded-word-regexp +@vindex rfc2047-encoded-word-regexp +When decoding words, this library looks for matches to this regexp. + +@item rfc2047-encode-encoded-words +@vindex rfc2047-encode-encoded-words +The boolean variable specifies whether encoded words +(e.g. @samp{=?hello?=}) should be encoded again. + +@end table + +Those were the variables, and these are this functions: + +@table @code +@item rfc2047-narrow-to-field +@findex rfc2047-narrow-to-field +Narrow the buffer to the header on the current line. + +@item rfc2047-encode-message-header +@findex rfc2047-encode-message-header +Should be called narrowed to the header of a message. Encodes according +to @code{rfc2047-header-encoding-alist}. + +@item rfc2047-encode-region +@findex rfc2047-encode-region +Encodes all encodable words in the region specified. + +@item rfc2047-encode-string +@findex rfc2047-encode-string +Encode a string and return the results. + +@item rfc2047-decode-region +@findex rfc2047-decode-region +Decode the encoded words in the region. + +@item rfc2047-decode-string +@findex rfc2047-decode-string +Decode a string and return the results. + +@item rfc2047-encode-parameter +@findex rfc2047-encode-parameter +Encode a parameter in the RFC2047-like style. This is a replacement for +the @code{rfc2231-encode-string} function. @xref{rfc2231}. + +When attaching files as @acronym{MIME} parts, we should use the RFC2231 +encoding to specify the file names containing non-@acronym{ASCII} +characters. However, many mail softwares don't support it in practice +and recipients won't be able to extract files with correct names. +Instead, the RFC2047-like encoding is acceptable generally. This +function provides the very RFC2047-like encoding, resigning to such a +regrettable trend. To use it, put the following line in your +@file{~/.gnus.el} file: + +@lisp +(defalias 'mail-header-encode-parameter 'rfc2047-encode-parameter) +@end lisp + +@end table + + +@node time-date +@section time-date + +While not really a part of the @acronym{MIME} library, it is convenient to +document this library here. It deals with parsing @code{Date} headers +and manipulating time. (Not by using tesseracts, though, I'm sorry to +say.) + +These functions convert between five formats: A date string, an Emacs +time structure, a decoded time list, a second number, and a day number. + +Here's a bunch of time/date/second/day examples: + +@example +(parse-time-string "Sat Sep 12 12:21:54 1998 +0200") +@result{} (54 21 12 12 9 1998 6 nil 7200) + +(date-to-time "Sat Sep 12 12:21:54 1998 +0200") +@result{} (13818 19266) + +(time-to-seconds '(13818 19266)) +@result{} 905595714.0 + +(seconds-to-time 905595714.0) +@result{} (13818 19266 0) + +(time-to-days '(13818 19266)) +@result{} 729644 + +(days-to-time 729644) +@result{} (961933 65536) + +(time-since '(13818 19266)) +@result{} (0 430) + +(time-less-p '(13818 19266) '(13818 19145)) +@result{} nil + +(subtract-time '(13818 19266) '(13818 19145)) +@result{} (0 121) + +(days-between "Sat Sep 12 12:21:54 1998 +0200" + "Sat Sep 07 12:21:54 1998 +0200") +@result{} 5 + +(date-leap-year-p 2000) +@result{} t + +(time-to-day-in-year '(13818 19266)) +@result{} 255 + +(time-to-number-of-days + (time-since + (date-to-time "Mon, 01 Jan 2001 02:22:26 GMT"))) +@result{} 4.146122685185185 +@end example + +And finally, we have @code{safe-date-to-time}, which does the same as +@code{date-to-time}, but returns a zero time if the date is +syntactically malformed. + +The five data representations used are the following: + +@table @var +@item date +An RFC822 (or similar) date string. For instance: @code{"Sat Sep 12 +12:21:54 1998 +0200"}. + +@item time +An internal Emacs time. For instance: @code{(13818 26466)}. + +@item seconds +A floating point representation of the internal Emacs time. For +instance: @code{905595714.0}. + +@item days +An integer number representing the number of days since 00000101. For +instance: @code{729644}. + +@item decoded time +A list of decoded time. For instance: @code{(54 21 12 12 9 1998 6 t +7200)}. +@end table + +All the examples above represent the same moment. + +These are the functions available: + +@table @code +@item date-to-time +Take a date and return a time. + +@item time-to-seconds +Take a time and return seconds. + +@item seconds-to-time +Take seconds and return a time. + +@item time-to-days +Take a time and return days. + +@item days-to-time +Take days and return a time. + +@item date-to-day +Take a date and return days. + +@item time-to-number-of-days +Take a time and return the number of days that represents. + +@item safe-date-to-time +Take a date and return a time. If the date is not syntactically valid, +return a ``zero'' date. + +@item time-less-p +Take two times and say whether the first time is less (i. e., earlier) +than the second time. + +@item time-since +Take a time and return a time saying how long it was since that time. + +@item subtract-time +Take two times and subtract the second from the first. I. e., return +the time between the two times. + +@item days-between +Take two days and return the number of days between those two days. + +@item date-leap-year-p +Take a year number and say whether it's a leap year. + +@item time-to-day-in-year +Take a time and return the day number within the year that the time is +in. + +@end table + + +@node qp +@section qp + +This library deals with decoding and encoding Quoted-Printable text. + +Very briefly explained, qp encoding means translating all 8-bit +characters (and lots of control characters) into things that look like +@samp{=EF}; that is, an equal sign followed by the byte encoded as a hex +string. + +The following functions are defined by the library: + +@table @code +@item quoted-printable-decode-region +@findex quoted-printable-decode-region +QP-decode all the encoded text in the specified region. + +@item quoted-printable-decode-string +@findex quoted-printable-decode-string +Decode the QP-encoded text in a string and return the results. + +@item quoted-printable-encode-region +@findex quoted-printable-encode-region +QP-encode all the encodable characters in the specified region. The third +optional parameter @var{fold} specifies whether to fold long lines. +(Long here means 72.) + +@item quoted-printable-encode-string +@findex quoted-printable-encode-string +QP-encode all the encodable characters in a string and return the +results. + +@end table + + +@node base64 +@section base64 +@cindex base64 + +Base64 is an encoding that encodes three bytes into four characters, +thereby increasing the size by about 33%. The alphabet used for +encoding is very resistant to mangling during transit. + +The following functions are defined by this library: + +@table @code +@item base64-encode-region +@findex base64-encode-region +base64 encode the selected region. Return the length of the encoded +text. Optional third argument @var{no-line-break} means do not break +long lines into shorter lines. + +@item base64-encode-string +@findex base64-encode-string +base64 encode a string and return the result. + +@item base64-decode-region +@findex base64-decode-region +base64 decode the selected region. Return the length of the decoded +text. If the region can't be decoded, return @code{nil} and don't +modify the buffer. + +@item base64-decode-string +@findex base64-decode-string +base64 decode a string and return the result. If the string can't be +decoded, @code{nil} is returned. + +@end table + + +@node binhex +@section binhex +@cindex binhex +@cindex Apple +@cindex Macintosh + +@code{binhex} is an encoding that originated in Macintosh environments. +The following function is supplied to deal with these: + +@table @code +@item binhex-decode-region +@findex binhex-decode-region +Decode the encoded text in the region. If given a third parameter, only +decode the @code{binhex} header and return the filename. + +@end table + +@node uudecode +@section uudecode +@cindex uuencode +@cindex uudecode + +@code{uuencode} is probably still the most popular encoding of binaries +used on Usenet, although @code{base64} rules the mail world. + +The following function is supplied by this package: + +@table @code +@item uudecode-decode-region +@findex uudecode-decode-region +Decode the text in the region. +@end table + + +@node yenc +@section yenc +@cindex yenc + +@code{yenc} is used for encoding binaries on Usenet. The following +function is supplied by this package: + +@table @code +@item yenc-decode-region +@findex yenc-decode-region +Decode the encoded text in the region. + +@end table + + +@node rfc1843 +@section rfc1843 +@cindex rfc1843 +@cindex HZ +@cindex Chinese + +RFC1843 deals with mixing Chinese and @acronym{ASCII} characters in messages. In +essence, RFC1843 switches between @acronym{ASCII} and Chinese by doing this: + +@example +This sentence is in @acronym{ASCII}. +The next sentence is in GB.~@{<:Ky2;S@{#,NpJ)l6HK!#~@}Bye. +@end example + +Simple enough, and widely used in China. + +The following functions are available to handle this encoding: + +@table @code +@item rfc1843-decode-region +Decode HZ-encoded text in the region. + +@item rfc1843-decode-string +Decode a HZ-encoded string and return the result. + +@end table + + +@node mailcap +@section mailcap + +The @file{~/.mailcap} file is parsed by most @acronym{MIME}-aware message +handlers and describes how elements are supposed to be displayed. +Here's an example file: + +@example +image/*; gimp -8 %s +audio/wav; wavplayer %s +application/msword; catdoc %s ; copiousoutput ; nametemplate=%s.doc +@end example + +This says that all image files should be displayed with @code{gimp}, +that WAVE audio files should be played by @code{wavplayer}, and that +MS-WORD files should be inlined by @code{catdoc}. + +The @code{mailcap} library parses this file, and provides functions for +matching types. + +@table @code +@item mailcap-mime-data +@vindex mailcap-mime-data +This variable is an alist of alists containing backup viewing rules. + +@end table + +Interface functions: + +@table @code +@item mailcap-parse-mailcaps +@findex mailcap-parse-mailcaps +Parse the @file{~/.mailcap} file. + +@item mailcap-mime-info +Takes a @acronym{MIME} type as its argument and returns the matching viewer. + +@end table + + + + +@node Standards +@chapter Standards + +The Emacs @acronym{MIME} library implements handling of various elements +according to a (somewhat) large number of RFCs, drafts and standards +documents. This chapter lists the relevant ones. They can all be +fetched from @uref{http://quimby.gnus.org/notes/}. + +@table @dfn +@item RFC822 +@itemx STD11 +Standard for the Format of ARPA Internet Text Messages. + +@item RFC1036 +Standard for Interchange of USENET Messages + +@item RFC2045 +Format of Internet Message Bodies + +@item RFC2046 +Media Types + +@item RFC2047 +Message Header Extensions for Non-@acronym{ASCII} Text + +@item RFC2048 +Registration Procedures + +@item RFC2049 +Conformance Criteria and Examples + +@item RFC2231 +@acronym{MIME} Parameter Value and Encoded Word Extensions: Character Sets, +Languages, and Continuations + +@item RFC1843 +HZ - A Data Format for Exchanging Files of Arbitrarily Mixed Chinese and +@acronym{ASCII} characters + +@item draft-ietf-drums-msg-fmt-05.txt +Draft for the successor of RFC822 + +@item RFC2112 +The @acronym{MIME} Multipart/Related Content-type + +@item RFC1892 +The Multipart/Report Content Type for the Reporting of Mail System +Administrative Messages + +@item RFC2183 +Communicating Presentation Information in Internet Messages: The +Content-Disposition Header Field + +@item RFC2646 +Documentation of the text/plain format parameter for flowed text. + +@end table + + +@node Index +@chapter Index +@printindex cp + +@summarycontents +@contents +@bye + +@c Local Variables: +@c coding: iso-2022-7bit +@c fill-column: 72 +@c mode: texinfo +@c use-kuten-for-period: t +@c use-touten-for-comma: t +@c End: diff --git a/gnus-faq-ja.texi b/gnus-faq-ja.texi new file mode 100644 index 0000000..0ba3c3a --- /dev/null +++ b/gnus-faq-ja.texi @@ -0,0 +1,2303 @@ +@c \input texinfo @c -*-texinfo-*- +@c Uncomment 1st line before texing this file alone. +@c %**start of header +@c Copyright (C) 1995, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. +@c +@c Do not modify this file, it was generated from gnus-faq.xml, available from +@c . +@c +@setfilename gnus-faq-ja +@settitle Frequently Asked Questions +@c %**end of header +@c + +@node Frequently Asked Questions +@section Frequently Asked Questions + +@menu +* FAQ - Changes:: +* FAQ - Introduction:: About Gnus and this FAQ. +* FAQ 1 - Installation FAQ:: Installation of Gnus. +* FAQ 2 - Startup / Group buffer:: Start up questions and the + first buffer Gnus shows you. +* FAQ 3 - Getting Messages:: Making Gnus read your mail + and news. +* FAQ 4 - Reading messages:: How to efficiently read + messages. +* FAQ 5 - Composing messages:: Composing mails or Usenet + postings. +* FAQ 6 - Old messages:: Importing, archiving, + searching and deleting messages. +* FAQ 7 - Gnus in a dial-up environment:: Reading mail and news while + offline. +* FAQ 8 - Getting help:: When this FAQ isn't enough. +* FAQ 9 - Tuning Gnus:: How to make Gnus faster. +* FAQ - Glossary:: Terms used in the FAQ + explained. +@end menu + +@subheading Abstract + +This is the new Gnus Frequently Asked Questions list. +If you have a Web browser, the official hypertext version is at +@uref{http://my.gnus.org/FAQ/}, +the Docbook source is available from +@uref{http://sourceforge.net/projects/gnus/, http://sourceforge.net}. + +Please submit features and suggestions to the +@email{faq-discuss@@my.gnus.org, FAQ discussion list}. +The list is protected against junk mail with +@uref{http://smarden.org/qconfirm/index.html, qconfirm}. As +a subscriber, your submissions will automatically pass. You can +also subscribe to the list by sending a blank email to +@email{faq-discuss-subscribe@@my.gnus.org, faq-discuss-subscribe@@my.gnus.org} +and @uref{http://mail1.kens.com/cgi-bin/ezmlm-browse?command=monthbythread%26list=faq-discuss, browse +the archive}. + +@node FAQ - Changes +@subheading Changes + + + +@itemize @bullet + +@item +Updated FAQ to reflect release of Gnus 5.10 and start of +No Gnus development. +@end itemize + +@node FAQ - Introduction +@subheading Introduction + +This is the Gnus Frequently Asked Questions list. + +Gnus is a Usenet Newsreader and Electronic Mail User Agent implemented +as a part of Emacs. It's been around in some form for almost a decade +now, and has been distributed as a standard part of Emacs for much of +that time. Gnus 5 is the latest (and greatest) incarnation. The +original version was called GNUS, and was written by Masanobu UMEDA. +When autumn crept up in '94, Lars Magne Ingebrigtsen grew bored and +decided to rewrite Gnus. + +Its biggest strength is the fact that it is extremely +customizable. It is somewhat intimidating at first glance, but +most of the complexity can be ignored until you're ready to take +advantage of it. If you receive a reasonable volume of e-mail +(you're on various mailing lists), or you would like to read +high-volume mailing lists but cannot keep up with them, or read +high volume newsgroups or are just bored, then Gnus is what you +want. + +This FAQ was maintained by Justin Sheehy until March 2002. He +would like to thank Steve Baur and Per Abrahamsen for doing a wonderful +job with this FAQ before him. We would like to do the same - thanks, +Justin! + +If you have a Web browser, the official hypertext version is at: +@uref{http://my.gnus.org/FAQ/}. +This version is much nicer than the unofficial hypertext +versions that are archived at Utrecht, Oxford, Smart Pages, Ohio +State, and other FAQ archives. See the resources question below +if you want information on obtaining it in another format. + +The information contained here was compiled with the assistance +of the Gnus development mailing list, and any errors or +misprints are the my.gnus.org team's fault, sorry. + +@node FAQ 1 - Installation FAQ +@subsection Installation FAQ + +@menu +* [1.1]:: What is the latest version of Gnus? +* [1.2]:: What's new in 5.10? +* [1.3]:: Where and how to get Gnus? +* [1.4]:: What to do with the tarball now? +* [1.5]:: I sometimes read references to No Gnus and Oort Gnus, what + are those? +* [1.6]:: Which version of Emacs do I need? +* [1.7]:: How do I run Gnus on both Emacs and XEmacs? +@end menu + +@node [1.1] +@subsubheading Question 1.1 + +What is the latest version of Gnus? + +@subsubheading Answer + +Jingle please: Gnus 5.10 is released, get it while it's +hot! As well as the step in version number is rather +small, Gnus 5.10 has tons of new features which you +shouldn't miss. The current release (5.10.6) should be at +least as stable as the latest release of the 5.8 series. + +@node [1.2] +@subsubheading Question 1.2 + +What's new in 5.10? + +@subsubheading Answer + +First of all, you should have a look into the file +GNUS-NEWS in the toplevel directory of the Gnus tarball, +there the most important changes are listed. Here's a +short list of the changes I find especially +important/interesting: + +@itemize @bullet + +@item +Major rewrite of the Gnus agent, Gnus agent is now +active by default. + +@item +Many new article washing functions for dealing with +ugly formatted articles. + +@item +Anti Spam features. + +@item +Message-utils now included in Gnus. + +@item +New format specifiers for summary lines, e.g. %B for +a complex trn-style thread tree. +@end itemize + +@node [1.3] +@subsubheading Question 1.3 + +Where and how to get Gnus? + +@subsubheading Answer + +The latest released version of Gnus isn't included in +Emacs 21, therefor you should get the Gnus tarball from +@uref{http://www.gnus.org/dist/gnus.tar.gz} +or via anonymous FTP from +@uref{ftp://ftp.gnus.org/pub/gnus/gnus.tar.gz}. +If you use XEmacs instead of Emacs you can use XEmacs' +package system instead. + +@node [1.4] +@subsubheading Question 1.4 + +What to do with the tarball now? + +@subsubheading Answer + +Untar it via @samp{tar xvzf gnus.tar.gz} and do the common +@samp{./configure; make; make install} circle. +(under MS-Windows either get the Cygwin environment from +@uref{http://www.cygwin.com} +which allows you to do what's described above or unpack the +tarball with some packer (e.g. Winace from +@uref{http://www.winace.com}) +and use the batch-file make.bat included in the tarball to install +Gnus.) If you don't want to (or aren't allowed to) install Gnus +system-wide, you can install it in your home directory and add the +following lines to your ~/.xemacs/init.el or ~/.emacs: + +@example +(add-to-list 'load-path "/path/to/gnus/lisp") +(if (featurep 'xemacs) + (add-to-list 'Info-directory-list "/path/to/gnus/texi/") + (add-to-list 'Info-default-directory-list "/path/to/gnus/texi/")) +@end example +@noindent + +Make sure that you don't have any Gnus related stuff +before this line, on MS Windows use something like +"C:/path/to/lisp" (yes, "/"). + +@node [1.5] +@subsubheading Question 1.5 + +I sometimes read references to No Gnus and Oort Gnus, +what are those? + +@subsubheading Answer + +Oort Gnus was the name of the development version of +Gnus, which became Gnus 5.10 in autumn 2003. No Gnus is +the name of the current development version which will +once become Gnus 5.12 or Gnus 6. (If you're wondering why +not 5.11, the odd version numbers are normally used for +the Gnus versions bundled with Emacs) + +@node [1.6] +@subsubheading Question 1.6 + +Which version of Emacs do I need? + +@subsubheading Answer + +Gnus 5.10 requires an Emacs version that is greater +than or equal to Emacs 20.7 or XEmacs 21.1. The +development versions of Gnus (aka No Gnus) require Emacs +21 or XEmacs 21.4. + +@node [1.7] +@subsubheading Question 1.7 + +How do I run Gnus on both Emacs and XEmacs? + +@subsubheading Answer + +You can't use the same copy of Gnus in both as the Lisp +files are byte-compiled to a format which is different +depending on which Emacs did the compilation. Get one copy +of Gnus for Emacs and one for XEmacs. + +@node FAQ 2 - Startup / Group buffer +@subsection Startup / Group buffer + +@menu +* [2.1]:: Every time I start Gnus I get a message "Gnus auto-save + file exists. Do you want to read it?", what does this mean and + how to prevent it? +* [2.2]:: Gnus doesn't remember which groups I'm subscribed to, + what's this? +* [2.3]:: How to change the format of the lines in Group buffer? +* [2.4]:: My group buffer becomes a bit crowded, is there a way to + sort my groups into categories so I can easier browse through + them? +* [2.5]:: How to manually sort the groups in Group buffer? How to + sort the groups in a topic? +@end menu + +@node [2.1] +@subsubheading Question 2.1 + +Every time I start Gnus I get a message "Gnus auto-save +file exists. Do you want to read it?", what does this mean +and how to prevent it? + +@subsubheading Answer + +This message means that the last time you used Gnus, it +wasn't properly exited and therefor couldn't write its +informations to disk (e.g. which messages you read), you +are now asked if you want to restore those informations +from the auto-save file. + +To prevent this message make sure you exit Gnus +via @samp{q} in group buffer instead of +just killing Emacs. + +@node [2.2] +@subsubheading Question 2.2 + +Gnus doesn't remember which groups I'm subscribed to, +what's this? + +@subsubheading Answer + +You get the message described in the q/a pair above while +starting Gnus, right? It's an other symptom for the same +problem, so read the answer above. + +@node [2.3] +@subsubheading Question 2.3 + +How to change the format of the lines in Group buffer? + +@subsubheading Answer + +You've got to tweak the value of the variable +gnus-group-line-format. See the manual node "Group Line +Specification" for information on how to do this. An +example for this (guess from whose .gnus :-)): + +@example +(setq gnus-group-line-format "%P%M%S[%5t]%5y : %(%g%)\n") +@end example +@noindent + +@node [2.4] +@subsubheading Question 2.4 + +My group buffer becomes a bit crowded, is there a way to +sort my groups into categories so I can easier browse +through them? + +@subsubheading Answer + +Gnus offers the topic mode, it allows you to sort your +groups in, well, topics, e.g. all groups dealing with +Linux under the topic linux, all dealing with music under +the topic music and all dealing with scottish music under +the topic scottish which is a subtopic of music. + +To enter topic mode, just hit t while in Group buffer. Now +you can use @samp{T n} to create a topic +at point and @samp{T m} to move a group to +a specific topic. For more commands see the manual or the +menu. You might want to include the %P specifier at the +beginning of your gnus-group-line-format variable to have +the groups nicely indented. + +@node [2.5] +@subsubheading Question 2.5 + +How to manually sort the groups in Group buffer? How to +sort the groups in a topic? + +@subsubheading Answer + +Move point over the group you want to move and +hit @samp{C-k}, now move point to the +place where you want the group to be and +hit @samp{C-y}. + +@node FAQ 3 - Getting Messages +@subsection Getting Messages + +@menu +* [3.1]:: I just installed Gnus, started it via @samp{M-x gnus} + but it only says "nntp (news) open error", what to do? +* [3.2]:: I'm working under Windows and have no idea what ~/.gnus.el + means. +* [3.3]:: My news server requires authentication, how to store user + name and password on disk? +* [3.4]:: Gnus seems to start up OK, but I can't find out how to + subscribe to a group. +* [3.5]:: Gnus doesn't show all groups / Gnus says I'm not allowed + to post on this server as well as I am, what's that? +* [3.6]:: I want Gnus to fetch news from several servers, is this + possible? +* [3.7]:: And how about local spool files? +* [3.8]:: OK, reading news works now, but I want to be able to read + my mail with Gnus, too. How to do it? +* [3.9]:: And what about IMAP? +* [3.10]:: At the office we use one of those MS Exchange servers, can + I use Gnus to read my mail from it? +* [3.11]:: Can I tell Gnus not to delete the mails on the server it + retrieves via POP3? +@end menu + +@node [3.1] +@subsubheading Question 3.1 + +I just installed Gnus, started it via +@samp{M-x gnus} +but it only says "nntp (news) open error", what to do? + +@subsubheading Answer + +You've got to tell Gnus where to fetch the news from. Read +the documentation for information on how to do this. As a +first start, put those lines in ~/.gnus.el: + +@example +(setq gnus-select-method '(nntp "news.yourprovider.net")) +(setq user-mail-address "you@@yourprovider.net") +(setq user-full-name "Your Name") +@end example +@noindent + +@node [3.2] +@subsubheading Question 3.2 + +I'm working under Windows and have no idea what ~/.gnus.el means. + +@subsubheading Answer + +The ~/ means the home directory where Gnus and Emacs look +for the configuration files. However, you don't really +need to know what this means, it suffices that Emacs knows +what it means :-) You can type +@samp{C-x C-f ~/.gnus.el RET } +(yes, with the forward slash, even on Windows), and +Emacs will open the right file for you. (It will most +likely be new, and thus empty.) +However, I'd discourage you from doing so, since the +directory Emacs chooses will most certainly not be what +you want, so let's do it the correct way. +The first thing you've got to do is to +create a suitable directory (no blanks in directory name +please) e.g. c:\myhome. Then you must set the environment +variable HOME to this directory. To do this under Win9x +or Me include the line + +@example +SET HOME=C:\myhome +@end example +@noindent + +in your autoexec.bat and reboot. Under NT, 2000 and XP, +hit Winkey+Pause/Break to enter system options (if it +doesn't work, go to Control Panel -> System). There you'll +find the possibility to set environment variables, create +a new one with name HOME and value C:\myhome, a reboot is +not necessary. + +Now to create ~/.gnus.el, say +@samp{C-x C-f ~/.gnus.el RET C-x C-s}. +in Emacs. + +@node [3.3] +@subsubheading Question 3.3 + +My news server requires authentication, how to store +user name and password on disk? + +@subsubheading Answer + +Create a file ~/.authinfo which includes for each server a line like this + +@example +machine news.yourprovider.net login YourUserName password YourPassword +@end example +@noindent +. +Make sure that the file isn't readable to others if you +work on a OS which is capable of doing so. (Under Unix +say +@example +chmod 600 ~/.authinfo +@end example +@noindent + +in a shell.) + +@node [3.4] +@subsubheading Question 3.4 + +Gnus seems to start up OK, but I can't find out how to +subscribe to a group. + +@subsubheading Answer + +If you know the name of the group say @samp{U +name.of.group RET} in group buffer (use the +tab-completion Luke). Otherwise hit ^ in group buffer, +this brings you to the server buffer. Now place point (the +cursor) over the server which carries the group you want, +hit @samp{RET}, move point to the group +you want to subscribe to and say @samp{u} +to subscribe to it. + +@node [3.5] +@subsubheading Question 3.5 + +Gnus doesn't show all groups / Gnus says I'm not allowed to +post on this server as well as I am, what's that? + +@subsubheading Answer + +Some providers allow restricted anonymous access and full +access only after authorization. To make Gnus send authinfo +to those servers append + +@example +force yes +@end example +@noindent + +to the line for those servers in ~/.authinfo. + +@node [3.6] +@subsubheading Question 3.6 + +I want Gnus to fetch news from several servers, is this possible? + +@subsubheading Answer + +Of course. You can specify more sources for articles in the +variable gnus-secondary-select-methods. Add something like +this in ~/.gnus.el: + +@example +(add-to-list 'gnus-secondary-select-methods + '(nntp "news.yourSecondProvider.net")) +(add-to-list 'gnus-secondary-select-methods + '(nntp "news.yourThirdProvider.net")) +@end example +@noindent + +@node [3.7] +@subsubheading Question 3.7 + +And how about local spool files? + +@subsubheading Answer + +No problem, this is just one more select method called +nnspool, so you want this: + +@example +(add-to-list 'gnus-secondary-select-methods '(nnspool "")) +@end example +@noindent + +Or this if you don't want an NNTP Server as primary news source: + +@example +(setq gnus-select-method '(nnspool "")) +@end example +@noindent + +Gnus will look for the spool file in /usr/spool/news, if you +want something different, change the line above to something like this: + +@example +(add-to-list 'gnus-secondary-select-methods + '(nnspool "" + (nnspool-directory "/usr/local/myspoolddir"))) +@end example +@noindent + +This sets the spool directory for this server only. +You might have to specify more stuff like the program used +to post articles, see the Gnus manual on how to do this. + +@node [3.8] +@subsubheading Question 3.8 + +OK, reading news works now, but I want to be able to read my mail +with Gnus, too. How to do it? + +@subsubheading Answer + +That's a bit harder since there are many possible sources +for mail, many possible ways for storing mail and many +different ways for sending mail. The most common cases are +these: 1: You want to read your mail from a pop3 server and +send them directly to a SMTP Server 2: Some program like +fetchmail retrieves your mail and stores it on disk from +where Gnus shall read it. Outgoing mail is sent by +Sendmail, Postfix or some other MTA. Sometimes, you even +need a combination of the above cases. + +However, the first thing to do is to tell Gnus in which way +it should store the mail, in Gnus terminology which back end +to use. Gnus supports many different back ends, the most +commonly used one is nnml. It stores every mail in one file +and is therefor quite fast. However you might prefer a one +file per group approach if your file system has problems with +many small files, the nnfolder back end is then probably the +choice for you. To use nnml add the following to ~/.gnus.el: + +@example +(add-to-list 'gnus-secondary-select-methods '(nnml "")) +@end example +@noindent + +As you might have guessed, if you want nnfolder, it's + +@example +(add-to-list 'gnus-secondary-select-methods '(nnfolder "")) +@end example +@noindent + +Now we need to tell Gnus, where to get it's mail from. If +it's a POP3 server, then you need something like this: + +@example +(eval-after-load "mail-source" + '(add-to-list 'mail-sources '(pop :server "pop.YourProvider.net" + :user "yourUserName" + :password "yourPassword"))) +@end example +@noindent + +Make sure ~/.gnus.el isn't readable to others if you store +your password there. If you want to read your mail from a +traditional spool file on your local machine, it's + +@example +(eval-after-load "mail-source" + '(add-to-list 'mail-sources '(file :path "/path/to/spool/file")) +@end example +@noindent + +If it's a Maildir, with one file per message as used by +postfix, Qmail and (optionally) fetchmail it's + +@example +(eval-after-load "mail-source" + '(add-to-list 'mail-sources '(maildir :path "/path/to/Maildir/" + :subdirs ("cur" "new"))) +@end example +@noindent + +And finally if you want to read your mail from several files +in one directory, for example because procmail already split your +mail, it's + +@example +(eval-after-load "mail-source" + '(add-to-list 'mail-sources + '(directory :path "/path/to/procmail-dir/" + :suffix ".prcml"))) +@end example +@noindent + +Where :suffix ".prcml" tells Gnus only to use files with the +suffix .prcml. + +OK, now you only need to tell Gnus how to send mail. If you +want to send mail via sendmail (or whichever MTA is playing +the role of sendmail on your system), you don't need to do +anything. However, if you want to send your mail to an +SMTP Server you need the following in your ~/.gnus.el + +@example +(setq send-mail-function 'smtpmail-send-it) +(setq message-send-mail-function 'smtpmail-send-it) +(setq smtpmail-default-smtp-server "smtp.yourProvider.net") +@end example +@noindent + +@node [3.9] +@subsubheading Question 3.9 + +And what about IMAP? + +@subsubheading Answer + +There are two ways of using IMAP with Gnus. The first one is +to use IMAP like POP3, that means Gnus fetches the mail from +the IMAP server and stores it on disk. If you want to do +this (you don't really want to do this) add the following to +~/.gnus.el + +@example +(add-to-list 'mail-sources '(imap :server "mail.mycorp.com" + :user "username" + :pass "password" + :stream network + :authentication login + :mailbox "INBOX" + :fetchflag "\\Seen")) +@end example +@noindent + +You might have to tweak the values for stream and/or +authentification, see the Gnus manual node "Mail Source +Specifiers" for possible values. + +If you want to use IMAP the way it's intended, you've got to +follow a different approach. You've got to add the nnimap +back end to your select method and give the information +about the server there. + +@example +(add-to-list 'gnus-secondary-select-methods + '(nnimap "Give the baby a name" + (nnimap-address "imap.yourProvider.net") + (nnimap-port 143) + (nnimap-list-pattern "archive.*"))) +@end example +@noindent + +Again, you might have to specify how to authenticate to the +server if Gnus can't guess the correct way, see the Manual +Node "IMAP" for detailed information. + +@node [3.10] +@subsubheading Question 3.10 + +At the office we use one of those MS Exchange servers, can I use +Gnus to read my mail from it? + +@subsubheading Answer + +Offer your administrator a pair of new running shoes for +activating IMAP on the server and follow the instructions +above. + +@node [3.11] +@subsubheading Question 3.11 + +Can I tell Gnus not to delete the mails on the server it +retrieves via POP3? + +@subsubheading Answer + +First of all, that's not the way POP3 is intended to work, +if you have the possibility, you should use the IMAP +Protocol if you want your messages to stay on the +server. Nevertheless there might be situations where you +need the feature, but sadly Gnus itself has no predefined +functionality to do so. + +However this is Gnus county so there are possibilities to +achieve what you want. The easiest way is to get an external +program which retrieves copies of the mail and stores them +on disk, so Gnus can read it from there. On Unix systems you +could use e.g. fetchmail for this, on MS Windows you can use +Hamster, an excellent local news and mail server. + +The other solution would be, to replace the method Gnus +uses to get mail from POP3 servers by one which is capable +of leaving the mail on the server. If you use XEmacs, get +the package mail-lib, it includes an enhanced pop3.el, +look in the file, there's documentation on how to tell +Gnus to use it and not to delete the retrieved mail. For +GNU Emacs look for the file epop3.el which can do the same +(If you know the home of this file, please send me an +e-mail). You can also tell Gnus to use an external program +(e.g. fetchmail) to fetch your mail, see the info node +"Mail Source Specifiers" in the Gnus manual on how to do +it. + +@node FAQ 4 - Reading messages +@subsection Reading messages + +@menu +* [4.1]:: When I enter a group, all read messages are gone. How to + view them again? +* [4.2]:: How to tell Gnus to show an important message every time I + enter a group, even when it's read? +* [4.3]:: How to view the headers of a message? +* [4.4]:: How to view the raw unformatted message? +* [4.5]:: How can I change the headers Gnus displays by default at + the top of the article buffer? +* [4.6]:: I'd like Gnus NOT to render HTML-mails but show me the + text part if it's available. How to do it? +* [4.7]:: Can I use some other browser than w3 to render my + HTML-mails? +* [4.8]:: Is there anything I can do to make poorly formatted mails + more readable? +* [4.9]:: Is there a way to automatically ignore posts by specific + authors or with specific words in the subject? And can I highlight + more interesting ones in some way? +* [4.10]:: How can I disable threading in some (e.g. mail-) groups, + or set other variables specific for some groups? +* [4.11]:: Can I highlight messages written by me and follow-ups to + those? +* [4.12]:: The number of total messages in a group which Gnus + displays in group buffer is by far to high, especially in mail + groups. Is this a bug? +* [4.13]:: I don't like the layout of summary and article buffer, how + to change it? Perhaps even a three pane display? +* [4.14]:: I don't like the way the Summary buffer looks, how to + tweak it? +* [4.15]:: How to split incoming mails in several groups? +@end menu + +@node [4.1] +@subsubheading Question 4.1 + +When I enter a group, all read messages are gone. How to view them again? + +@subsubheading Answer + +If you enter the group by saying +@samp{RET} +in group buffer with point over the group, only unread and ticked messages are loaded. Say +@samp{C-u RET} +instead to load all available messages. If you want only the e.g. 300 newest say +@samp{C-u 300 RET} + +Loading only unread messages can be annoying if you have threaded view enabled, say + +@example +(setq gnus-fetch-old-headers 'some) +@end example +@noindent + +in ~/.gnus.el to load enough old articles to prevent teared threads, replace 'some with t to load +all articles (Warning: Both settings enlarge the amount of data which is +fetched when you enter a group and slow down the process of entering a group). + +If you already use Gnus 5.10, you can say +@samp{/o N} +In summary buffer to load the last N messages, this feature is not available in 5.8.8 + +If you don't want all old messages, but the parent of the message you're just reading, +you can say @samp{^}, if you want to retrieve the whole thread +the message you're just reading belongs to, @samp{A T} is your friend. + +@node [4.2] +@subsubheading Question 4.2 + +How to tell Gnus to show an important message every time I +enter a group, even when it's read? + +@subsubheading Answer + +You can tick important messages. To do this hit +@samp{u} while point is in summary buffer +over the message. When you want to remove the mark, hit +either @samp{d} (this deletes the tick +mark and set's unread mark) or @samp{M c} +(which deletes all marks for the message). + +@node [4.3] +@subsubheading Question 4.3 + +How to view the headers of a message? + +@subsubheading Answer + +Say @samp{t} +to show all headers, one more +@samp{t} +hides them again. + +@node [4.4] +@subsubheading Question 4.4 + +How to view the raw unformatted message? + +@subsubheading Answer + +Say +@samp{C-u g} +to show the raw message +@samp{g} +returns to normal view. + +@node [4.5] +@subsubheading Question 4.5 + +How can I change the headers Gnus displays by default at +the top of the article buffer? + +@subsubheading Answer + +The variable gnus-visible-headers controls which headers +are shown, its value is a regular expression, header lines +which match it are shown. So if you want author, subject, +date, and if the header exists, Followup-To and MUA / NUA +say this in ~/.gnus.el: + +@example +(setq gnus-visible-headers + '("^From" "^Subject" "^Date" "^Newsgroups" "^Followup-To" + "^User-Agent" "^X-Newsreader" "^X-Mailer")) +@end example +@noindent + +@node [4.6] +@subsubheading Question 4.6 + +I'd like Gnus NOT to render HTML-mails but show me the +text part if it's available. How to do it? + +@subsubheading Answer + +Say + +@example +(eval-after-load "mm-decode" + '(progn + (add-to-list 'mm-discouraged-alternatives "text/html") + (add-to-list 'mm-discouraged-alternatives "text/richtext"))) +@end example +@noindent + +in ~/.gnus.el. If you don't want HTML rendered, even if there's no text alternative add + +@example +(setq mm-automatic-display (remove "text/html" mm-automatic-display)) +@end example +@noindent + +too. + +@node [4.7] +@subsubheading Question 4.7 + +Can I use some other browser than w3 to render my HTML-mails? + +@subsubheading Answer + +Only if you use Gnus 5.10 or younger. In this case you've got the +choice between w3, w3m, links, lynx and html2text, which +one is used can be specified in the variable +mm-text-html-renderer, so if you want links to render your +mail say + +@example +(setq mm-text-html-renderer 'links) +@end example +@noindent + +@node [4.8] +@subsubheading Question 4.8 + +Is there anything I can do to make poorly formatted mails +more readable? + +@subsubheading Answer + +Gnus offers you several functions to "wash" incoming mail, you can +find them if you browse through the menu, item +Article->Washing. The most interesting ones are probably "Wrap +long lines" (@samp{W w}), "Decode ROT13" +(@samp{W r}) and "Outlook Deuglify" which repairs +the dumb quoting used by many users of Microsoft products +(@samp{W Y f} gives you full deuglify. +See @samp{W Y C-h} or have a look at the menus for +other deuglifications). Outlook deuglify is only available since +Gnus 5.10. + +@node [4.9] +@subsubheading Question 4.9 + +Is there a way to automatically ignore posts by specific +authors or with specific words in the subject? And can I +highlight more interesting ones in some way? + +@subsubheading Answer + +You want Scoring. Scoring means, that you define rules +which assign each message an integer value. Depending on +the value the message is highlighted in summary buffer (if +it's high, say +2000) or automatically marked read (if the +value is low, say -800) or some other action happens. + +There are basically three ways of setting up rules which assign +the scoring-value to messages. The first and easiest way is to set +up rules based on the article you are just reading. Say you're +reading a message by a guy who always writes nonsense and you want +to ignore his messages in the future. Hit +@samp{L}, to set up a rule which lowers the score. +Now Gnus asks you which the criteria for lowering the Score shall +be. Hit @samp{?} twice to see all possibilities, +we want @samp{a} which means the author (the from +header). Now Gnus wants to know which kind of matching we want. +Hit either @samp{e} for an exact match or +@samp{s} for substring-match and delete afterwards +everything but the name to score down all authors with the given +name no matter which email address is used. Now you need to tell +Gnus when to apply the rule and how long it should last, hit e.g. +@samp{p} to apply the rule now and let it last +forever. If you want to raise the score instead of lowering it say +@samp{I} instead of @samp{L}. + +You can also set up rules by hand. To do this say @samp{V +f} in summary buffer. Then you are asked for the name +of the score file, it's name.of.group.SCORE for rules valid in +only one group or all.Score for rules valid in all groups. See the +Gnus manual for the exact syntax, basically it's one big list +whose elements are lists again. the first element of those lists +is the header to score on, then one more list with what to match, +which score to assign, when to expire the rule and how to do the +matching. If you find me very interesting, you could e.g. add the +following to your all.Score: + +@example +(("references" ("hschmi22.userfqdn.rz-online.de" 500 nil s)) + ("message-id" ("hschmi22.userfqdn.rz-online.de" 999 nil s))) +@end example +@noindent + +This would add 999 to the score of messages written by me +and 500 to the score of messages which are a (possibly +indirect) answer to a message written by me. Of course +nobody with a sane mind would do this :-) + +The third alternative is adaptive scoring. This means Gnus +watches you and tries to find out what you find +interesting and what annoying and sets up rules +which reflect this. Adaptive scoring can be a huge help +when reading high traffic groups. If you want to activate +adaptive scoring say + +@example +(setq gnus-use-adaptive-scoring t) +@end example +@noindent + +in ~/.gnus.el. + +@node [4.10] +@subsubheading Question 4.10 + +How can I disable threading in some (e.g. mail-) groups, or +set other variables specific for some groups? + +@subsubheading Answer + +While in group buffer move point over the group and hit +@samp{G c}, this opens a buffer where you +can set options for the group. At the bottom of the buffer +you'll find an item that allows you to set variables +locally for the group. To disable threading enter +gnus-show-threads as name of variable and nil as +value. Hit button done at the top of the buffer when +you're ready. + +@node [4.11] +@subsubheading Question 4.11 + +Can I highlight messages written by me and follow-ups to +those? + +@subsubheading Answer + +Stop those "Can I ..." questions, the answer is always yes +in Gnus Country :-). It's a three step process: First we +make faces (specifications of how summary-line shall look +like) for those postings, then we'll give them some +special score and finally we'll tell Gnus to use the new +faces. You can find detailed instructions on how to do it on +@uref{http://my.gnus.org/node/view/224, my.gnus.org} + +@node [4.12] +@subsubheading Question 4.12 + +The number of total messages in a group which Gnus +displays in group buffer is by far to high, especially in +mail groups. Is this a bug? + +@subsubheading Answer + +No, that's a matter of design of Gnus, fixing this would +mean reimplementation of major parts of Gnus' +back ends. Gnus thinks "highest-article-number - +lowest-article-number = total-number-of-articles". This +works OK for Usenet groups, but if you delete and move +many messages in mail groups, this fails. To cure the +symptom, enter the group via @samp{C-u RET} +(this makes Gnus get all messages), then +hit @samp{M P b} to mark all messages and +then say @samp{B m name.of.group} to move +all messages to the group they have been in before, they +get new message numbers in this process and the count is +right again (until you delete and move your mail to other +groups again). + +@node [4.13] +@subsubheading Question 4.13 + +I don't like the layout of summary and article buffer, how +to change it? Perhaps even a three pane display? + +@subsubheading Answer + +You can control the windows configuration by calling the +function gnus-add-configuration. The syntax is a bit +complicated but explained very well in the manual node +"Window Layout". Some popular examples: + +Instead 25% summary 75% article buffer 35% summary and 65% +article (the 1.0 for article means "take the remaining +space"): + +@example +(gnus-add-configuration + '(article (vertical 1.0 (summary .35 point) (article 1.0)))) +@end example +@noindent + +A three pane layout, Group buffer on the left, summary +buffer top-right, article buffer bottom-right: + +@example +(gnus-add-configuration + '(article + (horizontal 1.0 + (vertical 25 + (group 1.0)) + (vertical 1.0 + (summary 0.25 point) + (article 1.0))))) +(gnus-add-configuration + '(summary + (horizontal 1.0 + (vertical 25 + (group 1.0)) + (vertical 1.0 + (summary 1.0 point))))) +@end example +@noindent + +@node [4.14] +@subsubheading Question 4.14 + +I don't like the way the Summary buffer looks, how to tweak it? + +@subsubheading Answer + +You've got to play around with the variable +gnus-summary-line-format. It's value is a string of +symbols which stand for things like author, date, subject +etc. A list of the available specifiers can be found in the +manual node "Summary Buffer Lines" and the often forgotten +node "Formatting Variables" and it's sub-nodes. There +you'll find useful things like positioning the cursor and +tabulators which allow you a summary in table form, but +sadly hard tabulators are broken in 5.8.8. + +Since 5.10, Gnus offers you some very nice new specifiers, +e.g. %B which draws a thread-tree and %&user-date which +gives you a date where the details are dependent of the +articles age. Here's an example which uses both: + +@example +(setq gnus-summary-line-format ":%U%R %B %s %-60=|%4L |%-20,20f |%&user-date; \n") +@end example +@noindent + +resulting in: + +@example +:O Re: [Richard Stallman] rfc2047.el | 13 |Lars Magne Ingebrigt |Sat 23:06 +:O Re: Revival of the ding-patches list | 13 |Lars Magne Ingebrigt |Sat 23:12 +:R > Re: Find correct list of articles for a gro| 25 |Lars Magne Ingebrigt |Sat 23:16 +:O \-> ... | 21 |Kai Grossjohann | 0:01 +:R > Re: Cry for help: deuglify.el - moving stuf| 28 |Lars Magne Ingebrigt |Sat 23:34 +:O \-> ... | 115 |Raymond Scholz | 1:24 +:O \-> ... | 19 |Lars Magne Ingebrigt |15:33 +:O Slow mailing list | 13 |Lars Magne Ingebrigt |Sat 23:49 +:O Re: `@@' mark not documented | 13 |Lars Magne Ingebrigt |Sat 23:50 +:R > Re: Gnus still doesn't count messages prope| 23 |Lars Magne Ingebrigt |Sat 23:57 +:O \-> ... | 18 |Kai Grossjohann | 0:35 +:O \-> ... | 13 |Lars Magne Ingebrigt | 0:56 +@end example +@noindent + +@node [4.15] +@subsubheading Question 4.15 + +How to split incoming mails in several groups? + +@subsubheading Answer + +Gnus offers two possibilities for splitting mail, the easy +nnmail-split-methods and the more powerful Fancy Mail +Splitting. I'll only talk about the first one, refer to +the manual, node "Fancy Mail Splitting" for the latter. + +The value of nnmail-split-methods is a list, each element +is a list which stands for a splitting rule. Each rule has +the form "group where matching articles should go to", +"regular expression which has to be matched", the first +rule which matches wins. The last rule must always be a +general rule (regular expression .*) which denotes where +articles should go which don't match any other rule. If +the folder doesn't exist yet, it will be created as soon +as an article lands there. By default the mail will be +send to all groups whose rules match. If you +don't want that (you probably don't want), say + +@example +(setq nnmail-crosspost nil) +@end example +@noindent + +in ~/.gnus.el. + +An example might be better than thousand words, so here's +my nnmail-split-methods. Note that I send duplicates in a +special group and that the default group is spam, since I +filter all mails out which are from some list I'm +subscribed to or which are addressed directly to me +before. Those rules kill about 80% of the Spam which +reaches me (Email addresses are changed to prevent spammers +from using them): + +@example +(setq nnmail-split-methods + '(("duplicates" "^Gnus-Warning:.*duplicate") + ("XEmacs-NT" "^\\(To:\\|CC:\\).*localpart@@xemacs.bla.*") + ("Gnus-Tut" "^\\(To:\\|CC:\\).*localpart@@socha.bla.*") + ("tcsh" "^\\(To:\\|CC:\\).*localpart@@mx.gw.bla.*") + ("BAfH" "^\\(To:\\|CC:\\).*localpart@@.*uni-muenchen.bla.*") + ("Hamster-src" "^\\(CC:\\|To:\\).*hamster-sourcen@@yahoogroups.\\(de\\|com\\).*") + ("Tagesschau" "^From: tagesschau $") + ("Replies" "^\\(CC:\\|To:\\).*localpart@@Frank-Schmitt.bla.*") + ("EK" "^From:.*\\(localpart@@privateprovider.bla\\|localpart@@workplace.bla\\).*") + ("Spam" "^Content-Type:.*\\(ks_c_5601-1987\\|EUC-KR\\|big5\\|iso-2022-jp\\).*") + ("Spam" "^Subject:.*\\(This really work\\|XINGA\\|ADV:\\|XXX\\|adult\\|sex\\).*") + ("Spam" "^Subject:.*\\(\=\?ks_c_5601-1987\?\\|\=\?euc-kr\?\\|\=\?big5\?\\).*") + ("Spam" "^X-Mailer:\\(.*BulkMailer.*\\|.*MIME::Lite.*\\|\\)") + ("Spam" "^X-Mailer:\\(.*CyberCreek Avalanche\\|.*http\:\/\/GetResponse\.com\\)") + ("Spam" "^From:.*\\(verizon\.net\\|prontomail\.com\\|money\\|ConsumerDirect\\).*") + ("Spam" "^Delivered-To: GMX delivery to spamtrap@@gmx.bla$") + ("Spam" "^Received: from link2buy.com") + ("Spam" "^CC: .*azzrael@@t-online.bla") + ("Spam" "^X-Mailer-Version: 1.50 BETA") + ("Uni" "^\\(CC:\\|To:\\).*localpart@@uni-koblenz.bla.*") + ("Inbox" "^\\(CC:\\|To:\\).*\\(my\ name\\|address@@one.bla\\|adress@@two.bla\\)") + ("Spam" ""))) +@end example +@noindent + +@node FAQ 5 - Composing messages +@subsection Composing messages + +@menu +* [5.1]:: What are the basic commands I need to know for sending + mail and postings? +* [5.2]:: How to enable automatic word-wrap when composing messages? +* [5.3]:: How to set stuff like From, Organization, Reply-To, + signature...? +* [5.4]:: Can I set things like From, Signature etc group based on + the group I post too? +* [5.5]:: Is there a spell-checker? Perhaps even on-the-fly + spell-checking? +* [5.6]:: Can I set the dictionary based on the group I'm posting + to? +* [5.7]:: Is there some kind of address-book, so I needn't remember + all those email addresses? +* [5.8]:: Sometimes I see little images at the top of article + buffer. What's that and how can I send one with my postings, too? +* [5.9]:: Sometimes I accidentally hit r instead of f in newsgroups. + Can Gnus warn me, when I'm replying by mail in newsgroups? +* [5.10]:: How to tell Gnus not to generate a sender header? +* [5.11]:: I want Gnus to locally store copies of my send mail and + news, how to do it? +* [5.12]:: People tell me my Message-IDs are not correct, why aren't + they and how to fix it? +@end menu + +@node [5.1] +@subsubheading Question 5.1 + +What are the basic commands I need to know for sending mail and postings? + +@subsubheading Answer + +To start composing a new mail hit @samp{m} +either in Group or Summary buffer, for a posting, it's +either @samp{a} in Group buffer and +filling the Newsgroups header manually +or @samp{a} in the Summary buffer of the +group where the posting shall be send to. Replying by mail +is +@samp{r} if you don't want to cite the +author, or import the cited text manually and +@samp{R} to cite the text of the original +message. For a follow up to a newsgroup, it's +@samp{f} and @samp{F} +(analogously to @samp{r} and +@samp{R}). + +Enter new headers above the line saying "--text follows +this line--", enter the text below the line. When ready +hit @samp{C-c C-c}, to send the message, +if you want to finish it later hit @samp{C-c +C-d} to save it in the drafts group, where you +can start editing it again by saying @samp{D +e}. + +@node [5.2] +@subsubheading Question 5.2 + +How to enable automatic word-wrap when composing messages? + +@subsubheading Answer + +Say + +@example +(add-hook 'message-mode-hook + (lambda () + (setq fill-column 72) + (turn-on-auto-fill))) +@end example +@noindent + +in ~/.gnus.el. You can reformat a paragraph by hitting +@samp{M-q} (as usual) + +@node [5.3] +@subsubheading Question 5.3 + +How to set stuff like From, Organization, Reply-To, signature...? + +@subsubheading Answer + +There are other ways, but you should use posting styles +for this. (See below why). +This example should make the syntax clear: + +@example +(setq gnus-posting-styles + '((".*" + (name "Frank Schmitt") + (address "me@@there.bla") + (organization "Hamme net, kren mer och nimmi") + (signature-file "~/.signature") + ("X-SampleHeader" "foobar") + (eval (setq some-variable "Foo bar"))))) +@end example +@noindent + +The ".*" means that this settings are the default ones +(see below), valid values for the first element of the +following lists are signature, signature-file, +organization, address, name or body. The attribute name +can also be a string. In that case, this will be used as +a header name, and the value will be inserted in the +headers of the article; if the value is `nil', the header +name will be removed. You can also say (eval (foo bar)), +then the function foo will be evaluated with argument bar +and the result will be thrown away. + +@node [5.4] +@subsubheading Question 5.4 + +Can I set things like From, Signature etc group based on the group I post too? + +@subsubheading Answer + +That's the strength of posting styles. Before, we used ".*" +to set the default for all groups. You can use a regexp +like "^gmane" and the following settings are only applied +to postings you send to the gmane hierarchy, use +".*binaries" instead and they will be applied to postings +send to groups containing the string binaries in their +name etc. + +You can instead of specifying a regexp specify a function +which is evaluated, only if it returns true, the +corresponding settings take effect. Two interesting +candidates for this are message-news-p which returns t if +the current Group is a newsgroup and the corresponding +message-mail-p. + +Note that all forms that match are applied, that means in +the example below, when I post to +gmane.mail.spam.spamassassin.general, the settings under +".*" are applied and the settings under message-news-p and +those under "^gmane" and those under +"^gmane\\.mail\\.spam\\.spamassassin\\.general$". Because +of this put general settings at the top and specific ones +at the bottom. + +@example +(setq gnus-posting-styles + '((".*" ;;default + (name "Frank Schmitt") + (organization "Hamme net, kren mer och nimmi") + (signature-file "~/.signature") ) + ((message-news-p) ;;Usenet news? + (address "mySpamTrap@@Frank-Schmitt.bla") + ("Reply-To" "hereRealRepliesOnlyPlease@@Frank-Schmitt.bla") ) + ((message-mail-p) ;;mail? + (address "usedForMails@@Frank-Schmitt.bla") ) + ("^gmane" ;;this is mail, too in fact + (address "usedForMails@@Frank-Schmitt.net") + ("Reply-To" nil) ) + ("^gmane.mail.spam.spamassassin.general$" + (eval (setq mail-envelope-from "Azzrael@@rz-online.de")) + (address "Azzrael@@rz-online.de")) )) +@end example +@noindent + +@node [5.5] +@subsubheading Question 5.5 + +Is there a spell-checker? Perhaps even on-the-fly spell-checking? + +@subsubheading Answer + +You can use ispell.el to spell-check stuff in Emacs. So the +first thing to do is to make sure that you've got either +@uref{http://fmg-www.cs.ucla.edu/fmg-members/geoff/ispell.html, ispell} +or @uref{http://aspell.sourceforge.net/, aspell} +installed and in your Path. Then you need +@uref{http://www.kdstevens.com/~stevens/ispell-page.html, ispell.el} +and for on-the-fly spell-checking +@uref{http://www-sop.inria.fr/mimosa/personnel/Manuel.Serrano/flyspell/flyspell.html, flyspell.el}. +Ispell.el is shipped with Emacs and available through the XEmacs package system, +flyspell.el is shipped with Emacs and part of XEmacs text-modes package which is +available through the package system, so there should be no need to install them +manually. + +Ispell.el assumes you use ispell, if you choose aspell say + +@example +(setq ispell-program-name "aspell") +@end example +@noindent + +in your Emacs configuration file. + +If you want your outgoing messages to be spell-checked, say + +@example +(add-hook 'message-send-hook 'ispell-message) +@end example +@noindent + +In your ~/.gnus.el, if you prefer on-the-fly spell-checking say + +@example +(add-hook 'message-mode-hook (lambda () (flyspell-mode 1))) +@end example +@noindent + +@node [5.6] +@subsubheading Question 5.6 + +Can I set the dictionary based on the group I'm posting to? + +@subsubheading Answer + +Yes, say something like + +@example +(add-hook 'gnus-select-group-hook + (lambda () + (cond + ((string-match + "^de\\." (gnus-group-real-name gnus-newsgroup-name)) + (ispell-change-dictionary "deutsch8")) + (t + (ispell-change-dictionary "english"))))) +@end example +@noindent + +in ~/.gnus.el. Change "^de\\." and "deutsch8" to something +that suits your needs. + +@node [5.7] +@subsubheading Question 5.7 + +Is there some kind of address-book, so I needn't remember +all those email addresses? + +@subsubheading Answer + +There's an very basic solution for this, mail aliases. +You can store your mail addresses in a ~/.mailrc file using a simple +alias syntax: + +@example +alias al "Al " +@end example +@noindent + +Then typing your alias (followed by a space or punctuation +character) on a To: or Cc: line in the message buffer will +cause Gnus to insert the full address for you. See the +node "Mail Aliases" in Message (not Gnus) manual for +details. + +However, what you really want is the Insidious Big Brother +Database bbdb. Get it through the XEmacs package system or from +@uref{http://bbdb.sourceforge.net/, bbdb's homepage}. +Now place the following in ~/.gnus.el, to activate bbdb for Gnus: + +@example +(require 'bbdb) +(bbdb-initialize 'gnus 'message) +@end example +@noindent + +Now you probably want some general bbdb configuration, +place them in ~/.emacs: + +@example +(require 'bbdb) +;;If you don't live in Northern America, you should disable the +;;syntax check for telephone numbers by saying +(setq bbdb-north-american-phone-numbers-p nil) +;;Tell bbdb about your email address: +(setq bbdb-user-mail-names + (regexp-opt '("Your.Email@@here.bla" + "Your.other@@mail.there.bla"))) +;;cycling while completing email addresses +(setq bbdb-complete-name-allow-cycling t) +;;No popup-buffers +(setq bbdb-use-pop-up nil) +@end example +@noindent + +Now you should be ready to go. Say @samp{M-x bbdb RET +RET} to open a bbdb buffer showing all +entries. Say @samp{c} to create a new +entry, @samp{b} to search your BBDB and +@samp{C-o} to add a new field to an +entry. If you want to add a sender to the BBDB you can +also just hit `:' on the posting in the summary buffer and +you are done. When you now compose a new mail, +hit @samp{TAB} to cycle through know +recipients. + +@node [5.8] +@subsubheading Question 5.8 + +Sometimes I see little images at the top of article +buffer. What's that and how can I send one with my +postings, too? + +@subsubheading Answer + +Those images are called X-Faces. They are 48*48 pixel b/w +pictures, encoded in a header line. If you want to include +one in your posts, you've got to convert some image to a +X-Face. So fire up some image manipulation program (say +Gimp), open the image you want to include, cut out the +relevant part, reduce color depth to 1 bit, resize to +48*48 and save as bitmap. Now you should get the compface +package from +@uref{ftp://ftp.cs.indiana.edu:/pub/faces/, this site}. +and create the actual X-face by saying + +@example +cat file.xbm | xbm2ikon | compface > file.face +cat file.face | sed 's/\\/\\\\/g;s/\"/\\\"/g;' > file.face.quoted +@end example +@noindent + +If you can't use compface, there's an online X-face converter at +@uref{http://www.dairiki.org/xface/}. +If you use MS Windows, you could also use the WinFace program from +@uref{http://www.xs4all.nl/~walterln/winface/}. +Now you only have to tell Gnus to include the X-face in your postings by saying + +@example +(setq message-default-headers + (with-temp-buffer + (insert "X-Face: ") + (insert-file-contents "~/.xemacs/xface") + (buffer-string))) +@end example +@noindent + +in ~/.gnus.el. + +@node [5.9] +@subsubheading Question 5.9 + +Sometimes I accidentally hit r instead of f in +newsgroups. Can Gnus warn me, when I'm replying by mail in +newsgroups? + +@subsubheading Answer + +Put this in ~/.gnus.el: + +@example +(setq gnus-confirm-mail-reply-to-news t) +@end example +@noindent + +if you already use Gnus 5.10, if you still use 5.8.8 or +5.9 try this instead: + +@example +(eval-after-load "gnus-msg" + '(unless (boundp 'gnus-confirm-mail-reply-to-news) + (defadvice gnus-summary-reply (around reply-in-news activate) + "Request confirmation when replying to news." + (interactive) + (when (or (not (gnus-news-group-p gnus-newsgroup-name)) + (y-or-n-p "Really reply by mail to article author? ")) + ad-do-it)))) +@end example +@noindent + +@node [5.10] +@subsubheading Question 5.10 + +How to tell Gnus not to generate a sender header? + +@subsubheading Answer + +Since 5.10 Gnus doesn't generate a sender header by +default. For older Gnus' try this in ~/.gnus.el: + +@example +(eval-after-load "message" + '(add-to-list 'message-syntax-checks '(sender . disabled))) +@end example +@noindent + +@node [5.11] +@subsubheading Question 5.11 + +I want Gnus to locally store copies of my send mail and +news, how to do it? + +@subsubheading Answer + +You must set the variable gnus-message-archive-group to do +this. You can set it to a string giving the name of the +group where the copies shall go or like in the example +below use a function which is evaluated and which returns +the group to use. + +@example +(setq gnus-message-archive-group + '((if (message-news-p) + "nnml:Send-News" + "nnml:Send-Mail"))) +@end example +@noindent + +@node [5.12] +@subsubheading Question 5.12 + +People tell me my Message-IDs are not correct, why +aren't they and how to fix it? + +@subsubheading Answer + +The message-ID is an unique identifier for messages you +send. To make it unique, Gnus need to know which machine +name to put after the "@@". If the name of the machine +where Gnus is running isn't suitable (it probably isn't +at most private machines) you can tell Gnus what to use +by saying: + +@example +(setq message-user-fqdn "yourmachine.yourdomain.tld") +@end example +@noindent + +in ~/.gnus.el. If you use Gnus 5.9 or ealier, you can use this +instead (works for newer versions a well): + +@example +(eval-after-load "message" + '(let ((fqdn "yourmachine.yourdomain.tld"));; <-- Edit this! + (if (boundp 'message-user-fqdn) + (setq message-user-fqdn fqdn) + (gnus-message 1 "Redefining `message-make-fqdn'.") + (defun message-make-fqdn () + "Return user's fully qualified domain name." + fqdn)))) +@end example +@noindent + +If you have no idea what to insert for +"yourmachine.yourdomain.tld", you've got several +choices. You can either ask your provider if he allows +you to use something like +yourUserName.userfqdn.provider.net, or you can use +somethingUnique.yourdomain.tld if you own the domain +yourdomain.tld, or you can register at a service which +gives private users a FQDN for free, e.g. +@uref{http://www.stura.tu-freiberg.de/~dlx/addfqdn.html}. +(Sorry but this website is in German, if you know of an +English one offering the same, drop me a note). + +Finally you can tell Gnus not to generate a Message-ID +for News at all (and letting the server do the job) by saying + +@example +(setq message-required-news-headers + (remove' Message-ID message-required-news-headers)) +@end example +@noindent + +you can also tell Gnus not to generate Message-IDs for mail by saying + +@example +(setq message-required-mail-headers + (remove' Message-ID message-required-mail-headers)) +@end example +@noindent + +, however some mail servers don't generate proper +Message-IDs, too, so test if your Mail Server behaves +correctly by sending yourself a Mail and looking at the Message-ID. + +@node FAQ 6 - Old messages +@subsection Old messages + +@menu +* [6.1]:: How to import my old mail into Gnus? +* [6.2]:: How to archive interesting messages? +* [6.3]:: How to search for a specific message? +* [6.4]:: How to get rid of old unwanted mail? +* [6.5]:: I want that all read messages are expired (at least in some + groups). How to do it? +* [6.6]:: I don't want expiration to delete my mails but to move them + to another group. +@end menu + +@node [6.1] +@subsubheading Question 6.1 + +How to import my old mail into Gnus? + +@subsubheading Answer + +The easiest way is to tell your old mail program to +export the messages in mbox format. Most Unix mailers +are able to do this, if you come from the MS Windows +world, you may find tools at +@uref{http://mbx2mbox.sourceforge.net/}. + +Now you've got to import this mbox file into Gnus. To do +this, create a nndoc group based on the mbox file by +saying @samp{G f /path/file.mbox RET} in +Group buffer. You now have read-only access to your +mail. If you want to import the messages to your normal +Gnus mail groups hierarchy, enter the nndoc group you've +just created by saying @samp{C-u RET} +(thus making sure all messages are retrieved), mark all +messages by saying @samp{M P b} and +either copy them to the desired group by saying +@samp{B c name.of.group RET} or send them +through nnmail-split-methods (respool them) by saying +@samp{B r}. + +@node [6.2] +@subsubheading Question 6.2 + +How to archive interesting messages? + +@subsubheading Answer + +If you stumble across an interesting message, say in +gnu.emacs.gnus and want to archive it there are several +solutions. The first and easiest is to save it to a file +by saying @samp{O f}. However, wouldn't +it be much more convenient to have more direct access to +the archived message from Gnus? If you say yes, put this +snippet by Frank Haun in +~/.gnus.el: + +@example +(defun my-archive-article (&optional n) + "Copies one or more article(s) to a corresponding `nnml:' group, e.g. +`gnus.ding' goes to `nnml:1.gnus.ding'. And `nnml:List-gnus.ding' goes +to `nnml:1.List-gnus-ding'. + +Use process marks or mark a region in the summary buffer to archive +more then one article." + (interactive "P") + (let ((archive-name + (format + "nnml:1.%s" + (if (featurep 'xemacs) + (replace-in-string gnus-newsgroup-name "^.*:" "") + (replace-regexp-in-string "^.*:" "" gnus-newsgroup-name))))) + (gnus-summary-copy-article n archive-name))) +@end example +@noindent + +You can now say @samp{M-x +my-archive-article} in summary buffer to +archive the article under the cursor in a nnml +group. (Change nnml to your preferred back end) + +Of course you can also make sure the cache is enabled by saying + +@example +(setq gnus-use-cache t) +@end example +@noindent + +then you only have to set either the tick or the dormant +mark for articles you want to keep, setting the read +mark will remove them from cache. + +@node [6.3] +@subsubheading Question 6.3 + +How to search for a specific message? + +@subsubheading Answer + +There are several ways for this, too. For a posting from +a Usenet group the easiest solution is probably to ask +@uref{http://groups.google.com, groups.google.com}, +if you found the posting there, tell Google to display +the raw message, look for the message-id, and say +@samp{M-^ the@@message.id RET} in a +summary buffer. +Since Gnus 5.10 there's also a Gnus interface for +groups.google.com which you can call with +@samp{G W}) in group buffer. + +Another idea which works for both mail and news groups +is to enter the group where the message you are +searching is and use the standard Emacs search +@samp{C-s}, it's smart enough to look at +articles in collapsed threads, too. If you want to +search bodies, too try @samp{M-s} +instead. Further on there are the +gnus-summary-limit-to-foo functions, which can help you, +too. + +Of course you can also use grep to search through your +local mail, but this is both slow for big archives and +inconvenient since you are not displaying the found mail +in Gnus. Here comes nnir into action. Nnir is a front end +to search engines like swish-e or swish++ and +others. You index your mail with one of those search +engines and with the help of nnir you can search trough +the indexed mail and generate a temporary group with all +messages which met your search criteria. If this sound +cool to you get nnir.el from +@uref{ftp://ls6-ftp.cs.uni-dortmund.de/pub/src/emacs/} +or @uref{ftp://ftp.is.informatik.uni-duisburg.de/pub/src/emacs/}. +Instructions on how to use it are at the top of the file. + +@node [6.4] +@subsubheading Question 6.4 + +How to get rid of old unwanted mail? + +@subsubheading Answer + +You can of course just mark the mail you don't need +anymore by saying @samp{#} with point +over the mail and then say @samp{B DEL} +to get rid of them forever. You could also instead of +actually deleting them, send them to a junk-group by +saying @samp{B m nnml:trash-bin} which +you clear from time to time, but both are not the intended +way in Gnus. + +In Gnus, we let mail expire like news expires on a news +server. That means you tell Gnus the message is +expirable (you tell Gnus "I don't need this mail +anymore") by saying @samp{E} with point +over the mail in summary buffer. Now when you leave the +group, Gnus looks at all messages which you marked as +expirable before and if they are old enough (default is +older than a week) they are deleted. + +@node [6.5] +@subsubheading Question 6.5 + +I want that all read messages are expired (at least in +some groups). How to do it? + +@subsubheading Answer + +If you want all read messages to be expired (e.g. in +mailing lists where there's an online archive), you've +got two choices: auto-expire and +total-expire. Auto-expire means, that every article +which has no marks set and is selected for reading is +marked as expirable, Gnus hits @samp{E} +for you every time you read a message. Total-expire +follows a slightly different approach, here all article +where the read mark is set are expirable. + +To activate auto-expire, include auto-expire in the +Group parameters for the group. (Hit @samp{G +c} in summary buffer with point over the +group to change group parameters). For total-expire add +total-expire to the group-parameters. + +Which method you choose is merely a matter of taste: +Auto-expire is faster, but it doesn't play together with +Adaptive Scoring, so if you want to use this feature, +you should use total-expire. + +If you want a message to be excluded from expiration in +a group where total or auto expire is active, set either +tick (hit @samp{u}) or dormant mark (hit +@samp{u}), when you use auto-expire, you +can also set the read mark (hit +@samp{d}). + +@node [6.6] +@subsubheading Question 6.6 + +I don't want expiration to delete my mails but to move them +to another group. + +@subsubheading Answer + +Say something like this in ~/.gnus.el: + +@example +(setq nnmail-expiry-target "nnml:expired") +@end example +@noindent + +(If you want to change the value of nnmail-expiry-target +on a per group basis see the question "How can I disable +threading in some (e.g. mail-) groups, or set other +variables specific for some groups?") + +@node FAQ 7 - Gnus in a dial-up environment +@subsection Gnus in a dial-up environment + +@menu +* [7.1]:: I don't have a permanent connection to the net, how can I + minimize the time I've got to be connected? +* [7.2]:: So what was this thing about the Agent? +* [7.3]:: I want to store article bodies on disk, too. How to do it? +* [7.4]:: How to tell Gnus not to try to send mails / postings while + I'm offline? +@end menu + +@node [7.1] +@subsubheading Question 7.1 + +I don't have a permanent connection to the net, how can +I minimize the time I've got to be connected? + +@subsubheading Answer + +You've got basically two options: Either you use the +Gnus Agent (see below) for this, or you can install +programs which fetch your news and mail to your local +disk and Gnus reads the stuff from your local +machine. + +If you want to follow the second approach, you need a +program which fetches news and offers them to Gnus, a +program which does the same for mail and a program which +receives the mail you write from Gnus and sends them +when you're online. + +Let's talk about Unix systems first: For the news part, +the easiest solution is a small nntp server like +@uref{http://www.leafnode.org/, Leafnode} or +@uref{http://infa.abo.fi/~patrik/sn/, sn}, +of course you can also install a full featured news +server like +@uref{http://www.isc.org/products/INN/, inn}. +Then you want to fetch your Mail, popular choices +are @uref{http://www.catb.org/~esr/fetchmail/, fetchmail} +and @uref{http://www.qcc.ca/~charlesc/software/getmail-3.0/, getmail}. +You should tell those to write the mail to your disk and +Gnus to read it from there. Last but not least the mail +sending part: This can be done with every MTA like +@uref{http://www.sendmail.org/, sendmail}, +@uref{http://www.qmail.org/, postfix}, +@uref{http://www.exim.org/, exim} or +@uref{http://www.qmail.org/, qmail}. + +On windows boxes I'd vote for +@uref{http://www.tglsoft.de/, Hamster}, +it's a small freeware, open-source program which fetches +your mail and news from remote servers and offers them +to Gnus (or any other mail and/or news reader) via nntp +respectively POP3 or IMAP. It also includes a smtp +server for receiving mails from Gnus. + +@node [7.2] +@subsubheading Question 7.2 + +So what was this thing about the Agent? + +@subsubheading Answer + +The Gnus agent is part of Gnus, it allows you to fetch +mail and news and store them on disk for reading them +later when you're offline. It kind of mimics offline +newsreaders like e.g. Forte Agent. If you want to use +the Agent place the following in ~/.gnus.el if you are +still using 5.8.8 or 5.9 (it's the default since 5.10): + +@example +(setq gnus-agent t) +@end example +@noindent + +Now you've got to select the servers whose groups can be +stored locally. To do this, open the server buffer +(that is press @samp{^} while in the +group buffer). Now select a server by moving point to +the line naming that server. Finally, agentize the +server by typing @samp{J a}. If you +make a mistake, or change your mind, you can undo this +action by typing @samp{J r}. When +you're done, type 'q' to return to the group buffer. +Now the next time you enter a group on a agentized +server, the headers will be stored on disk and read from +there the next time you enter the group. + +@node [7.3] +@subsubheading Question 7.3 + +I want to store article bodies on disk, too. How to do it? + +@subsubheading Answer + +You can tell the agent to automatically fetch the bodies +of articles which fulfill certain predicates, this is +done in a special buffer which can be reached by +saying @samp{J c} in group +buffer. Please refer to the documentation for +information which predicates are possible and how +exactly to do it. + +Further on you can tell the agent manually which +articles to store on disk. There are two ways to do +this: Number one: In the summary buffer, process mark a +set of articles that shall be stored in the agent by +saying @samp{#} with point over the +article and then type @samp{J s}. The +other possibility is to set, again in the summary +buffer, downloadable (%) marks for the articles you +want by typing @samp{@@} with point over +the article and then typing @samp{J u}. +What's the difference? Well, process marks are erased as +soon as you exit the summary buffer while downloadable +marks are permanent. You can actually set downloadable +marks in several groups then use fetch session ('J s' in +the GROUP buffer) to fetch all of those articles. The +only downside is that fetch session also fetches all of +the headers for every selected group on an agentized +server. Depending on the volume of headers, the initial +fetch session could take hours. + +@node [7.4] +@subsubheading Question 7.4 + +How to tell Gnus not to try to send mails / postings +while I'm offline? + +@subsubheading Answer + +All you've got to do is to tell Gnus when you are online +(plugged) and when you are offline (unplugged), the rest +works automatically. You can toggle plugged/unplugged +state by saying @samp{J j} in group +buffer. To start Gnus unplugged say @samp{M-x +gnus-unplugged} instead of +@samp{M-x gnus}. Note that for this to +work, the agent must be active. + +@node FAQ 8 - Getting help +@subsection Getting help + +@menu +* [8.1]:: How to find information and help inside Emacs? +* [8.2]:: I can't find anything in the Gnus manual about X (e.g. + attachments, PGP, MIME...), is it not documented? +* [8.3]:: Which websites should I know? +* [8.4]:: Which mailing lists and newsgroups are there? +* [8.5]:: Where to report bugs? +* [8.6]:: I need real-time help, where to find it? +@end menu + +@node [8.1] +@subsubheading Question 8.1 + +How to find information and help inside Emacs? + +@subsubheading Answer + +The first stop should be the Gnus manual (Say +@samp{C-h i d m Gnus RET} to start the +Gnus manual, then walk through the menus or do a +full-text search with @samp{s}). Then +there are the general Emacs help commands starting with +C-h, type @samp{C-h ? ?} to get a list +of all available help commands and their meaning. Finally +@samp{M-x apropos-command} lets you +search through all available functions and @samp{M-x +apropos} searches the bound variables. + +@node [8.2] +@subsubheading Question 8.2 + +I can't find anything in the Gnus manual about X +(e.g. attachments, PGP, MIME...), is it not documented? + +@subsubheading Answer + +There's not only the Gnus manual but also the manuals +for message, emacs-mime, sieve and pgg. Those packages +are distributed with Gnus and used by Gnus but aren't +really part of core Gnus, so they are documented in +different info files, you should have a look in those +manuals, too. + +@node [8.3] +@subsubheading Question 8.3 + +Which websites should I know? + +@subsubheading Answer + +The two most important ones are the +@uref{http://www.gnus.org, official Gnus website}. +and it's sister site +@uref{http://my.gnus.org, my.gnus.org (MGO)}, +hosting an archive of lisp snippets, howtos, a (not +really finished) tutorial and this FAQ. + +Tell me about other sites which are interesting. + +@node [8.4] +@subsubheading Question 8.4 + +Which mailing lists and newsgroups are there? + +@subsubheading Answer + +There's the newsgroup gnu.emacs.gnus (pull it from +e.g. news.gnus.org) which deals with general questions and the +ding mailing list (ding@@gnus.org) dealing with development of +Gnus. You can read the ding list via NNTP, too under the name +gmane.emacs.gnus.general from news.gmane.org. + +If you want to stay in the big8, +news.software.newssreaders is also read by some Gnus +users (but chances for qualified help are much better in +the above groups) and if you speak German, there's +de.comm.software.gnus. + +@node [8.5] +@subsubheading Question 8.5 + +Where to report bugs? + +@subsubheading Answer + +Say @samp{M-x gnus-bug}, this will start +a message to the +@email{bugs@@gnus.org, gnus bug mailing list} +including information about your environment which make +it easier to help you. + +@node [8.6] +@subsubheading Question 8.6 + +I need real-time help, where to find it? + +@subsubheading Answer + +Point your IRC client to irc.my.gnus.org channel +#mygnus. Don't be afraid if people there speak German, +they are willing and capable of switching to +English when people from outside Germany enter. + +@node FAQ 9 - Tuning Gnus +@subsection Tuning Gnus + +@menu +* [9.1]:: Starting Gnus is really slow, how to speed it up? +* [9.2]:: How to speed up the process of entering a group? +* [9.3]:: Sending mail becomes slower and slower, what's up? +@end menu + +@node [9.1] +@subsubheading Question 9.1 + +Starting Gnus is really slow, how to speed it up? + +@subsubheading Answer + +The reason for this could be the way Gnus reads it's +active file, see the node "The Active File" in the Gnus +manual for things you might try to speed the process up. +An other idea would be to byte compile your ~/.gnus.el (say +@samp{M-x byte-compile-file RET ~/.gnus.el +RET} to do it). Finally, if you have require +statements in your .gnus, you could replace them with +eval-after-load, which loads the stuff not at startup +time, but when it's needed. Say you've got this in your +~/.gnus.el: + +@example +(require 'message) +(add-to-list 'message-syntax-checks '(sender . disabled)) +@end example +@noindent + +then as soon as you start Gnus, message.el is loaded. If +you replace it with + +@example +(eval-after-load "message" + '(add-to-list 'message-syntax-checks '(sender . disabled))) +@end example +@noindent + +it's loaded when it's needed. + +@node [9.2] +@subsubheading Question 9.2 + +How to speed up the process of entering a group? + +@subsubheading Answer + +A speed killer is setting the variable +gnus-fetch-old-headers to anything different from nil, +so don't do this if speed is an issue. To speed up +building of summary say + +@example +(gnus-compile) +@end example +@noindent + +at the bottom of your ~/.gnus.el, this will make gnus +byte-compile things like +gnus-summary-line-format. +then you could increase the value of gc-cons-threshold +by saying something like + +@example +(setq gc-cons-threshold 3500000) +@end example +@noindent + +in ~/.emacs. If you don't care about width of CJK +characters or use Gnus 5.10 or younger together with a +recent GNU Emacs, you should say + +@example +(setq gnus-use-correct-string-widths nil) +@end example +@noindent + +in ~/.gnus.el (thanks to Jesper harder for the last +two suggestions). Finally if you are still using 5.8.8 +or 5.9 and experience speed problems with summary +buffer generation, you definitely should update to +5.10 since there quite some work on improving it has +been done. + +@node [9.3] +@subsubheading Question 9.3 + +Sending mail becomes slower and slower, what's up? + +@subsubheading Answer + +The reason could be that you told Gnus to archive the +messages you wrote by setting +gnus-message-archive-group. Try to use a nnml group +instead of an archive group, this should bring you back +to normal speed. + +@node FAQ - Glossary +@subsection Glossary + +@table @dfn + +@item ~/.gnus.el +When the term ~/.gnus.el is used it just means your Gnus +configuration file. You might as well call it ~/.gnus or +specify another name. + +@item Back End +In Gnus terminology a back end is a virtual server, a layer +between core Gnus and the real NNTP-, POP3-, IMAP- or +whatever-server which offers Gnus a standardized interface +to functions like "get message", "get Headers" etc. + +@item Emacs +When the term Emacs is used in this FAQ, it means either GNU +Emacs or XEmacs. + +@item Message +In this FAQ message means a either a mail or a posting to a +Usenet Newsgroup or to some other fancy back end, no matter +of which kind it is. + +@item MUA +MUA is an acronym for Mail User Agent, it's the program you +use to read and write e-mails. + +@item NUA +NUA is an acronym for News User Agent, it's the program you +use to read and write Usenet news. + +@end table + +@c Local Variables: +@c coding: iso-2022-7bit +@c fill-column: 72 +@c mode: texinfo +@c use-kuten-for-period: t +@c use-touten-for-comma: t +@c End: diff --git a/gnus-ja.texi b/gnus-ja.texi new file mode 100644 index 0000000..2309e60 --- /dev/null +++ b/gnus-ja.texi @@ -0,0 +1,28430 @@ +\input texinfo + +@setfilename gnus-ja +@settitle Gnus Manual +@syncodeindex fn cp +@syncodeindex vr cp +@syncodeindex pg cp + +@copying +Copyright \copyright{} 1995, 1996, 1997, 1998, 1999, 2000, 2001, +2002, 2003, 2004, 2005 +Free Software Foundation, Inc. + +@quotation +Permission is granted to copy, distribute and/or modify this document +under the terms of the GNU Free Documentation License, Version 1.1 or +any later version published by the Free Software Foundation; with no +Invariant Sections, with the Front-Cover texts being ``A GNU +Manual'', and with the Back-Cover Texts as in (a) below. A copy of the +license is included in the section entitled ``GNU Free Documentation +License'' in the Emacs manual. + +$B$3$NJ8=q$r!"%U%j!<%=%U%H%&%'%":bCDH/9T$N(B GNU $B%U%j!r7o$N2<$GJ#@=!"G[I[!"$"$k$$$OJQ99$9(B +$B$k$3$H$r5v2D$7$^$9!#JQ99IT2DItJ,$O;XDj$7$^$;$s!#!V(BA GNU Manual$B!W$OI=I=;f(B +$B%F%-%9%H!"0J2<$N(B (a) $B$ON"I=;f%F%-%9%H$G$9!#$3$NMxMQ5vBz7@Ls=q$NJ#O$K4^$^$l$F$$$^(B +$B$9!#(B + +(a) The FSF's Back-Cover Text is: ``You have freedom to copy and modify +this GNU Manual, like GNU software. Copies published by the Free +Software Foundation raise funds for GNU development.'' + +(a) FSF $B$NN"I=;f%F%-%9%H(B:$B!V$"$J$?$K$O$3$N(B GNU Manual $B$r(B GNU $B%=%U%H%&%'%"(B +$B$N$h$&$KJ#@=$7$?$jJQ99$9$k<+M3$,$"$j$^$9!#J#@=$O%U%j!<%=%U%H%&%'%":bCD$K(B +$B$h$C$F=PHG$5$l$^$7$?!#(B($B%U%j!<%=%U%H%&%'%":bCD$O(B) GNU $B$N3+H/$N$?$a$KI,MW(B +$B$J;q6b$r=8$a$F$$$^$9!#!W(B + +This document is part of a collection distributed under the GNU Free +Documentation License. If you want to distribute this document +separately from the collection, you can do so by adding a copy of the +license to the document, as described in section 6 of the license. + +$B$3$NJ8=q$O!V(BGNU $B%U%j! #1}} +\newcommand{\gnusacronym}[1]{\textsc{#1}} +\newcommand{\gnusemail}[1]{\textit{#1}} + +\newcommand{\gnusbullet}{{${\bullet}$}} +\newcommand{\gnusdollar}{\$} +\newcommand{\gnusampersand}{\&} +\newcommand{\gnuspercent}{\%} +\newcommand{\gnushash}{\#} +\newcommand{\gnushat}{\symbol{"5E}} +\newcommand{\gnusunderline}{\symbol{"5F}} +\newcommand{\gnusnot}{$\neg$} +\newcommand{\gnustilde}{\symbol{"7E}} +\newcommand{\gnusless}{{$<$}} +\newcommand{\gnusgreater}{{$>$}} +\newcommand{\gnusbraceleft}{{$>$}} +\newcommand{\gnusbraceright}{{$>$}} + +\newcommand{\gnushead}{\raisebox{-1cm}{\epsfig{figure=ps/gnus-head,height=1cm}}} +\newcommand{\gnusinteresting}{ +\marginpar[\mbox{}\hfill\gnushead]{\gnushead} +} + +\newcommand{\gnuscleardoublepage}{\ifodd\count0\mbox{}\clearpage\thispagestyle{empty}\mbox{}\clearpage\else\clearpage\fi} + +\newcommand{\gnuspagechapter}[1]{ +{\mbox{}} +} + +\newdimen{\gnusdimen} +\gnusdimen 0pt + +\newcommand{\gnuschapter}[2]{ +\gnuscleardoublepage +\ifdim \gnusdimen = 0pt\setcounter{page}{1}\pagestyle{gnus}\pagenumbering{arabic} \gnusdimen 1pt\fi +\chapter{#2} +\renewcommand{\gnussectionname}{} +\renewcommand{\gnuschaptername}{#2} +\thispagestyle{empty} +\hspace*{-2cm} +\begin{picture}(500,500)(0,0) +\put(480,350){\makebox(0,0)[tr]{#1}} +\put(40,300){\makebox(500,50)[bl]{{\Huge\bf{#2}}}} +\end{picture} +\clearpage +} + +\newcommand{\gnusfigure}[3]{ +\begin{figure} +\mbox{}\ifodd\count0\hspace*{-0.8cm}\else\hspace*{-3cm}\fi\begin{picture}(440,#2) +#3 +\end{picture} +\caption{#1} +\end{figure} +} + +\newcommand{\gnusicon}[1]{ +\marginpar[\mbox{}\hfill\raisebox{-1.5cm}{\epsfig{figure=ps/#1-up,height=1.5cm}}]{\raisebox{-1cm}{\epsfig{figure=ps/#1-up,height=1cm}}} +} + +\newcommand{\gnuspicon}[1]{ +\margindex{\epsfig{figure=#1,width=2cm}} +} + +\newcommand{\gnusxface}[2]{ +\margindex{\epsfig{figure=#1,width=1cm}\epsfig{figure=#2,width=1cm}} +} + +\newcommand{\gnussmiley}[2]{ +\margindex{\makebox[2cm]{\hfill\epsfig{figure=#1,width=0.5cm}\hfill\epsfig{figure=#2,width=0.5cm}\hfill}} +} + +\newcommand{\gnusitemx}[1]{\mbox{}\vspace*{-\itemsep}\vspace*{-\parsep}\item#1} + +\newcommand{\gnussection}[1]{ +\renewcommand{\gnussectionname}{#1} +\section{#1} +} + +\newenvironment{codelist}% +{\begin{list}{}{ +} +}{\end{list}} + +\newenvironment{asislist}% +{\begin{list}{}{ +} +}{\end{list}} + +\newenvironment{kbdlist}% +{\begin{list}{}{ +\labelwidth=0cm +} +}{\end{list}} + +\newenvironment{dfnlist}% +{\begin{list}{}{ +} +}{\end{list}} + +\newenvironment{stronglist}% +{\begin{list}{}{ +} +}{\end{list}} + +\newenvironment{samplist}% +{\begin{list}{}{ +} +}{\end{list}} + +\newenvironment{varlist}% +{\begin{list}{}{ +} +}{\end{list}} + +\newenvironment{emphlist}% +{\begin{list}{}{ +} +}{\end{list}} + +\newlength\gnusheadtextwidth +\setlength{\gnusheadtextwidth}{\headtextwidth} +\addtolength{\gnusheadtextwidth}{1cm} + +\newpagestyle{gnuspreamble}% +{ +{ +\ifodd\count0 +{ +\hspace*{-0.23cm}\underline{\makebox[\gnusheadtextwidth]{\mbox{}}\textbf{\hfill\roman{page}}} +} +\else +{ +\hspace*{-3.25cm}\underline{\makebox[\gnusheadtextwidth]{\textbf{\roman{page}\hfill\mbox{}}} +} +} +\fi +} +} +{ +\ifodd\count0 +\mbox{} \hfill +\raisebox{-0.5cm}{\epsfig{figure=ps/gnus-big-logo,height=1cm}} +\else +\raisebox{-0.5cm}{\epsfig{figure=ps/gnus-big-logo,height=1cm}} +\hfill \mbox{} +\fi +} + +\newpagestyle{gnusindex}% +{ +{ +\ifodd\count0 +{ +\hspace*{-0.23cm}\underline{\makebox[\gnusheadtextwidth]{\textbf{\gnuschaptername\hfill\arabic{page}}}} +} +\else +{ +\hspace*{-3.25cm}\underline{\makebox[\gnusheadtextwidth]{\textbf{\arabic{page}\hfill\gnuschaptername}}} +} +\fi +} +} +{ +\ifodd\count0 +\mbox{} \hfill +\raisebox{-0.5cm}{\epsfig{figure=ps/gnus-big-logo,height=1cm}} +\else +\raisebox{-0.5cm}{\epsfig{figure=ps/gnus-big-logo,height=1cm}} +\hfill \mbox{} +\fi +} + +\newpagestyle{gnus}% +{ +{ +\ifodd\count0 +{ +\makebox[12cm]{\hspace*{3.1cm}\underline{\makebox[\gnusheadtextwidth]{\textbf{\arabic{chapter}.\arabic{section}} \textbf{\gnussectionname\hfill\arabic{page}}}}} +} +\else +{ +\makebox[12cm]{\hspace*{-2.95cm}\underline{\makebox[\gnusheadtextwidth]{\textbf{\arabic{page}\hfill\gnuschaptername}}}} +} +\fi +} +} +{ +\ifodd\count0 +\mbox{} \hfill +\raisebox{-0.5cm}{\epsfig{figure=ps/gnus-big-logo,height=1cm}} +\else +\raisebox{-0.5cm}{\epsfig{figure=ps/gnus-big-logo,height=1cm}} +\hfill \mbox{} +\fi +} + +\pagenumbering{roman} +\pagestyle{gnuspreamble} + +@end iflatex +@end iftex + +@iftex +@iflatex + +\begin{titlepage} +{ + +%\addtolength{\oddsidemargin}{-5cm} +%\addtolength{\evensidemargin}{-5cm} +\parindent=0cm +\addtolength{\textheight}{2cm} + +\gnustitle{\gnustitlename}\hfill\gnusversion{\gnusversionname}\\ +\rule{15cm}{1mm}\\ +\vfill +\hspace*{0cm}\epsfig{figure=ps/gnus-big-logo,height=15cm} +\vfill +\rule{15cm}{1mm}\\ +\gnusauthor{by Lars Magne Ingebrigtsen} +\newpage +} + +\mbox{} +\vfill + +\thispagestyle{empty} + +@c @insertcopying +\newpage +\end{titlepage} +@end iflatex +@end iftex + +@ifnottex +@insertcopying +@end ifnottex + +@dircategory Emacs +@direntry +* Gnus-ja: (gnus-ja). The newsreader Gnus (Japanese). +@end direntry +@iftex +@finalout +@end iftex +@setchapternewpage odd + +@titlepage +@title Gnus Manual + +@author by Lars Magne Ingebrigtsen +@page +@vskip 0pt plus 1filll +@insertcopying +@end titlepage + +@node Top +@top The Gnus Newsreader + +@ifinfo + +Gnus $B$r;H$&$3$H$K$h$C$F(B Emacs $B$G%K%e!<%9$r(B ($B$=$l$K%a!<%k$b(B) $BFI$`$3$H$,$G(B +$B$-$^$9!#%K%e!<%9$O(B @acronym{NNTP}$B!"%m!<%+%k%9%W!<%k!"(Bmbox $B%U%!%$%k$J$I$N(B +$B$"$i$f$k6K0-$Jl$G$9!#(BGnus $B$O$9$Y$F$r%K%e!<%9%0(B +$B%k!<%W$N$h$&$KI=<($7$^$9!#(BGnus $B$G%a!<%k$rFI$_!"%G%#%l%/%H%j!<$r%V%i%&%:(B +$B$7!"(B@code{ftp} $B$r$9$k$3$H$,$G$-$^$9!#$"$"!"$=$l$K!"%K%e!<%9$rFI$`$3$H$5(B +$B$($G$-$^$9(B! + +Emacs $B$,J8>O$rJT=8$9$k?M$KNO$rM?$($k$h$&$K!"(BGnus $B$O%K%e!<%9$rFI$`?M$KNO(B +$B$rM?$($h$&$H$7$F$$$^$9!#(BGnus $B$OMxMQ$`F0:n$r$9$k$h$&$K(B Gnus $B$r3HD%$9$k$3$H$r>)Ne$7$F$$$^$9!#(B +$B%W%m%0%i%`$,?M$rA`:n$9$k$Y$-$G$O$"$j$^$;$s!#?M$,%W%m%0%i%`$r;H$&(B ($B$b$7$/(B +$B$OMtMQ$9$k(B) $B$3$H$K$h$C$F!"$d$j$?$$$3$H$r$G$-$k$h$&$K$J$C$F$$$k$Y$-$J$N$G(B +$B$9!#(B + +@end iftex + +@menu +* Starting Up:: $B%K%e!<%9$r8+$D$1$k$N$K$O6lO+$,H<$&$+$bCN$l$J$$(B +* Group Buffer:: $B%0%k!<%W$rA*Br$7!"9XFI$7!":o=|$9$k(B +* Summary Buffer:: $B5-;v$rFI$_!"J]B8$7!"Ej9F$9$k(B +* Article Buffer:: $B5-;v$rI=<($7!"07$&(B +* Composing Messages:: $B%a!<%k$H%K%e!<%9$rAw$k$?$a$N>pJs(B +* Select Methods:: Gnus $B$OA4$F$N%a%C%;!<%8$r$$$m$$$m$JA*BrJ}K!$GFI$`(B +* Scoring:: $B5-;v$KCM$r$D$1$k(B +* Various:: $B0lHLE*$J@_Dj(B +* The End:: $B$5$i$P!"$=$7$F$5$h$&$J$i(B +* Appendices:: $BMQ8l!"(BEmacs $BF~Lg!"(B@acronym{FAQ}$B!"Nr;K!"FbIt9=B$(B +* Index:: $BJQ?t!"4X?t!"35G0$N:w0z(B +* Key Index:: $B%-!<:w0z(B + +Other related manuals + +* Message:(message-ja). $B%a%C%;!<%8$N:n@.(B +* Emacs-MIME:(emacs-mime-ja). $B%a%C%;!<%8$N:n@.(B; @acronym{MIME} $B%Q!<%H(B +* Sieve:(sieve-ja). Emacs $B$G(B Sieve $B%9%/%j%W%H$r4IM}$9$k(B +* PGG:(pgg-ja). Gnus $B$G(B @acronym{PGP/MIME} $B$r;H$&(B +* SASL:(sasl-ja). Emacs $B$G(B @acronym{SASL} $B$NG'>Z$r9T$J$&(B + +@detailmenu + --- The Detailed Node Listing --- + +Starting Gnus + +* Finding the News:: $B%K%e!<%9$re$N(B Gnus $B$r:nF0$5$;$k$3$H$,$G$-$k(B +* Fetching a Group:: $B%0%k!<%W$rFI$`$?$a$@$1$K(B Gnus $B$r5/F0$9$k(B +* New Groups:: Gnus $B$,?7$7$$%0%k!<%W$KBP$7$F2?$r$9$k$+(B +* Changing Servers:: $B$"$k%5!<%P$+$iJL$N%5!<%P$X0\$j$?$$$+$b$7$l$J$$(B +* Startup Files:: $B$d$C$+$$$J%9%?!<%H%"%C%W%U%!%$%k(B -- @file{.newsrc} +* Auto Save:: $B%/%i%C%7%e$+$i$N2sI|(B +* The Active File:: $BCY$$2s@~$+$i$N%U%!%$%k$NpJs$HJQ99$NJ}K!(B +* Group Maneuvering:: $B%0%k!<%W%P%C%U%!$r0\F0$9$k%3%^%s%I(B +* Selecting a Group:: $BC5n(B +* Group Data:: $B%0%k!<%W$N>pJs$rJQ99$9$k(B +* Group Levels:: $B%l%Y%k(B? $B$=$l$C$F2?(B? +* Group Score:: $B$"$J$?$N9%$-$J%0%k!<%W$r8+$D$1=P$9J}K!(B +* Marking Groups:: $B%0%k!<%W$K0u$r$D$1$F$*$$$F!"8e$G=hM}$G$-$^$9(B +* Foreign Groups:: $B%0%k!<%W$N:n@.$H=$@5(B +* Group Parameters:: $B%0%k!<%WKh$K0c$C$?%Q%i%a!<%?$r;}$?$;$i$l$^$9(B +* Listing Groups:: Gnus $B$O%0%k!<%W$r$$$m$$$m$JJ,$1J}$GI=<($G$-$^$9(B +* Sorting Groups:: $B%0%k!<%W$N=gHV$NG[CVBX$((B +* Group Maintenance:: $B$-$l$$$J(B @file{.newsrc} $B$NJ]$AJ}(B +* Browse Foreign Server:: $B%5!<%P$r354Q$G$-$k!#2?$,FI$a$k$N$+8+$F$_$h$&(B +* Exiting Gnus:: $B%K%e!<%9$rFI$`$N$r$d$a$F!";E;v$r$7$h$&(B +* Group Topics:: $B%0%k!<%W$r@Z$j:.$<$F!"%H%T%C%/$4$H$KJ,3d$9$k(B +* Misc Group Stuff:: $BB>$K$G$-$k$3$H(B + +Group Buffer Format + +* Group Line Specification:: $B%0%k!<%W%P%C%U%!$N8+$(J}$r7h$a$k(B +* Group Mode line Specification:: $B%0%k!<%W%P%C%U%!$N%b!<%I9T(B +* Group Highlighting:: $B%0%k!<%W%P%C%U%!$K$-$l$$$K?'$r$D$1$k(B + +Group Topics + +* Topic Commands:: $BD64JC1BPOC7?L?Na(B +* Topic Variables:: Lisp $B$G%H%T%C%/$r%+%9%?%^%$%:$9$kJ}K!(B +* Topic Sorting:: $B%H%T%C%/KhJL!9$KJB$YBX$($k(B +* Topic Topology:: $BA4@$3&$NCO?^(B +* Topic Parameters:: $B$"$k%H%T%C%/$NA4$F$N%0%k!<%W$KE,MQ$5$l$k%Q%i%a!<%?(B + +Misc Group Stuff + +* Scanning New Messages:: Gnus $B$K?7$7$$%a%C%;!<%8$,E~Ce$7$?$+$I$&$+$rJ9$/(B +* Group Information:: $B%0%k!<%W$H(B Gnus $B$K4X$9$k>pJs$H%X%k%W(B +* Group Timestamp:: Gnus $B$K:G8e$K$$$D%0%k!<%W$rFI$s$@$+$r5-O?$5$;$k(B +* File Commands:: Gnus $B$N%U%!%$%k$NFI$_=q$-(B +* Sieve Commands:: Sieve $B%9%/%j%W%H$N4IM}(B + +Summary Buffer + +* Summary Buffer Format:: $B35N,%P%C%U%!$N304Q$r7hDj$9$k(B +* Summary Maneuvering:: $B35N,%P%C%U%!$rF0$-2s$k(B +* Choosing Articles:: $B5-;v$rFI$`(B +* Paging the Article:: $BFI$s$G$$$k5-;v$r%9%/%m!<%k$9$k(B +* Reply Followup and Post:: $B5-;v$rEj9F$9$k(B +* Delayed Articles:: $B5-;v$r8e$GAw$k(B +* Marking Articles:: $B5-;v$K4{FI$d4|8B@Z$l:o=|2DG=Ey$N0u$rIU$1$k(B +* Limiting:: $B35N,%P%C%U%!$K@)8B$r2C$($k$3$H$,$G$-$k(B +* Threading:: $B%9%l%C%I$,$I$N$h$&$K:n$i$l$k$+(B +* Sorting the Summary Buffer:: $B%9%l%C%I$H5-;v$,$I$N$h$&$KJB$S$+$($i$l$k$+(B +* Asynchronous Fetching:: Gnus $B$O5-;v$r@h$KC5n$7$J$/$5$;$k(B +* Article Backlog:: $B4{$KFI$s$@5-;v$r;D$7$F$*$/(B +* Saving Articles:: $B5-;v$NJ]B8$r%+%9%?%^%$%:$9$kJ}K!(B +* Decoding Articles:: Gnus $B$O0lO"$N(B (uu)encode $B$5$l$?5-;v$r07$($k(B +* Article Treatment:: $B5-;v%P%C%U%!$O$*K>$_$I$*$j$KL\Cc6lCc$K$G$-$k(B +* MIME Commands:: $B5-;v$N(B MIME $B$N$"$l$3$l$rA`:n$9$k(B +* Charsets:: $BJ8;z%;%C%H$N$3$H(B +* Article Commands:: $B5-;v%P%C%U%!$G$$$m$$$m$J$3$H$r$9$k(B +* Summary Sorting:: $B$$$m$$$m$JJ}K!$G35N,%P%C%U%!$rJB$YBX$($k(B +* Finding the Parent:: $B;R5-;v$,C5$;$J$$$C$F(B? $B?F5-;v$r$N$I$N>l=j$K$b9g$o$J$+$C$?$b$N(B +* Exiting the Summary Buffer:: $B%0%k!<%W%P%C%U%!$KLa$k!"$^$?$O8=:_$N%0%k!<%W$r:F$SA*Br$9$k(B +* Crosspost Handling:: $B%/%m%9%]%9%H$5$l$?5-;v$,$I$N$h$&$K07$o$l$k$+(B +* Duplicate Suppression:: $B%/%m%9%]%9%H$N07$$$K<:GT$7$?$H$-$NBeBXZ(B +* Mailing List:: $B%a!<%j%s%0%j%9%H%^%$%J!<%b!<%I(B + +Summary Buffer Format + +* Summary Buffer Lines:: $B35N,%P%C%U%!$,$I$N$h$&$K8+$($k$Y$-$+$r;XDj$G$-$k(B +* To From Newsgroups:: $B<+J,<+?H$NL>A0$rI=<($7$J$$J}K!(B +* Summary Buffer Mode Line:: $B%b!<%I9T$N8+$(J}$r7h$a$i$l$k(B +* Summary Highlighting:: $B35N,%P%C%U%!$r$-$l$$$GAGE($K$9$k(B + +Choosing Articles + +* Choosing Commands:: $B5-;v$rA*Br$9$k$?$a$NL?Na(B +* Choosing Variables:: $B$3$l$i$NL?Na$K1F6A$r5Z$\$9JQ?t(B + +Reply, Followup and Post + +* Summary Mail Commands:: $B%a!<%k$rAw$k(B +* Summary Post Commands:: $B%K%e!<%9$rAw$k(B +* Summary Message Commands:: $BB>$N%a%C%;!<%84XO"$NL?Na(B +* Canceling and Superseding:: + +Marking Articles + +* Unread Articles:: $BL$FI5-;v$X$N0u(B +* Read Articles:: $B4{FI5-;v$X$N0u(B +* Other Marks:: $B9XFIEY$K1F6A$7$J$$0u(B +* Setting Marks:: $B0u$NIU$1J}$H>C$7J}(B +* Generic Marking Commands:: $B0u$r$I$N$h$&$K%+%9%?%^%$%:$9$k$+(B +* Setting Process Marks:: $B8e$N$NI|9f2=$NJQ?t(B +* Uuencoding and Posting:: uuencode $B$9$k$N$r%+%9%?%^%$%:$9$kJQ?t(B + +Article Treatment + +* Article Highlighting:: $B5-;v$r2LJ*%5%i%@$N$h$&$K8+$($k$h$&$K$7$?$$(B +* Article Fontisizing:: $B6/D4$5$l$?J8$rAGE($K$9$k(B +* Article Hiding:: $BFCDj$N>pJs$O>C$75n$j$?$$$H$b;W$&(B +* Article Washing:: $B?M@8$r$b$C$H$h$/$9$k$?$/$5$s$N5$$NMx$$$?4X?t(B +* Article Header:: $B%X%C%@!<$r$$$m$$$mJQ7A$5$;$k(B +* Article Buttons:: URL $B$d(B Message-ID $B$d%"%I%l%9$J$I$r%/%j%C%/$9$k(B +* Article Button Levels:: $B%\%?%s$N8+$(J}$r@)8f$9$k(B +* Article Date:: $B$0$:$0$:8@$&$J!"@$3&;~$@(B! +* Article Display:: X-Face, Picons, Smileys $B$rI=<($9$k(B +* Article Signature:: $B=pL>$C$F2?(B? +* Article Miscellanea:: $BB>$N$$$m$$$m$J$b$N(B + +Alternative Approaches + +* Pick and Read:: $B$^$:!"5-;v$K0u$rIU$1$F!"$=$l$+$iFI$`(B +* Binary Groups:: $B$9$Y$F$N5-;v$r<+F0(B-$BI|9f2=$9$k(B + +Various Summary Stuff + +* Summary Group Information:: $B>pJs;X8~$NL?Na(B +* Searching for Articles:: $BJ#?t5-;vL?Na(B +* Summary Generation Commands:: +* Really Various Summary Commands:: $B$"$N$d$C$+$$$JB>$KE,9g$7$J$$L?Na(B + +Article Buffer + +* Hiding Headers:: $B$I$N%X%C%@!<$rI=<($9$k$+$r7h$a$k(B +* Using MIME:: @acronym{MIME} $B5-;v$H$7$F8+$;$k(B +* Customizing Articles:: $B5-;v$N8+1I$($r;EN)$F$k(B +* Article Keymap:: $B5-;v%P%C%U%!$G;H$($k%-!(B + +Composing Messages + +* Mail:: $B%a!<%k$HJVEz(B +* Posting Server:: $B$I$N%5!<%P!<$rDL$7$F%K%e!<%9$rEj9F$^$?$O%a!<%k$rAw?.$9$k$Y$-$+(B? +* POP before SMTP:: $B%a!<%k$rFI$^$J$$$H%a!<%k$rAw?.$G$-$J$$(B +* Mail and Post:: $BF1;~$K%a!<%k$r=P$7JVEz$9$k(B +* Archived Messages:: $BAw$C$?%a%C%;!<%8$r(B Gnus $B$,Cy$a$F$*$/$H$3$m(B +* Posting Styles:: $B$"$J$?$,C/$G$"$k$+$r;XDj$9$k$h$j4JC1$JJ}K!(B +* Drafts:: $B%a%C%;!<%8$N1d4|$H5qH]$5$l$?%a%C%;!<%8(B +* Rejected Articles:: $B%5!<%P!<$,$"$J$?$N5-;v$r9%$-$G$J$$$H$-$K2?$,5/$3$k(B? +* Signing and encrypting:: $B0BA4$J%a%C%;!<%8$r:n$k$K$O(B? + +Select Methods + +* Server Buffer:: $B;ve$N%5!<%P!<$r:n$C$FJT=8$9$k(B +* Getting News:: USENET $B%K%e!<%9$r(B Gnus $B$GFI$`(B +* Getting Mail:: $B8D?ME*$J%a!<%k$r(B Gnus $B$GFI$`(B +* Browsing the Web:: $B2a>j$J%&%'%V$N;q8;$+$i%a%C%;!<%8$r$rA*BrJ}K!$H$7$F;H$&;v$,$G$-$k(B +* Unavailable Servers:: $B@\B3$7$h$&$H;n$_$?%5!<%P!<$N$$$/$D$+$,Mn$A$F$$$k$+$b$7$l$J$$(B + +Getting News + +* NNTP:: @acronym{NNTP} $B%5!<%P!<$+$i%K%e!<%9$rFI$`(B +* News Spool:: $B%m!<%+%k%9%W!<%k$+$i%K%e!<%9$rFI$`(B + +@acronym{NNTP} + +* Direct Functions:: $B%5!<%P!<$KD>@\@\B3$9$k(B +* Indirect Functions:: $B%5!<%P!<$K4V@\E*$K@\B3$9$k(B +* Common Variables:: $B$$$/$D$+$N@\B3MQ$N4X?t$,;2>H$9$kJQ?t(B +* NNTP marks:: @acronym{NNTP} $B%5!<%P!$N%U%!%$%k$rFI$`$?$a$K%a!<%k%P%C%/%(%s%I$r;H$&(B +* Choosing a Mail Back End:: Gnus $B$O?'!9$J%a!<%kMM<0$rFI$`;v$,$G$-$k(B + +Mail Sources + +* Mail Source Specifiers:: $B%a!<%k$N85$,$I$3$+$r;XDj$9$k(B +* Mail Source Customization:: $B@$$NCf$K1F6A$9$k$$$/$D$+$NJQ?t(B +* Fetching Mail:: $B%a!<%k%=!<%9;X<(;R$r;HMQ$9$k(B + +Choosing a Mail Back End + +* Unix Mail Box:: ($B$H$F$b(B) $BI8=`E*$J(B Un*x mbox $B$r;H$&(B +* Rmail Babyl:: Emacs $B$N%W%m%0%i%`$O(B Rmail $B$N(B Babyl $B%U%)!<%^%C%H$r;H$&(B +* Mail Spool:: $B$"$J$?$N%a!<%k$r;dE*$J%9%W!<%k$KN/$a$k(B? +* MH Spool:: mhspool $B$N$h$&$J%P%C%/%(%s%I(B +* Maildir:: $B$b$&0l$D$N#1%U%!%$%k(B/$B#1%a%C%;!<%87A<0(B +* Mail Folders:: $B$=$l$>$l$N%0%k!<%W$KBP$7$F0l$D$N%U%!%$%k$r;}$D(B +* Comparing Mail Back Ends:: $BF@<:$N?<$$F6;!(B + +Browsing the Web + +* Archiving Mail:: +* Web Searches:: $BJ8;zNs$K%^%C%A$9$k5-;v$+$i%0%k!<%W$r:n$k(B +* Slashdot:: Slashdot $B$N%3%a%s%H$rFI$`(B +* Ultimate:: Ultimate Bulletin Board $B%7%9%F%`(B +* Web Archive:: $B%&%'%V$KJ]4I$5$l$?%a!<%j%s%0%j%9%H$rFI$`(B +* RSS:: RDF Site Summary $B$rFI$`(B +* Customizing w3:: Gnus $B$+$i(B Emacs/W3 $B$rA`:n$9$k(B + +@acronym{IMAP} + +* Splitting in IMAP:: nnimap $B$G%a!<%k$rJ,3d$9$k(B +* Expiring in IMAP:: nnimap $B$K$h$k%a!<%k$N4|8B@Z$l>C5n(B +* Editing IMAP ACLs:: $B%a!<%k%\%C%/%9$X$NB>$NMxMQA06u4V$r;H$&(B($B;H$o$J$$(B)$BJ}K!(B +* Debugging IMAP:: $B$b$N$4$H$,F/$+$J$$$H$-$K$9$k$Y$-$3$H(B + +Other Sources + +* Directory Groups:: $B%G%#%l%/%H%j!<$r%K%e!<%9%0%k!<%W$N$h$&$KFI$`(B +* Anything Groups:: Dired? $BC/$,(B dired $B$J$s$F;H$&$N(B? +* Document Groups:: $B8DJL$N%U%!%$%k72$O%0%k!<%W$NAG(B +* SOUP:: @sc{soup} $B%Q%1%C%H$r(B ``$B%*%U%i%$%s(B'' $B$GFI$`(B +* Mail-To-News Gateways:: $B%a!<%k$+$i%K%e!<%9$X$N%2!<%H%&%'%$$rDL$7$F5-;v$rEj9F$9$k(B + +Document Groups + +* Document Server Internals:: $B$"$J$?FH<+$NJ8=qe0L3,AX$K$"$kC$9J}K!(B +* Agent Regeneration:: $BDL?.@ZCG$dB>$N;v8N$+$i2sI|$9$kJ}K!(B +* Agent and IMAP:: $B%(!<%8%'%s%H$r(B @acronym{IMAP} $B$G;H$&J}K!(B +* Outgoing Messages:: $BEj9F!"%a!<%k$r=P$9$H$-$K$J$K$,5/$3$k$N$+(B? +* Agent Variables:: $B%+%9%?%^%$%:$O3Z$7(B +* Example Setup:: $B%*%U%i%$%s?M4V$N$?$a$N(B @file{~/.gnus.el} $B$NNc(B +* Batching Agents:: @code{cron} $B%8%g%V$K$h$k%K%e!<%9C5n%U%!%$%k$r%9%3%"%U%!%$%k$KJQ49$9$k(B +* Advanced Scoring:: $B%9%3%"$NK!B'$r:n$k$?$a$KO@M}I=8=$r;H$&(B +* Score Decays:: $B%9%3%"$r8O$l$F$$$+$;$k$N$OLr$KN)$D;v$b$"$k(B + +Advanced Scoring + +* Advanced Scoring Syntax:: $BDj5A(B +* Advanced Scoring Examples:: $B$I$N$h$&$K8+$($k$+(B +* Advanced Scoring Tips:: $B$=$l$r:GBg8BMxMQ$9$k(B + +Various + +* Process/Prefix:: $BB?$/$N07$$L?Na$G;H$o$l$k=,47(B +* Interactive:: Gnus $B$KB?$/$Ne$2$k$+(B +* Mode Lines:: $B%b!<%I9T$K>pJs$rI=<($9$k(B +* Highlighting and Menus:: $B%P%C%U%!$rAGE($G?4CO$h$/8+$;$k(B +* Buttons:: $B4JC1$J==Jb$G%"%-%l%9g'$rF@$k(B +* Daemons:: Gnus $B$O$"$J$?$NN"$GJ*;v$r$NB@$j$d$9$$?);v$rHr$1$kJ}K!(B +* Undo:: $B$$$/$D$+$NF0:n$O85$KLa$9;v$,$G$-$k(B +* Predicate Specifiers:: $B=R8l$r@_Dj$9$k(B +* Moderation:: $B$"$J$?$,%b%G%l!<%?!<$@$C$?$i$I$&$9$k$+(B +* Image Enhancements:: $B:G?7$N(B Emacs/XEmacs $B$O3($rI=<($G$-$k(B +* Fuzzy Matching:: $BBg$-$JLJLS$C$F2?(B? +* Thwarting Email Spam:: $BM>7W$J>&6HE*EE;R%a!<%k$rHr$1$kJ}K!(B +* Other modes:: $BB>$N%b!<%I$H$NAj8_:nMQ(B +* Various Various:: $BK\Ev$K$$$m$$$m$J$b$N(B + +Formatting Variables + +* Formatting Basics:: $B=qK!;EMMJQ?t$O4pK\E*$K=qK!;XDjJ8;zNs$G$"$k(B +* Mode Line Formatting:: $B%b!<%I9T$N=qK!;EMMJQ?t$K4X$9$k$$$/$D$+$N5,B'(B +* Advanced Formatting:: $B?'!9$JJ}K!$G=PNO$r=$@5$9$k(B +* User-Defined Specs:: Gnus $B$K$"$J$?<+?H$N4X?t$r8F$P$;$k(B +* Formatting Fonts:: $B;EMM$rB?:L$GAGE($K8+$;$k(B +* Positioning Point:: $BA`:n$N8e$G%]%$%s%H$r0\F0$9$k(B +* Tabulation:: $B=PNO$N@0Ns(B +* Wide Characters:: $BI}$,9-$$J8;z$r07$&(B + +Image Enhancements + +* X-Face:: $B%U%!%s%-!<$J$A$C$A$c$JGr9u$N3($rI=<($9$k(B +* Face:: $B$h$j%U%!%s%-!<$G$A$C$A$c$J%+%i!<$N3($rI=<($9$k(B +* Smileys:: $BI=<($5$l$k$Y$/@8$^$l$?9,$;$=$&$J4i$rI=<($9$kJ}K!(B +* Picons:: $B$"$J$?$,FI$s$G$$$k$b$N$N3($rI=<($9$kJ}K!(B +* XVarious:: $B$=$NB>$N(B XEmacs $B$G(B Gnus $B$JJQ?t(B + +Thwarting Email Spam + +* The problem of spam:: $BGX7J!"$=$7$F2r7h(B +* Anti-Spam Basics:: $B$?$/$5$s$N(B spam $B$r8:$i$94JC1$JJ}K!(B +* SpamAssassin:: Spam $BBP:v%D!<%k$N;H$$J}(B +* Hashcash:: CPU $B;~4V$rHq$d$7$F(B spam $BB`<#$9$k(B +* Filtering Spam Using The Spam ELisp Package:: +* Filtering Spam Using Statistics with spam-stat:: + +Filtering Spam Using The Spam ELisp Package + +* Spam ELisp Package Sequence of Events:: +* Spam ELisp Package Filtering of Incoming Mail:: +* Spam ELisp Package Global Variables:: +* Spam ELisp Package Configuration Examples:: +* Blacklists and Whitelists:: +* BBDB Whitelists:: +* Gmane Spam Reporting:: +* Anti-spam Hashcash Payments:: +* Blackholes:: +* Regular Expressions Header Matching:: +* Bogofilter:: +* SpamAssassin back end:: +* ifile spam filtering:: +* spam-stat spam filtering:: +* SpamOracle:: +* Extending the Spam ELisp package:: + +Filtering Spam Using Statistics with spam-stat + +* Creating a spam-stat dictionary:: +* Splitting mail using spam-stat:: +* Low-level interface to the spam-stat dictionary:: + +Appendices + +* XEmacs:: XEmacs $B$G%$%s%9%H!<%k$9$k$?$a$NMW7o(B +* History:: $B$I$&$d$C$F(B Gnus $B$,:#F|$N$h$&$K$J$C$?$+(B +* On Writing Manuals:: $B$J$<$3$l$,=i?4e$N%P!<%8%g%s$N(B Gnus +* Why?:: Gnus $B$NL\E*$O2?(B? +* Compatibility:: Gnus $B$O(B @sc{gnus} $B$H$I$l$/$i$$8_49@-$,$"$k$N(B? +* Conformity:: Gnus $B$OA4$F$NI8=`$rK~$?$=$&$H$9$k(B +* Emacsen:: Gnus $B$O$$$/$D$+$N8=BeE*$J(B Emacs $B4D6-$Ge$N$b$N(B---Gnus 5.4/5.5 +* Quassia Gnus:: 2 $B$+$1$k(B 2 $B$O(B 4$B!"$b$7$/$O(B Gnus 5.6/5.7 +* Pterodactyl Gnus:: $B8^HVL\!"(BP $B$G;O$^$k!"$b$7$/$O(B Gnus 5.8/5.9 $B$H$7$FCN$i$l$F$$$k$b$N(B +* Oort Gnus:: $B5pBg$J!#1s$/MZ$+$J!#(BGnus 5.10/5.11$B!#(B +* No Gnus:: Lars $B$5$s!"D>$7$F(B! + +Customization + +* Slow/Expensive Connection:: $B%m!<%+%k$N(B Emacs $B$rN)$A>e$2$F!"B>$N$H$3$m$+$i%K%e!<%9$rF@$k;v$,$G$-$k(B +* Slow Terminal Connection:: $B1s3V(B Emacs $B$rpJs7A<0(B +* Extended Interactive:: $B5-9f@\F,<-$J$I(B +* Emacs/XEmacs Code:: Gnus $B$OA4$F$N6aBe(B Emacsen $B$GF0:n$9$k(B +* Various File Formats:: Gnus $B$N;HMQ$9$k%U%!%$%k$N7A<0(B + +Back End Interface + +* Required Back End Functions:: $BpJs(B +* Newsgroups File Format:: $B%0%k!<%W$N5-=R(B + +Emacs for Heathens + +* Keystrokes:: $BJ8>O$rF~NO$7$FL?Na$ro$K4JC1$G$9!#$=$&!"(BEmacs $B$G(B @kbd{M-x gnus} $B$HBG$D$@$1$G$9!#(B + +@findex gnus-other-frame +@kindex M-x gnus-other-frame +$BJL$N%U%l!<%`(B (frame) $B$G(B Gnus $B$r5/F0$7$?$$$H$-$O!"L?(B +$BNa(B @kbd{M-x gnus-other-frame} $B$r;H$&$3$H$,$G$-$^$9!#(B + +$B3+;O;~$K2?$+$,$&$^$/$$$+$J$$$H$-$O(B @file{~/.gnus.el} $B%U%!%$%k$NCf$GJQ?t(B +$B$r$$$/$D$+$$$8$/$j$^$o$5$J$1$l$P$J$i$J$$$G$7$g$&!#$3$N%U%!%$%k(B +$B$O(B @file{~/.emacs} $B$H;w$F$$$^$9$,!"$3$A$i$O(B Gnus $B$,5/F0$9$k$H$-$KFI$_9~(B +$B$^$l$^$9!#(B + +$B$3$N@bL@=q$G$h$/$o$+$i$J$$MQ8l$,$G$F$-$?$H$-$O!"MQ8l$N(B +$B9`(B (@pxref{Terminology}) $B$r;2>H$7$F$/$@$5$$!#(B + +@menu +* Finding the News:: $B%K%e!<%9$re$N(B Gnus $B$r:nF0$5$;$k$3$H$,$G$-$k(B +* Fetching a Group:: $B%0%k!<%W$rFI$`$?$a$@$1$K(B Gnus $B$r5/F0$9$k(B +* New Groups:: Gnus $B$,?7$7$$%0%k!<%W$KBP$7$F2?$r$9$k$+(B +* Changing Servers:: $B$"$k%5!<%P$+$iJL$N%5!<%P$X0\$j$?$$$+$b$7$l$J$$(B +* Startup Files:: $B$d$C$+$$$J%9%?!<%H%"%C%W%U%!%$%k(B -- @file{.newsrc} +* Auto Save:: $B%/%i%C%7%e$+$i$N2sI|(B +* The Active File:: $BCY$$2s@~$+$i$N%U%!%$%k$Nl=j(B} $B$rI=$9%j%9%H$G$"$kI,MW$,$"$j$^$9!#$3$NJ}K!$O$"$J$?$N4pK\J}(B +$BK!(B (native method) $B$K$J$j$^$9!#$3$NJ}K!$Gl9g$O!"(B + +@lisp +(setq gnus-select-method '(nnspool "")) +@end lisp + +@noindent +$B$N$h$&$K$G$-$^$9!#(B + +$B%m!<%+%k$N%9%W!<%k$r;H$($k$N$G$"$l$P!"$+$J$j$N3NN($G$=$NJ}$,$:$C$HB.$$$G(B +$B$7$g$&$7!"$=$l$r;H$&$Y$-$G$7$g$&!#$G$b!"$b$7$"$J$?$N%5!<%P!<(B +$B$,(B Leafnode ($B$=$l$O4JC1$J8D?MMQ$N%K%e!<%9%5!<%P!<$G$9(B) $B$G$"$k$J$i$P%m!<(B +$B%+%k%9%W!<%k$r;H$C$F$O$$$1$^$;$s!#$3$N>l9g(B +$B$O(B @code{(nntp "localhost")} $B$K$7$^$7$g$&!#(B + +@vindex gnus-nntpserver-file +@cindex NNTPSERVER +@cindex @acronym{NNTP} server +$B$b$7$3$NJQ?t$,@_Dj$5$l$F$$$J$1$l$P!"(BGnus $B$O(B @env{NNTPSERVER} $B4D6-JQ?t$r(B +$BFI$_$K$$$-$^$9!#$b$7$=$NJQ?t$,@_Dj$5$l$F$$$J$1$l$P!"(B +Gnus $B$O(B @code{gnus-nntpserver-file} ($B@_Dj$5$l$F$$$J$$>l9g(B +$B$O(B @file{/etc/nntpserver}) $B$,$3$N7o$K4X$7$F2?$+$r8@$C$F$$$J$$$+$rD4$Y$^(B +$B$9!#$b$7$=$l$b<:GT$7$?$J$i!"(BGnus $B$O(B Emacs $B$,F0:n$7$F$$$k%5!<%P!<(B +$B$r(B @acronym{NNTP} $B%5!<%P!<$H$7$F;H$*$&$H$7$^$9!#?oJ,$JEv$F?dNL$G$9$1$I$M!#(B + +@vindex gnus-nntp-server +@code{gnus-nntp-server} $B$,@_Dj$5$l$F$$$k$H!"$3$NJQ?t(B +$B$O(B @code{gnus-select-method} $B$r>e=q$-$7$^$9!#$G$9$+$i!"(B +@code{gnus-nntp-server} $B$O(B @code{nil} $B$K@_Dj$9$k$Y$-$G!"=i4|@_Dj$G$b$=$N(B +$B$h$&$K$J$C$F$$$^$9!#(B + +@vindex gnus-secondary-servers +@vindex gnus-nntp-server +Gnus $B$K(B @acronym{NNTP} $B%5!<%P!<$NL>A0$NF~NO$rBPOCE*$K;XDj$9$k$3$H$b$G$-(B +$B$^$9!#(B@code{gnus} $B$K?tCM$G$J$$@\F,0z?t$rEO$9$H(B ($BNc(B: @kbd{C-u M-x gnus})$B!"(B +Gnus $B$O(B @code{gnus-secondary-servers} $B%j%9%H(B ($B$b$7B8:_$9$k$J$i$P(B) $B$+$i%5!<(B +$B%P!<$rA*$V$3$H$,$G$-$k$h$&$K$7$^$9!#$?$@C1$K@\B3$7$?$$$H;W$C$?%5!<%P!<$N(B +$BL>A0$rBG$D$3$H$b$G$-$^$9!#(B($B$3$l$O(B @code{gnus-nntp-server} $B$r@_Dj$7!"$3$l(B +$B$O8e$N(B Emacs $B$N%;%C%7%g%s$G(B @kbd{M-x gnus} $B$H$9$k$H!"(BGnus $B$OF1$8%5!<%P!<(B +$B$K@\B3$7$h$&$H$9$k$H$$$&$3$H$G$9!#(B) + +@findex gnus-group-browse-foreign-server +@kindex B ($B%0%k!<%W(B) +$B$7$+$7!"IaCJF|>oE*$K$O0l$D$N(B @acronym{NNTP} $B%5!<%P$r;H$$!"0c$C$?%5!<%P!<(B +$B$K$O6=L#$N$"$k%0%k!<%W$,>/$7$7$+$J$$>l9g!"%0%k!<%W%P%C%U%!$G(B @kbd{B} $BL?(B +$BNa$r;H$&$3$H$NJ}$,NI$$$G$7$g$&!#$=$l$O!"A*Br2DG=$J%0%k!<%W$rI=<($7!"$=$N(B +$BCf$+$i$I$l$G$b9%$-$J$b$N$r9XFI$9$k$3$H$,$G$-$^$9!#$3$l(B +$B$O(B @file{.newsrc} $B$NJ];}$r$:$C$H$d$j$d$9$/$7$^$9!#(B +@xref{Foreign Groups, $B30It%0%k!<%W(B}. + +@vindex gnus-secondary-select-methods +@c @head +$B30It%0%k!<%W$KBP$9$k>/$70c$C$?$d$jJ}$O!"JQ(B +$B?t(B @code{gnus-secondary-select-methods} $B$r@_Dj$9$kJ}K!$G$9!#$3$NJQ?t$KI=(B +$B$5$l$F$$$kA*BrJ}K!$O!"B?$/$NE@$G(B @code{gnus-select-method} $B%5!<%P!<$NBr(B +$BJ}K!$HF1$8$h$&$K07$o$l$^$9!#5/F0Cf$K%"%/%F%#%V%U%!%$%k$rC5$7$K$$$-(B ($B$b$7(B +$BMW5a$5$l$F$$$l$P(B)$B!"$3$l$i$N%5!<%P!<>e$K$G$-$??7$7$$%K%e!<%9%0%k!<%W$O85!9(B +$B$N%0%k!<%W$HF1$8$h$&$K9XFI(B ($B$b$7$/$OHs9XFI(B) $B$5$l$^$9!#(B + +$B$?$H$($P!"%a!<%k$rFI$`$?$a$K(B @code{nnmbox} $B%P%C%/%(%s%I(B (back end) $B$r;H(B +$B$$$?$$$H$-$O!"IaDL!"$3$NJQ?t$r!"(B + +@lisp +(setq gnus-secondary-select-methods '((nnmbox ""))) +@end lisp + +@noindent +$B$H@_Dj$7$^$9!#(B + +$BCm(B: @acronym{NNTP} $B%P%C%/%(%s%I$O0u%U%!%$%k(B (@pxref{NNTP marks}) $B$K0u$r(B +$BJ]B8$7$^$9!#$3$N5!G=$O(B Gnus $B$,%$%s%9%H!<%k$5$l$F$$$kJ#?t$N%[%9%H4V$G0u$r(B +$B6&M-$9$k$3$H$rMF0W$K$7$^$9$,!"?7Ce5-;v$N\:Y$K$D$$$F$O(B @ref{NNTP marks} $B$r;2>H$7$F2<$5$$!#(B + +@node The First Time +@section $B0lHV=i$a(B +@cindex first time usage + +$B5/F0MQ%U%!%$%k$,B8:_$7$J$$$H$-$O(B (@pxref{Startup Files})$B!"(BGnus $B$O%G%#%U%)(B +$B%k%H$G$I$N%0%k!<%W$,9XFI$5$l$F$$$k$Y$-$+$r7hDj$7$h$&$H$7$^$9!#(B + +@vindex gnus-default-subscribed-newsgroups +$BJQ?t(B @code{gnus-default-subscribed-newsgroups} $B$,@_Dj$5$l$F$$$k$H!"(B +Gnus $B$O$=$N%j%9%H$NCf$N%0%k!<%W$r9XFI$7!";D$j$r:o=|$7$^$9!#%7%9%F%`4IM}(B +$B$^$l$^$9!#(B + +$B$=$&$G$J$$$H$-$O!"(BGnus $B$O>/$7$NG$0U$N%0%k!<%W$r9XFI$7$^$9(B ($BNc(B: +@samp{*.newusers})$B!#(B(@dfn{$BG$0U(B}$B$O$3$3$G$O!"(B@dfn{Lars $B$5$s$,FI$`$Y$-$G$"(B +$B$k$H9M$($k$b$N(B}$B$H$$$&$h$&$KDj5A$5$l$F$$$^$9(B) + +$B$^$?!"$?$$$F$$$N6&DL$NLdBj$N2r7h$N$K$$$/$D$+%a!<%k$N%0(B +$B%k!<%W$,$"$l$P!"$=$l$K$b$+$+$o$i$:(B Gnus $B$r5/F0$7$?$$$H;W$&$+$b$7$l$^$;$s!#(B + +Gnus $B$O!"?.Mj$G$-$k%W%m%0%i%`$N0l$D$H$7$F!"%5!<%P!<$H@\B3$G$-$J$$$H$-$O(B +$B4pK\A*BrJ}K!$J$7$GB3$1$k$+$I$&$+$r?R$M$^$9!#$3$l$Ol9g(B) $B$d%5!<%P!<$,2?$i$+$NM}M3$G0l(B +$B;~E*$KD4;R$,$*$+$7$/$J$C$F$$$k$H$-$K5/$3$j$^$9!#$b$7$=$N$^$^B39T$9$k$3$H(B +$B$K$7$F!"30It%0%k!<%W$,0l$D$bL5$$>l9g!"uBV$K$7$^$9(B ($B4pK\%0%k!<%W$G$J$$%0%k!<%W$O$=$NFs$D$N%l%Y%k(B +$B$K$7$F$*$/$N$,K>$^$7$$$G$7$g$&(B)$B!#(B@ref{Group Levels} $B$b;2>H$7$F2<$5$$!#(B + +@node Slave Gnusae +@section Gnus $B$r%9%l!<%V$K$9$k(B +@cindex slave + +$B$"$J$?$OFs$D0J>e$N(B Emacs $B$H!"Fs$D0J>e$N(B Gnus $B$rF1;~$KF0$+$7$?$$$H;W$&$+(B +$B$b$7$l$^$;$s!#0c$C$?(B @file{.newsrc} $B%U%!%$%k$r;H$C$F$$$k$J$i(B ($BNc$($P!"(B +$BFs$D$N0c$C$?%5!<%P!<$+$iFI$_9~$`$?$a$K!"Fs$D$N0c$C$?(B Gnus $B$rF0:n$5$;$F$$(B +$B$k>l9g(B)$B!"$^$C$?$/LdBj$O$"$j$^$;$s!#$=$l$r9T$($PNI$$$@$1$G$9!#(B + +$BLdBj$O!"F1$8(B @file{.newsrc} $B%U%!%$%k$r;H$&Fs$D$N(B Gnus $B$rF0$+$=$&$H$7$?$H(B +$B$-$K5/$3$j$^$9!#(B + +$B$3$NLdBj$KBP=h$9$k$?$a$K!"(BGnus $B%?%o!<$N%7%s%/%?%s%/$K$$$k2f!9$O?7$7$$35(B +$BG0$K$?$I$j$D$-$^$7$?!#(B@dfn{$B%^%9%?!<(B} $B$H(B @dfn{$B%9%l!<%V(B} $B$G$9!#(B($B2f!9$O$3$N(B +$B35G0$KFC5v$r?=@A$7$^$7$?!#$=$7$F!"$=$N8@MU$NCx:n8"$rF@$^$7$?!#$*8_$$$K4X(B +$BO"$7$F$3$l$i$N8@MU$r;H$$$?$$$J$i!"0l2s;H$&Kh$K!";d$K(B $1 $B$rAw$i$J$1$l$P$J(B +$B$j$^$;$s!#$b$C$A$m$s!"(B@dfn{$B%3%s%T%e!<%?!<%"%W%j%1!<%7%g%s$N%^%9%?!$l(B @kbd{M-x gnus-slave} $B$G5/F0(B +$B$7$^$9!#%9%l!<%V$OIaDL$N(B @file{.newsrc} $B$OJ]B8$7$^$;$s$,!"Be$o$j(B +$B$K(B @dfn{$B%9%l!<%V%U%!%$%k(B} $B$K%9%l!<%V$N5/F0Cf$K$I$N$h$&$J%0%k!<%W$,FI$^$l(B +$B$?$+$H$$$&>pJs$@$1$rJ]B8$7$^$9!#%^%9%?!<(B Gnus $B$,5/F0$9$k$H$-!"$=$l$O$=$l(B +$B$i$N%9%l!<%V%U%!%$%k$rFI$_9~$_(B ($B$=$7$F>C$7(B)$B!"$=$l$i$+$i$9$Y$F$N>pJs$rpJs$OIaDL$N(B ($B$9$J$o$A!"%^%9%?!<(B +$B$N(B) @file{.newsrc} $B%U%!%$%k$h$j$bM%@h$5$l$^$9!#(B + +$B%9%l!<%V$r5/F0$9$k$H$-$K$b$7%^%9%?!<$N(B @file{.newsrc*} $B%U%!%$%k72$,%;!<(B +$B%V$5$l$F$$$J$+$C$?$i!"<+F0J]B8$5$l$?%U%!%$%k$rFI$`$+$I$&$+$r?R$M$i$l$k$+(B +$B$b$7$l$^$;$s!#(B``yes'' $B$HEz$($k$H!"%^%9%?!<$K%;!<%V$5$l$F$$$J$$JQ99$O%9%l!<(B +$B%V$KH?1G$5$l$^$;$s!#(B``no'' $B$HEz$($k$H!"%^%9%?!<$GFI$^$l$?$$$/$D$+$N5-;v(B +$B$,!"%9%l!<%V$G$OL$FI$G$"$k$H8+$J$5$l$k$+$b$7$l$^$;$s!#(B + +@node New Groups +@section $B?7$7$$%0%k!<%W(B +@cindex new groups +@cindex subscription + +@vindex gnus-check-new-newsgroups +$B?7$7$$%K%e!<%9%0%k!<%W$rA4$/8+$J$$$GK~B-$G$"$k$J$i$P!"(B +@code{gnus-check-new-newsgroups} $B$r(B @code{nil} $B$K@_Dj$9$k$3$H$,$G$-$^$9!#(B +$B$3$l$r@_Dj$7$?>l9g!"5/F0$K$+$+$k;~4V$,C;$/$J$j$^$9!#$3$NJQ?t(B +$B$,(B @code{nil} $B$K@_Dj$5$l$F$$$F$b!"%0%k!<%W%P%C%U%!$G(B @kbd{U} $B$r2!$;$P$$(B +$B$D$G$b?7$7$$%0%k!<%W$r9XFI$9$k$3$H$,$G$-$^$9(B (@pxref{Group Maintenance})$B!#(B +$B=i4|@_Dj$G$O$3$NJQ?t$O(B @code{ask-server} $B$G$9!#$3$NJQ?t(B +$B$,(B @code{always} $B$K@_Dj$5$l$F$$$k$H!"L?Na(B @kbd{g} $B$re$,$j$G$9!#$3$l$K$h$j!":o=|$5$l$?%0%k!<%W$N%j%9(B +$B%H$rJ];}$7$F$*$/$3$H$+$i$+$i40A4$K3+J|$5$l$^$9!#$G$9$+$i!"(B +@code{gnus-save-killed-list} $B$r(B @code{nil} $B$K$9$k$3$H$,$G$-$k$G$7$g$&!#(B +$B$=$&$9$l$P!"5/F0!"=*N;$NN>J}!"$=$7$FA4BN$K$o$?$C$F;~4V$r@aLs$G$-$^$9!#%G%#(B +$B%9%/>CHqNL$b>/$J$/$J$j$^$9!#$=$l$J$i!"$I$&$7$F$3$l$,=i4|@_Dj$G$O$J$$$N$G(B +$B$7$g$&(B? $B;DG0$J$,$i!"$9$Y$F$N%5!<%P!<$,$3$NL?Na$rM}2r$9$k$o$1$G$O$J$$$N$G(B +$B$9!#(B + +$B;d$O:#$"$J$?$,2?$r9M$($F$$$k$+$rEv$F$i$l$^$9!#$I$&$9$l$P%5!<%P!<(B +$B$,(B @code{ask-server} $B$rM}2r$9$k$+$,$o$+$k$N$G$7$g$&(B? $B$(!"0c$&$N$G$9(B +$B$+(B? $B$"$!!"NI$+$C$?!#$H$$$&$N$O!"3N$NJ}K!$H$7$F$O!"%5!<%P!<(B +$B$K(B @code{telnet} $B$r$7$F!"(B@code{HELP} $B$HBG$A!"%5!<%P!<$,M}2r$9$k%3%^%s%I(B +$B$NCf$K(B @samp{NEWGROUPS} $B$,$"$k$+$I$&$+$rD4$Y$k$3$H$b$G$-$^$9!#$b$7$"$l$P!"(B +$B$*$=$i$/F0:n$9$k$G$7$g$&(B ($B$7$+$7!"E,@Z$K5!G=$rDs6!$9$k$3$H$J(B +$B$/(B @samp{NEWGROUPS} $B$r%j%9%H$K4^$a$k%5!<%P!<$b$"$j$^$9(B)$B!#(B + +$B$3$NJQ?t$O!"A*BrJ}K!$N%j%9%H$G$"$k$3$H$b$G$-$^$9!#$=$N$H$-$O!"(BGnus $B$OL?(B +$BNa(B @code{ask-server} $B$r$=$l$>$l$NA*BrJ}K!$KBP$7$FA0(B +$B$rM#0l$N0z?t$H$7$F8F$P$l$^$9!#(B + +$B$$$/$D$+$N%s%S(B (zombie) $B$K$7$^$9!#$3$l$,=i4|@_Dj$K$J$C$F(B +$B$$$^$9!#8e$G%>%s%S$r(B (@kbd{A z} $B$K$h$C$F(B) $B354Q$7$?$j!"(B(@kbd{S z} $B$K$h$C(B +$B$F(B) $BE,@Z$KA4$F$r:o=|$7$?$j!"(B(@kbd{u} $B$K$h$C$F(B) $B9XFI$7$?$j$G$-$^$9!#(B + +@item gnus-subscribe-randomly +@vindex gnus-subscribe-randomly +$BG$0U$N=gHV$G$9$Y$F$N?7$7$$%0%k!<%W$r9XFI$7$^$9!#e!Y$K2C$($i$l$^$9!#(B + +@item gnus-subscribe-alphabetically +@vindex gnus-subscribe-alphabetically +$B$9$Y$F$N?7$7$$%0%k!<%W$r%"%k%U%!%Y%C%H=g$K9XFI$7$^$9!#(B + +@item gnus-subscribe-hierarchically +@vindex gnus-subscribe-hierarchically +$B$9$Y$F$N?7$7$$%0%k!<%W$r3,AXE*$K9XFI$7$^$9!#$3$N4X?t(B +$B$H(B @code{gnus-subscribe-alphabetically} $B$N0c$$$O>/$7$7$+$"$j$^$;$s!#(B +@code{gnus-subscribe-alphabetically} $B$O?7$7$$%0%k!<%W$r87L)$K%"%k%U%!%Y%C(B +$B%H=g$K$J$i$Y$^$9$,!"$3$N4X?t$O%0%k!<%W$r$=$N3,AX$NCf$KF~$l$^$9!#$G$9$+$i!"(B +@samp{rec} $B$N3,AX$r(B @samp{comp} $B$N3,AX$NA0$K;}$C$F$-$?$$>l9g!"$3$N4X?t$O(B +$B$=$NG[CV$r$0$A$c$0$A$c$K$O$7$^$;$s!#$b$7$/$O!"$=$N$h$&$J$b$N$G$9!#(B + +@item gnus-subscribe-interactively +@vindex gnus-subscribe-interactively +$B?7$7$$%0%k!<%W$rBPOCE*$K9XFI$7$^$9!#$3$l$O(B Gnus $B$,(B @strong{$BA4$F(B} $B$N%0%k!<(B +$B%W$KBP$7$F?R$M$k$3$H$r0UL#$7$F$$$^$9!#9XFI$9$k%0%k!<%W$O3,AXE*$K9XFI$5$l(B +$B$^$9!#(B + +@item gnus-subscribe-killed +@vindex gnus-subscribe-killed +$B$9$Y$F$N?7$7$$%0%k!<%W$r:o=|$7$^$9!#(B + +@item gnus-subscribe-topics +@vindex gnus-subscribe-topics +$B%0%k!<%W$r9gCW$9$k(B @code{subscribe} $B%H%T%C%/%Q%i%a!<%?$N$"$k%0%k!<%W$KF~(B +$B$l$^$9(B (@pxref{Topc Parameters})$B!#Nc$($P!"0J2<$N$h$&(B +$B$J(B @code{subscribe} $B%Q%i%a!<%?(B + +@example +"nnslashdot" +@end example + +$B$O$=$N@55,I=8=$K9gCW$9$kA4$F$N%0%k!<%W$O$=$N%H%T%C%/$N2<$G9XFI$5$l$k$H$$(B +$B$&$3$H$G$9!#(B + +$B%0%k!<%W$K9gCW$9$k%H%T%C%/$,L5$$>l9g!"%0%k!<%W$O:G>e0L$N%H%T%C%/$G9XFI$5(B +$B$l$^$9!#(B +@end table + +@vindex gnus-subscribe-hierarchical-interactive +$B>e$NJQ?t$HNI$/4X78$7$?JQ?t$O!"(B +@code{gnus-subscribe-hierarchical-interactive} $B$G$9!#$3$NJQ?t(B +$B$,(B @code{nil} $B$G$J$$$H!"(BGnus $B$O3,AXE*$JJ}K!$G?7$7$$%0%k!<%W$r9XFI$9$k$+(B +$B$I$&$+$r?R$M$^$9!#(BGnus $B$O$=$l$>$l$N3,AX$G!"$=$l$r2<$K9_$j$k$+$I$&$+$r?R(B +$B$M$^$9!#(B + +$B$h$/$"$k4V0c$$$O!"?tCJMnA0$NJQ(B +$B?t(B (@code{gnus-subscribe-newsgroup-method}) $B$r(B @code{gnus-subscribe-herarchical-interactive} $B$K(B +$B@_Dj$9$k$3$H$G$9!#$3$l$O8m$j$G$9!#$3$l$OF0:n$7$^$;$s!#$3$l$O$*$a$G$?$$?M(B +$B$N$9$k$3$H$G$9!#$G$9$+$i!"@dBP$K$7$J$$$G$/$@$5$$!#(B + +@node Filtering New Groups +@subsection $B?7$7$$%0%k!<%W$rA*JL$9$k(B + +$B$I$N?7$7$$%0%k!<%W$,9XFI(B ($B$b$7$/$O!"L5;k(B) $B$5$l$k$Y$-$+$r4IM}$9$k2wE,$GA0$r;}$D%0%k!<%W$OA4$FL5;k$5$l!"(B@samp{sci} $B$G;O$^$kL>A0$r;}$D%0%k!<(B +$B%W$OA4$F9XFI$9$k!"$H$$$&$3$H$rI=$7$F$$$k$+$i$G$9!#(BGnus $B$O$3$l$i$N%0%k!<(B +$B%W$r9XFI$9$k$N$K!"IaDL$N9XFIJ}K!$rMQ$$$^$;$s!#Be$o$j$K!"(B +@code{gnus-subscribe-options-newsgroup-method} $B$,MQ$$$i$l$^$9!#$3$NJQ?t(B +$B$O=i4|@_Dj$G$O(B @code{gnus-subscribe-alphabetically} $B$G$9!#(B + +@vindex gnus-options-not-subscribe +@vindex gnus-options-subscribe +$B%U%!%$%k(B @file{.newsrc} $B$r$$$8$j$?$/$J$$>l9g$O!"(B +@code{gnus-options-subscribe} $B$H(B @code{gnus-options-not-subscribe} $B$NFs(B +$B$D$NJQ?t$@$1$r@_Dj$9$k$3$H$b$G$-$^$9!#$3$NFs$D$NJQ?t$O%U%!%$(B +$B%k(B @file{.newsrc} $B$N(B @samp{optinos -n} $B9T$HA4$/F1$8$3$H$r$7$^$9!#$I$A$i(B +$B$NJQ?t$b@55,I=8=$G!"?7$7$$%0%k!<%W$OA0r7o$K9XFI$5$l!"8e(B +$BJ,$J$b$N$G$9!#$7$+$7!";d$O$3$NFs$D$,$"$C$?J}$,NI$$$H;W$$$^$7$?!#$b$&0l(B +$BJ}$NJQ?t$O%f!<%6$,$$$8$/$k$N$K;H$o$l$k$N$KBP$7$F!"$3$NJQ?t$O$$$/$D$+$N4p(B +$BK\E*$J5,B'$r@_Dj$9$k$?$a$N$b$N$G$9!#=i4|@_Dj$G$O$3$NJQ?t$O%a!<%k%P%C%/%((B +$B%s%I(B (@code{nnml}, @code{nnbabyl}, @code{nnfolder}, @code{nnmbox}, +@code{nnmh} $B$*$h$S(B @code{nnmaildir}) $B$+$i$G$-$kA4$F$N?7$7$$%0%k!<%W$r9X(B +$BFI$9$k$h$&$K$J$C$F$$$^$9!#$=$l$,7y$G$"$l$P!"$3$NJQ?t$r(B @code{nil} $B$K@_Dj(B +$B$7$F$/$@$5$$!#(B + +$B$3$N@55,I=8=$K9gCW$9$k?7$7$$%0%k!<%W(B +$B$O(B @code{gnus-subscribe-options-newsgroup-method} $B$r;H$C$F9XFI$5$l$^$9!#(B + +@node Changing Servers +@section $B%5!<%P!<$r49$($k(B +@cindex changing servers + +$B$H$-$I$-!"$"$k(B @acronym{NNTP} $B%5!<%P!<$+$iJL$N%5!<%P!<$X0\F0$7$J$1$l$P$J(B +$B$i$J$$$3$H$,$"$j$^$9!#$3$N$h$&$J$3$H$O$a$C$?$K$*$-$^$;$s$,!"$*$=$i$/$"$J(B +$B$?$,;E;v$rJQ$($?$j!";H$C$F$$$k%5!<%P!<$,$H$F$bIT0BDj$G!"JL$N$b$N$K>h$j49(B +$B$($?$$$H$$$&$H$-$KI,MW$K$J$k$G$7$g$&!#(B + +$B%5!<%P!<$rJQ99$9$k$N$O$H$F$b4JC1$G$9$h$M(B? @code{gnus-select-method} $B$r?7(B +$B$7$$%5!<%P!<$r;X$7<($9$h$&$KJQ99$9$l$P$$$$$@$1$G$9$M(B? + +@emph{$B0c$$$^$9(B!} + +$B5-;v$NHV9f$O0c$C$?(B @acronym{NNTP} $B%5!<%P!<$G$b(B ($B$I$&$K$+$7$F(B) $BF1$8$K$7$F(B +$B$"$k!"$H$$$&$3$H$O$"$j$^$;$s!#$=$7$F!"(BGnus $B$,$I$N5-;v$rFI$s$@$+$r5-O?$9(B +$B$kM#0l$NJ}K!$O!"5-;vHV9f$r5-O?$9$k$3$H$G$9!#$G$9$+$i!"(B +@code{gnus-select-method} $B$rJQ99$7$?$H$-$O!"%U%!%$%k(B @file{.newsrc} $B$O0U(B +$BL#$,$J$/$J$j$^$9!#(B + +Gnus $B$O%U%!%$%k(B @file{.newsrc} $B$r$"$k%5!<%P!J}$N%5!<%P!<$K@\B3$G$-$k$J$i!"(BGnus $B$O$"$J$?$,FI$s$@5-;vA4$F$KBP$7(B +$B$F%X%C%@!<(B (headers) $B$rMW5a$7$F!"(B@code{Message-ID} $B$rHf3S$7!"FI$s$@5-;v(B +$B$H5-;v$N0u$r?7$7$/5-O?$7$^$9!#%3%^%s%I(B @kbd{M-x gnus-change-server} $B$O$3(B +$B$l$r$9$Y$F$N4pK\%0%k!<%W$KBP$7$F9T$$$^$9!#$=$N%3%^%s%I$O0\F0@h$NJ}K!$NF~(B +$BNO$rB%$7$^$9!#(B + +@kindex M-x gnus-group-move-group-to-server +@findex gnus-group-move-group-to-server +$B8D!9$N%0%k!<%W$rL?Na(B @kbd{M-x gnus-group-move-group-to-server} $B$G0\(B +$BF0$9$k$3$H$b$G$-$^$9!#$3$l$O$"$k%5!<%P!<$+$iJL$N%5!<%P!<$X0l$D(B +$B$N(B ($B30It(B) $B%0%k!<%W$r0\F0$7$?$$$H$-$KLr$KN)$A$^$9!#(B + +@kindex M-x gnus-group-clear-data-on-native-groups +@findex gnus-group-clear-data-on-native-groups +$B8E$$%5!<%P!<$H?7$7$$%5!<%P!<$NN>J}$K@\B3$9$k$3$H$,$G$-$J$$$H$-!"0u$HFI$s(B +$B$@HO0O$O$9$Y$F0UL#$,L5$/$J$j$^$9!#$=$N$h$&$J$H$-$O!"%3%^%s%I(B @kbd{M-x +gnus-group-clear-data-on-native-groups} $B$r;H$C$F!"4pK\%0%k!<%W$K4X$9$k%G!<(B +$B%?$r$9$Y$F>C5n$9$k$3$H$,$G$-$^$9!#$3$N%3%^%s%I$OCm0U$7$F;H$C$F$/$@$5$$!#(B + +@kindex M-x gnus-group-clear-data +@findex gnus-group-clear-data +$B8=:_$N%0%k!<%W$NA4$F$N%G!<%?$r%/%j%"$7$^$9!=!=%^!<%/$H4{FI5-;v$N%j%9%H$r(B +$B>C$75n$j$^$9(B (@code{gnus-group-clear-data})$B!#(B + +$B%5!<%P!<$rJQ99$7$?8e$G!"%-%c%C%7%e3,AX$r0\F0$5$;$J$1$l$P(B@strong{$B$J$j$^$;(B +$B$s(B}$B!#$H$$$&$N$O!"%-%c%C%7%e5-;v$O4V0c$C$?5-;vHV9f$K$J$C$F$*$j!"$=$l(B +$B$O(B Gnus $B$,$I$N5-;v$rFI$s$@$H$_$J$9$+$K1F6A$7$^$9!#(B +@code{gnus-group-clear-data-on-native-groups} $B$O$=$l$r<+F0$G9T$J$C$F$7$^(B +$B$&$+$I$&$+$r?R$M$^$9!#(B@code{gnus-group-clear-data} $B$G(B +$B$O(B @kbd{M-x gnus-cache-move-cache} $B$,;H$($^$9(B ($B$G$b5$$rIU$1$F!"$=$l$O$9(B +$B$Y$F$N%0%k!<%W$N%-%c%C%7%e$r0\F0$7$F$7$^$$$^$9$+$i(B)$B!#(B + +@node Startup Files +@section $B5/F0%U%!%$%k(B +@cindex startup files +@cindex .newsrc +@cindex .newsrc.el +@cindex .newsrc.eld + +$B:G$b$"$j$U$l$?(B Unix $B$N%K%e!<%9%j!<%@!<$O!"(B@file{.newsrc} $B$H8F$P$l$k6&MQ(B +$B$N5/F0%U%!%$%k$r;H$$$^$9!#$3$N%U%!%$%k$O!"9VFI$7$F$$$k%0%k!<%W$H!"$=$l$i(B +$B$N%0%k!<%W$K$*$$$F$I$N5-;v$,FI$^$l$?$+$N!"$9$Y$F$N>pJs$r;}$C$F$$$^$9!#(B + +@sc{gnus} $B$G$OJ*;v$,>/!9J#;($K$J$C$F$$$^$9!#%U%!%$%k(B @file{.newsrc} $B$r:G(B +$B?7$N$b$N$K$9$k$@$1$G$O$J$/!"%U%!%$%k(B @file{.newsrc} $B$K$O9g$o$J$$>pJs$rJ](B +$BB8$7$F$*$/$?$a$K(B @file{.newsrc.el} $B$H8F$P$l$k%U%!%$%k$r;H$$$^$9!#(B($BpJs$rJ#@=$7$FJ];}$7$F$$$^(B +$B$9!#(B) @sc{gnus}$B$O$3$l$i$NCf$G0lHV:G8e$KJ]B8$5$l$?$b$N$r;H$$$^$9!#$3$l$r(B +$B$9$k$3$H$K$h$j!"(B@sc{gnus} $B$HB>$N%K%e!<%9%j!<%@!<$r@Z$jBX$($F;H$&$3$H$,$G(B +$B$-$^$9!#(B + +$B$3$l$O$A$g$C$H$P$+$JJ}K!$J$N$G!"(BGnus $B$O$b$C$HNI$$J}K!$rJT$_=P$7$^$7$?!#(B +@file{.newsrc} $B$H(B @file{.newsrc.el} $B%U%!%$%k$K2C$($F!"(B +Gnus $B$O(B @file{.newsrc.eld} $B$H8F$P$l$k%U%!%$%k$b;}$C$F$$$^$9!#(BGnus $B$O$3$l(B +$B$i$NCf$G0lHV?7$7$$%U%!%$%k$rFI$_$^$9$,!"%U%!%$%k(B @file{.newsrc.el} $B$K=q(B +$B$-9~$`$3$H$O$"$j$^$;$s!#%U%!%$%k(B @file{.newsrc.eld} $B$O@dBP$K>C$9$Y$-$G$O(B +$B$"$j$^$;$s!#(B---$B$=$l$O%U%!%$%k(B @file{.newsrc} $B$K$O$J$$$?$/$5$s$N>pJs$rJ](B +$B;}$7$F$$$^$9!#(B + +@vindex gnus-save-newsrc-file +@vindex gnus-read-newsrc-file +@code{gnus-save-newsrc-file} $B$r(B @code{nil} $B$K$9$k$3$H$K$h$C$F%U%!%$(B +$B%k(B @file{.newsrc} $B$K=q$-9~$`$N$r;_$a$k$3$H$,$G$-$^$9!#$=$&$9$l$P!"$=$N%U%!(B +$B%$%k$r:o=|$9$k$3$H$,$G$-!"%G%#%9%/MFNL$r@aLs$9$k$3$H$,$G$-!"(BGnus $B$N=*N;(B +$B$,B.$/$J$j$^$9!#$7$+$7!"$=$&$9$k$HB>$N%K%e!<%9%j!<%@!<$r;H$($J$/$J$j$^$9!#(B +$B$G$b!"$A$g$C$H!"C/$+$=$&$7$?$$?M$,$$$k$G$7$g$&$+!#F1$8$h$&(B +$B$K(B @code{gnus-read-newsrc-file} $B$r(B @code{nil} $B$K$9$k$3$H$K$h$C$F!"(B +Gnus $B$O(B @file{.newsrc} $B%U%!%$%k$H$9$Y$F$N(B @file{.newsrc-SERVER} $B%U%!%$%k(B +$B$rL5;k$9$k$h$&$K$J$j$^$9!#$=$N$3$H$O!"$"$J$?$,;~!90c$&%K%e!<%9%j!<%@!<$r(B +$B;H$C$?$j!"MxMQ2DG=$J%0%k!<%W$N0[$J$k%5%V%;%C%H$r$=$l$i$N%K%e!<%9%j!<%@!<(B +$B$GFI$_$?$$>l9g$K!"JXMx$J$3$H$,$"$j$^$9!#(B + +@vindex gnus-save-killed-list +@code{gnus-save-killed-list} ($B=i4|@_Dj$G$O(B @code{t}) $B$,(B @code{nil} $B$G$"(B +$B$k$H!"(BGnus $B$O:o=|$5$l$?%0%k!<%W$r5/F0%U%!%$%k$KJ]B8$7$^$;$s!#$3$l$O!"(B($B5/(B +$BF0;~$H=*N;;~$N(B) $B;~4V$H!"(B($B%G%#%9%/$N(B) $BMFNL$r@aLs$7$^$9!#$3$&$9$k$H!"(B +Gnus $B$,$I$N%0%k!<%W$,?7$7$$$+$N5-O?$r;}$C$F$$$J$$$3$H$K$J$j$^$9$N$G!"?7(B +$B$7$$%0%k!<%W$N<+F09XFIJ}K!$O0UL#$,L5$/$J$j$^$9!#$3$NJQ?t$r(B @code{nil} $B$K(B +$B$7$?$H$-$O!"(B@code{gnus-check-new-newsgroups} $B$r>o(B +$B$K(B @code{nil} $B$+(B @code{ask-server} $B$K$7$F$*$/$Y$-$G$7$g(B +$B$&(B (@pxref{New Groups})$B!#$3$NJQ?t$O@55,I=8=$G$"$k$3$H$b$G$-$^$9!#$=$N$h(B +$B$&$J>l9g$O!"%U%!%$%k$rJ]B8$9$kD>A0$K$=$N@55,I=8=$K9gCW$7$J$$$9$Y$F$N%0%k!<(B +$B%W$r>C5n$7$^$9!#$3$l$O!"$9$Y$F$N%5!<%P!<$,(B @code{ask-server} $B$rM}2r$9$k(B +$B$o$1$G$O$J$$!"$H$$$C$?$h$&$J!"FCDj$N$"$$$^$$$J>u67$N$H$-$KLr$KN)$D$G$7$g(B +$B$&!#(B + +@vindex gnus-startup-file +@vindex gnus-backup-startup-file +@vindex version-control +$BJQ?t(B @code{gnus-startup-file} $B$O5/F0%U%!%$%k$,$I$3$K$"$k$+$r;XDj$7$^$9!#(B +$B=i4|CM$O(B @file{~/.newsrc} $B$G!"$=$l$,$I$N$h$&$J$b$N$G$"$l!"KvHx(B +$B$K(B @samp{.eld} $B$r$D$1$?$b$N$,(B Gnus (El Dingo) $B$N5/F0%U%!%$%k$K$J$j$^$9!#(B +$B$3$N%U%!%$%k$N%P!<%8%g%s@)8f$r$7$?$$$H$-(B +$B$O(B @code{gnus-backup-startup-file} $B$r%;%C%H$7$F2<$5$$!#$=$l(B +$B$O(B @code{version-control} $BJQ?t$HF1$8CM$rA0$N%U%!%$%k$K!"@\Hx8l(B @file{.elc} $B$H(B @file{.el} $B$,(B +$BIU$$$F$$$k$b$N$bD4$Y$^$9!#8@$$49$($l$P!"(B +@code{gnus-init-file} $B$r(B @file{~/.gnus} $B$K@_Dj$9$k$H!"(B +Gnus $B$O(B @file{~/.gnus.elc}, @file{~/.gnus.el} $B$rC5$7!":G8e(B +$B$K(B @file{~/.gnus} $B$r(B ($B$3$N=gHV$K(B) $BC5$7$^$9!#(B@option{-q} $B$^$?(B +$B$O(B @option{--no-init-file} $B%*%W%7%g%s(B (@pxref{Initial Options, ,Initial +Options, emacs, The Emacs Manual}) $B$,;XDj$5$l$F(B Emacs $B$,5/F0$5$l$?>l9g!"(B +Gnus $B$O(B @code{gnus-init-file} $B$rFI$_9~$_$^$;$s!#(B + +@node Auto Save +@section $B<+F0J]B8(B +@cindex dribble file +@cindex auto-save + +$B2?$+(B Gnus $B$N%G!<%?$rJQ99$9$k$3$H(B ($B5-;v$rFI$`!"0u$rIU$1$k!"%0%k!<%W$r:o=|(B +$B$^$?$O9XFI$9$k(B) $B$r$7$?$H$-!"JQ99$OFCJL$J(B@dfn{$B%I%j%V%k%P%C%U%!(B (dribble +buffer)} $B$K=q$-9~$^$l$^$9!#$3$N%P%C%U%!$O(BEmacs $B$,IaDL$9$k$h$&$K<+F0J]B8(B +$B$5$l$^$9!#%U%!%$%k(B @file{.newsrc} $B$rJ]B8$9$kA0$K(B Emacs$B$,Mn$A$?$H$-$O!"$9(B +$B$Y$F$NJQ99$r$3$N%U%!%$%k$+$i2sI|$9$k$3$H$,$G$-$k$G$7$g$&!#(B + +$B5/F0;~$K(B Gnus $B$,$3$N%U%!%$%k$NB8:_$rH/8+$9$k$H!"(BGnus $B$O$=$l$rFI$_9~$`$+(B +$B$I$&$+$rMxMQA0$r;}$D%0%k!<%W$rGS=|$9$k$?$a$K;H$o$l$F$-$^$7$?$,!"6=L#$NL5$$%0(B +$B%k!<%W$N3,AX$rL5;k$9$k$?$a$K;H$&$3$H$b$G$-$^$9!#$7$+$7!"$3$l$O$*4+$a$G$-(B +$B$^$;$s!#K\Ev$N$3$H$r8@$&$H!"A4$/;?@.$G$-$^$;$s!#Be$o$j$K!"$=$N$h$&$JMQES(B +$B$KMQ$$$i$l$kJQ?t$N35N,$rCN$k$?$a$K!"(B@ref{New Groups} $B$r;2>H$7$F$/$@$5$$!#(B + +@c This variable is +@c @code{nil} by default, and will slow down active file handling somewhat +@c if you set it to anything else. + +@vindex gnus-read-active-file +@c @head +$B%"%/%F%#%V%U%!%$%k$OHf3SE*Bg$-$/$J$k798~$,$"$k$N$G!"CY$$2s@~$r;H$C$F$$$k(B +$B$H$-$O!"%"%/%F%#%V%U%!%$%k$rFI$_9~$^$J$$$h$&(B +$B$K(B @code{gnus-read-active-file} $B$r(B @code{nil} $B$K@_Dj$9$k$3$H$,$G$-$^$9!#(B +$B$3$NJQ?t$O=i4|@_Dj$G$O(B @code{some} $B$G$9!#(B + +$B$=$N$h$&$J;~$O!"(BGnus $B$OpJs$@$1$rF@(B +$B$F$d$C$F$$$3$&$H$7$^$9!#(B + +$B5$$rIU$1$F$[$7$$$N$O!"$"$J$?$,;3$[$I$N$?$/$5$s$N%0%k!<%W$r9XFI$7$F$$$k$H(B +$B$-$K$3$NJQ?t$r(B @code{nil} $B@_Dj$9$k$H!"(BGnus $B$OB.$/$J$k$I$3$m$+!"CY$/$J$C(B +$B$F$7$^$&$H$$$&$3$H$G$9!#8=>u$G$O!"%K%e!<%9$r(B 2400bps $B0J>e$N%b%G%`$rDL$7(B +$B$FFI$s$G$$$k$N$G$J$$8B$j!"(BGnus $B$NB.EY$O$+$J$jCY$/$J$k$G$7$g$&!#(B + +$B$3$NJQ?t$O(B @code{some} $B$H$$$&CM$bu$N>pJs$r9XFI$5$l$F$$$k%0%k!<%W$N$b$N$@$1$rF@$h$&$H$7$^$9!#$$$/$D$+$N%5!<(B +$B%P!<(B ($BL?Na(B @code{LIST ACTIVE group} $B$r;H$&$3$H$N$G$-$k!":G?71T$N(B INN $B%5!<(B +$B%P!<(B) $B$G$O!"Hs>o$KAa$/$J$k$G$7$g$&$,!"B>$N%5!<%P!<$G$OB.$/$O$"$j$^$;$s!#(B +$B$I$N$h$&$K$;$h!"CY$$2s@~$G$O(B @code{some} $B$O(B @code{nil} $B$h$j$bB.$/!"$=$l(B +$B$O$b$A$m$s(B@code{t} $B$h$j$bB.$/$J$j$^$9!#(B + +$B$$$/$D$+$N%K%e!<%9%5!<%P!<(B ($BNc$($P8E$$(B Leafnode $B$d8E$$(B INN) $B$K$OL?(B +$BNa(B @code{LIST ACTIVE group} $B$,$"$j$^$;$s!#$=$&$$$&%5!<%P!<$K(B +$B$O(B @code{nil} $B$r$3$NJQ?t$NCM$K@_Dj$9$k$N$,!"$*$=$i$/$b$C$H$bM-8z$G$7$g$&!#(B + +$B$b$7$3$NJQ?t$,(B @code{nil} $B$G$"$k$H!"(BGnus $B$O40A4$K$,$s$8$,$i$a$NJ}K!$G%0(B +$B%k!<%W$N>pJs$rF@$h$&$H$7$^$9!#$=$7$F!"$3$l$O$"$^$jB.$/$"$j$^$;$s!#$b$7$=(B +$B$l$,(B @code{some} $B$G(B @acronym{NNTP} $B%5!<%P!<$r;H$C$F$$$k$H$-$O!"(BGnus $B$O$G(B +$B$-$k$@$1B.$/L?Na$r=P$7!"0l7b$G$9$Y$F$NJVEz$rFI$_9~$_$^$9!#$3$NJ}$,IaDL$O(B +$B$h$jNI$$7k2L$r$b$?$i$7$^$9$,!"%5!<%P!<$,L?Na(B @code{LIST ACTIVE group} $B$r(B +$BM}2r$7$J$$$J$i!"%5!<%P!<$K$H$C$F$O$"$^$jNI$$$H$O8@$($^$;$s!#(B + +Gnus $B$N5/F0$K$"$^$j$K;~4V$,$+$+$k$H;W$C$?$J$i!"$3$NJQ?t$K$3$l$i$N;0$D$N(B +$B0c$C$?CM$r;n$7$F$_$F!"$I$l$,0lHVNI$$$+$rC5$7$F$/$@$5$$!#(B + +@code{some} $B$+(B @code{nil} $B$r;H$&$N$G$"$l$P!"$I$A$i$K$7$mB.EY$r>e$2$k$?$a(B +$B$K$9$Y$F$N6=L#$NL5$$%0%k!<%W$rI,$::o=|$9$k$Y$-$G$7$g$&!#(B + +$B$3$NJQ?t$OFse;J$K5$IU$+$l$K$/$/$J$k$G(B +$B$7$g$&!#$3$NJQ?t$O(B @file{~/.gnus.el} $B$,%m!<%I$5$l$kA0$K;H$o$l$^$9$N$G!"(B +@file{.emacs} $B$K@_Dj$9$k$Y$-$G$"$kE@$rCm0U$7$F$/$@$5$$!#(B + +@item gnus-no-groups-message +@vindex gnus-no-groups-message +$B%0%k!<%W$,0l$D$bB8:_$7$J$$$H$-$K(B Gnus $B$,I=<($9$k%a%C%;!<%8$G$9!#(B + +@item gnus-play-startup-jingle +@vindex gnus-play-startup-jingle +$B$b$7(B @code{nil} $B$G$J$$$H!"5/F0;~$K(B Gnus $B$NC;$$6J$r1iAU$7$^$9!#(B + +@item gnus-startup-jingle +@vindex gnus-startup-jingle +$B>e$NJQ?t$,(B @code{nil} $B$G$J$$$H$-$K1iAU$5$l$kC;$$6J$G$9!#=i4|CM(B +$B$O(B @samp{Tuxdemoon.Jingle4.au} $B$G$9!#(B +@end table + +@node Group Buffer +@chapter $B%0%k!<%W%P%C%U%!(B +@cindex group buffer + +@c Alex Schroeder suggests to rearrange this as follows: +@c +@c ok, just save it for reference. I'll go to bed in a minute. +@c 1. Selecting a Group, 2. (new) Finding a Group, 3. Group Levels, +@c 4. Subscription Commands, 5. Group Maneuvering, 6. Group Data, +@c 7. Group Score, 8. Group Buffer Format +@c Group Levels should have more information on levels 5 to 9. I +@c suggest to split the 4th paragraph ("Gnus considers groups...") as follows: +@c First, "Gnus considers groups... (default 9)." +@c New, a table summarizing what levels 1 to 9 mean. +@c Third, "Gnus treats subscribed ... reasons of efficiency" +@c Then expand the next paragraph or add some more to it. +@c This short one sentence explains levels 1 and 2, therefore I understand +@c that I should keep important news at 3 and boring news at 4. +@c Say so! Then go on to explain why I should bother with levels 6 to 9. +@c Maybe keep those that you don't want to read temporarily at 6, +@c those that you never want to read at 8, those that offend your +@c human rights at 9... + +$B%0%k!<%W%P%C%U%!(B (@dfn{group buffer}) $B$OM-8z$J%0%k!<%W$rA4It(B ($B$"$k$$$O0l(B +$BIt$r(B) $B0lMwI=<($7$^$9!#$3$l$O(B Gnus $B$r5/F0$7$?$H$-$K:G=i$KI=<($5$l$k%P%C%U%!(B +$B$G!"(BGnus $B$,@8$-$F$$$k8B$j7h$7$F>C$5$l$k$3$H$O$"$j$^$;$s!#(B + +@iftex +@iflatex +\gnusfigure{The Group Buffer}{320}{ +\put(75,50){\epsfig{figure=ps/group,height=9cm}} +\put(120,37){\makebox(0,0)[t]{Buffer name}} +\put(120,38){\vector(1,2){10}} +\put(40,60){\makebox(0,0)[r]{Mode line}} +\put(40,58){\vector(1,0){30}} +\put(200,28){\makebox(0,0)[t]{Native select method}} +\put(200,26){\vector(-1,2){15}} +} +@end iflatex +@end iftex + +@menu +* Group Buffer Format:: $BI=<($5$l$F$$$k>pJs$HJQ99$NJ}K!(B +* Group Maneuvering:: $B%0%k!<%W%P%C%U%!$r0\F0$9$k%3%^%s%I(B +* Selecting a Group:: $BC5n(B +* Group Data:: $B%0%k!<%W$N>pJs$rJQ99$9$k(B +* Group Levels:: $B%l%Y%k(B? $B$=$l$C$F2?(B? +* Group Score:: $B$"$J$?$N9%$-$J%0%k!<%W$r8+$D$1=P$9J}K!(B +* Marking Groups:: $B%0%k!<%W$K0u$r$D$1$F$*$$$F!"8e$G=hM}$G$-$^$9(B +* Foreign Groups:: $B%0%k!<%W$N:n@.$H=$@5(B +* Group Parameters:: $B%0%k!<%WKh$K0c$C$?%Q%i%a!<%?$r;}$?$;$i$l$^$9(B +* Listing Groups:: Gnus $B$O%0%k!<%W$r$$$m$$$m$JJ,$1J}$GI=<($G$-$^$9(B +* Sorting Groups:: $B%0%k!<%W$N=gHV$NG[CVBX$((B +* Group Maintenance:: $B$-$l$$$J(B @file{.newsrc} $B$NJ]$AJ}(B +* Browse Foreign Server:: $B%5!<%P$r354Q$G$-$k!#2?$,FI$a$k$N$+8+$F$_$h$&(B +* Exiting Gnus:: $B%K%e!<%9FI$`$N$r$d$a$F!";E;v$r$7$h$&(B +* Group Topics:: $B%0%k!<%W$r@Z$j:.$<$F!"%H%T%C%/$4$H$KJ,3d$9$k(B +* Misc Group Stuff:: $BB>$K$G$-$k$3$H(B +@end menu + +@node Group Buffer Format +@section $B%0%k!<%W%P%C%U%!$N7A<0(B + +@menu +* Group Line Specification:: $B%0%k!<%W%P%C%U%!$N8+$(J}$r7h$a$k(B +* Group Mode line Specification:: $B%0%k!<%W%P%C%U%!$N%b!<%I9T(B +* Group Highlighting:: $B%0%k!<%W%P%C%U%!$K$-$l$$$K?'$r$D$1$k(B +@end menu + +@node Group Line Specification +@subsection $B%0%k!<%W9T$N;EMM(B +@cindex group buffer format + +$B%0%k!<%W%P%C%U%!$N=i4|@_Dj7A<0$O$-$l$$$G$D$^$s$J$$$1$I!"$3$l$O7/$N9%$-$J(B +$B$h$&$K!"%5%$%3!<$K%@%5$/$9$k$3$H$b$G$-$^$9!#(B + +$B$3$l$,%0%k!<%W9T$NNc$G$9!#(B + +@example + 25: news.announce.newusers + * 0: alt.fan.andrea-dworkin +@end example + +$B$H$C$F$b4JC1$G$7$g(B? + +@samp{news.announce.newusers} $B$K$O(B 25 $B$NL$FI5-;v$,$"$k$N$,$o$+$j$^$9!#(B +@samp{alt.fan.andrea-dworkin} $B$K$OL$FI5-;v$O$J$$$1$l$I$b!"0u$r$D$1$?5-;v(B +$B$,$$$/$D$+$"$j$^$9(B ($B9TF,$N$A$C$A$c$J%"%9%?%j%9%/$,8+$($k(B?)$B!#(B + +@vindex gnus-group-line-format +$B$3$N7A<0$O(B @code{gnus-group-line-format} $BJQ?t$r$$$8$k$3$H$G!"$I$s$JIw$K(B +$B$G$bJQ$($i$l$^$9!#$3$NJQ?t$O(B @code{format} $B$N;EMMIw$KF0:n$7$^$9!#$D$^(B +$B$j(B ($B$"$N%/%=(B) C $B8@8l$r;H$&?M$?$A$N$?$a!"(Bprintf $B$N;EMM$H$[$\F1$8$G$9!#(B +@xref{Formatting Variables}. + +@samp{%M%S%5y:%B%(%g%)\n} $B$H$$$&CM$G>e5-$N9T$r@8@.$7$^$9!#(B + +$B%3%m%s$O!"$3$N9T$NCf$KI,$:L5$/$F$O$$$1$^$;$s!#%+!<%=%k$O!"2?$+$NA`:n$r$7(B +$B$?8e$O>o$K%3%m%s$N$H$3$m$K0\F0$9$k$+$i$G$9!#(B@xref{Positioning Point}. $BB>(B +$B$K$O2?$bI,MW$G$O$"$j$^$;$s!=!=%0%k!<%WL>$5$($b$G$9!#I=<($5$l$F$$$kJ8;z$O(B +$BA4$F$?$@$N2hLL$N>~$j$G$"$j!"(BGnus $B$,$=$l$rD4$Y$k$3$H$O$"$j$^$;$s!#(BGnus $B$O(B +$BI,MW$H$9$kA4$F$NpJs$r!"%F%-%9%HB0@-$r;H$C$F21$($F$$$^$9!#(B + +($B$b$77/$,!"$9$4$/%X%s$J!"AG@2$i$7$$!"I=7W;;Iw$N%l%$%"%&%H$r:n$C$?$H$7$?(B +$B$i!"$_$s$J!"7/$O2q7W$N;E;v$,K;$7$/$C$F!"%K%e!<%9$rFI$s$G;~4V$rL5BL;H$$$7(B +$B$?$j$J$s$+$7$F$J$$!"$C$F?.$8$F$/$l$k$h!#(B) + +$B0J2<$,;HMQ$G$-$k%U%)!<%^%C%HJ8;z$N%j%9%H$G$9!#(B + +@table @samp +@item M +$B$=$N%0%k!<%W$,0u$N$D$$$?5-;v$@$1$N$H$-$O!"%"%9%?%j%9%/J8;z!#(B + +@item S +$B$=$N%0%k!<%W$,9XFI$5$l$F$$$k$+$I$&$+!#(B + +@item L +$B9XFIEY$N%l%Y%k!#(B + +@item N +$BL$FI5-;v$N?t!#(B + +@item I +$BJ]N15-;v$N?t!#(B + +@item T +$B0uIU$-5-;v$N?t!#(B + +@item R +$B4{FI5-;v$N?t!#(B + +@item U +$B$^$@FI$^$l$?$3$H$,L5$$5-;v$N?t!#(B + +@item t +$B?dDjA45-;v?t(B ($B$3$l$O(B Gnus $B%a!<%j%s%0%j%9%H$K(B +$BO"Mm$7$F2<$5$$!#(B + +@item y +$BL$FI$G$b!"0uIU$-$G$b!"J]N1$G$b$J$$5-;v$N?t!#(B + +@item i +$B0uIU$-5-;v$HJ]N15-;v$N?t!#(B + +@item g +$B%0%k!<%WL>$N%U%k%M!<%`!#(B + +@item G +$B%0%k!<%WL>!#(B + +@item C +$B%0%k!<%W%Q%i%a!<%?$K%3%a%s%H$NMWAG$,L5$$>l9g$N%3%a%s(B +$B%H(B (@pxref{Group Parameters}) $B$^$?$O%0%k!<%WL>!#(B + +@item D +$B%K%e!<%9%0%k!<%W$N@bL@!#$3$l$i$,8=$l$kA0$K!"%0%k!<%W$N@bL@$rFI$`I,MW$,$"(B +$B$j$^$9!#$=$l$K$O(B @code{gnus-read-active-file} $B$r@_Dj$9$k$+!"%0%k!<%W%P%C(B +$B%U%!$G(B @kbd{M-d} $B%3%^%s%I$r;H$C$F2<$5$$!#(B + +@item o +$B;J2ql9g(B @samp{m}$B!#(B + +@item O +$B;J2ql9g(B @samp{(m)}$B!#(B + +@item s +$BA*BrJ}K!!#(B + +@item B +$B$=$N%0%k!<%W$N35N,%P%C%U%!!<$,3+$$$F$$$k$+$I$&$+!#(B + +@item n +$B$I$3$+$i$NA*Br$+!#(B + +@item z +$B30ItA*BrJ}K!$,;H$o$l$F$$$k>l9g!"(B@samp{<%s:%n>} $B$HF1$8J8;zNs!#(B + +@item P +$B%H%T%C%/(B (@pxref{Group Topics}) $B$N%l%Y%k$K1~$8$?;z2<$2!#(B + +@item c +@vindex gnus-group-uncollapsed-levels +$BC;$$(B ($B>JN,$7$?(B) $B%0%k!<%WL>!#(B@code{gnus-group-uncollapsed-levels} $BJQ?t$O!"(B +$B$I$N%l%Y%k$^$G%0%k!<%WL>$rA4It;D$9$+$r<($7$^$9!#=i4|CM$O(B 1 $B$G$9!=!=$3(B +$B$N0UL#$O!"(B@samp{gnu.emacs.gnus} $B$N$h$&$J%0%k!<%WL>(B +$B$r(B @samp{g.e.gnus} $B$KC;=L$9$k$H$$$&$3$H$G$9!#(B + +@item m +@vindex gnus-new-mail-mark +@cindex % +$B$=$N%0%k!<%W$K:G6a?7Ce%a!<%k$,FO$$$F$$$k>l9g(B +$B$O(B @samp{%} (@code{gnus-new-mail-mark})$B!#(B + +@item p +@samp{#} (@code{gnus-process-mark}) $B$G!"$=$N%0%k!<%W$K%W%m%;%9%^!<%/$,IU(B +$B$$$F$$$k$3$H$r<($7$^$9!#(B + +@item d +$B:G8e$K$$$D$3$N%0%k!<%W$rFI$s$@$+$r<($9J8;zNs(B (@pxref{Group Timestamp})$B!#(B + +@item F +$B%-%c%C%7%e$H%(!<%8%'%s%H$NN>J}$K$h$C$F.$K$9$k$?$a$K!"<+F0E*$K%P%$%H(B(B)$B!"%-%m%P%$%H(B(K)$B!"%a(B +$B%,%P%$%H(B(M)$B!"$^$?$O%.%,%P%$%H(B(G) $B$K%9%1!<%k$5$l$^$9!#8GDjI}%+%i%`MQ$K(B +$B$O(B %7F $B$N7A<0$GB-$j$^$9!#(B + +@item u +$BMxMQ$N3F;XDjJ8;z$N>pJs$HF1MM$K!"(B +$B%P%C%U%!$KA^F~$5$l$kJ8;zNs$rJV$5$J$1$l$P$J$j$^$;$s!#(B +@end table + +@cindex * +$BA4$F$N!V!A$N?t!W$N;XDj$G!"$b$7$=$N>pJs$,MxMQ$G$-$J$$>l9g$K$O%"%9%?%j%9(B +$B%/(B (@samp{*}) $B$,Kd$a$i$l$^$9!=!=Nc$($P!"5/F0$5$l$F$$$J$$30It%0%k!<%W$d!"(B +$BIT@5$J4pK\%0%k!<%W$N>l9g$G$9!#(B + +@node Group Mode line Specification +@subsection $B%0%k!<%W%b!<%I9T$N;EMM(B +@cindex group mode line + +@vindex gnus-group-mode-line-format +$B%b!<%I9T(B +$B$O(B @code{gnus-group-mode-line-format} (@pxref{Mode Line Formatting}) $B$r(B +$B@_Dj$9$k$3$H$GJQ99$G$-$^$9!#$3$$$D$O;XDjJ8;z$r$"$s$^$j$?$/$5$sCN$C$F$^$;(B +$B$s!#(B + +@table @samp +@item S +$B4pK\%K%e!<%9%5!<%P!2A$5$l$k(B +$B$b$N$J$i!"$=$N9T$KBP$7$F(B @var{face} $B$,;HMQ$5$l$^$9!#(B + +$B0J2<$,$3$NJQ?t$NCM$NNc$G$9!#$3$l$OGX7J$,0E$$@_Dj$G$O$-$l$$$K8+$($k$+$bCN(B +$B$l$^$;$s!#(B + +@lisp +(cond (window-system + (setq custom-background-mode 'light) + (defface my-group-face-1 + '((t (:foreground "Red" :bold t))) "First group face") + (defface my-group-face-2 + '((t (:foreground "DarkSeaGreen4" :bold t))) "Second group face") + (defface my-group-face-3 + '((t (:foreground "Green4" :bold t))) "Third group face") + (defface my-group-face-4 + '((t (:foreground "SteelBlue" :bold t))) "Fourth group face") + (defface my-group-face-5 + '((t (:foreground "Blue" :bold t))) "Fifth group face"))) + +(setq gnus-group-highlight + '(((> unread 200) . my-group-face-1) + ((and (< level 3) (zerop unread)) . my-group-face-2) + ((< level 3) . my-group-face-3) + ((zerop unread) . my-group-face-4) + (t . my-group-face-5))) +@end lisp + +@ref{Faces and Fonts} $B$b;2>H$7$F$/$@$5$$!#(B + +$B$3$N(B form $B$,I>2A$5$l$k$H$-$KF0E*$KB+G{$5$l$F$$$kJQ?t$K$O0J2<$N$b$N$,$"$j(B +$B$^$9!#(B + +@table @code +@item group +$B%0%k!<%WL>!#(B +@item unread +$B$=$N%0%k!<%W$NL$FI5-;v$N?t!#(B +@item method +$BA*BrJ}K!!#(B +@item mailp +$B$=$N%0%k!<%W$,%a!<%k$N%0%k!<%W$+$I$&$+!#(B +@item level +$B$=$N%0%k!<%W$N%l%Y%k!#(B +@item score +$B$=$N%0%k!<%W$N%9%3%"!#(B +@item ticked +$B$=$N%0%k!<%WCf$N0u$NIU$$$?5-;v$N?t!#(B +@item total +$B$=$N%0%k!<%WCf$NA45-;v?t!#$b$C$H@53N$K8@$&$H!"(B@var{max-number} $B%^%$%J%9(B +@var{min_number} $B%W%i%9(B 1. +@item topic +$B%H%T%C%/%^%$%J!<%b!<%I$r;HMQ$7$F$$$k;~!"$3$NJQ?t$OA^F~$5$l$F$$$k8=:_$N%H(B +$B%T%C%/$KB+G{$5$l$^$9!#(B +@end table + +$B$3$N(B form $B$,I>2A(B (@code{eval}) $B$5$l$k$H$-$O!"%]%$%s%H$OLdBj$N%0%k!<%W$N(B +$B9TF,$K$"$j$^$9!#=>$C$F!"DL>o$N(B Gnus $B$N4X?t$N$[$H$s$I$r;H$C$F$=$N%0%k!<%W(B +$B$N>pJs$r.$5$$%l%Y%k(B) $B$NL$FI%0%k!<%W$K0\F0$7(B +$B$^$9(B (@code{gnus-group-prev-unread-group-same-level})$B!#(B + +@item M-p +@kindex M-p ($B%0%k!<%W(B) +@findex gnus-group-next-unread-group-same-level +$B.$5$$%l%Y%k(B)$B$NL$FI%0%k!<%W$K0\F0$7$^(B +$B$9(B (@code{gnus-group-next-unread-group-same-level})$B!#(B +@end table + +$B.$5$$%l%Y%k$NL$FI%0%k!<%W$K%8%c%s%W$7$^(B +$B$9(B (@code{gnus-group-best-unread-group})$B!#(B + +@item . +@kindex . ($B%0%k!<%W(B) +@findex gnus-group-first-unread-group +$B:G=i$NL$FI5-;v$N$"$k%0%k!<%W$K%8%c%s%W$7$^(B +$B$9(B (@code{gnus-group-first-unread-group})$B!#(B +@end table + +@vindex gnus-group-goto-unread +@code{gnus-group-goto-unread} $B$r(B @code{nil} $B$K$9$k$H!"A4$F$N0\F0%3%^%s%I(B +$B$O!"e5-$N%3%^%s%I$HF1$8F0:n$r$7$^$9$,!"!V%4%?%4%?!W$O:GDc8B$K$7$h$&$H(B +$B$7$^$9(B (@code{gnus-group-quick-select-group})$B!#%9%3%"!&(Bkill $B$N=hM}$O9T$o(B +$B$l$:!"%O%$%i%$%H$b5-;v>C5n$b$7$^$;$s!#$3$l$O!"$"$J$?$,K\Ev$K5^$$$G$$$F!"(B +$B$I$C$+$N$d$?$i$G$C$+$$%0%k!<%W$KF~$i$J$1$l$P$$$1$J$$$H$-$KLr$KN)$D$+$b$7(B +$B$l$^$;$s!#$^$?!"@\F,<-$K(B 0 $B$rM?$($l$P(B ($B$9$J$o$A(B @kbd{0 M-RET})$B!"(BGnus $B$O(B +$B35N,%P%C%U%!$r:n$m$&$H$5$($7$^$;$s!#$3$l$O35N,%P%C%U%!$r:n$kA0$K%9%l%C%I(B +$BI=<($r@Z$jBX$($?$$$H$-Lr$KN)$A$^$9(B (@pxref{Summary Generation Commands})$B!#(B + +@item M-SPACE +@kindex M-SPACE ($B%0%k!<%W(B) +@findex gnus-group-visible-select-group +$B$3$l$O(B @kbd{RET} $B%3%^%s%I$HF1$8F0:n$r$9$k$5$i$K$b$&0l$D$N%3%^%s%I$G$9$,!"(B +$B$3$N%3%^%s%I$O5-;v>C5n$HJ]N15-;v$r1#$9=hM}$r9T$$$^$;(B +$B$s(B (@code{gnus-group-visible-select-group})$B!#(B + +@item C-M-RET +@kindex C-M-RET ($B%0%k!<%W(B) +@findex gnus-group-select-group-ephemerally +$B:G8e$K$3$N%3%^%s%I$O!"8=:_$N%0%k!<%W$r0lEY8B$j!"$=$NFbMF$K0l@Z$N=hM}$r$9(B +$B$k$3$H$N$J$$$h$&$KA*Br$7$^(B +$B$9(B (@code{gnus-group-select-group-ephemerally})$B!#%9%l%C%II=<($5$($b9T$o(B +$B$l$^$;$s!#$3$NJ}K!$GA*Br$7$?8e$K$3$N%0%k!<%W$KBP$7$F9T$C$?$3$H$OA4$F!"$=(B +$B$N8e$K1F6A$rM?$($k$3$H$O$"$j$^$;$s!#(B +@end table + +@vindex gnus-large-newsgroup +@code{gnus-large-newsgroup} $BJQ?t$O!"2?$rBg$-$J%0%k!<%W$H9M$($k$Y$-$+(B +$B$r(B Gnus $B$KM?$($^$9!#(B@code{nil} $B$@$C$?$i!"$I$N%0%k!<%W$bBg$-$$$H9M$($^$;(B +$B$s!#%G%#%U%)%k%HCM$O(B 200 $B$G$9!#%0%k!<%W$K(B ($BL$FI$H0uIU$-$N(B) $B5-;v$,$3$N?t(B +$B0J>e$"$l$P!"(BGnus $B$O$=$N%0%k!<%W$KF~$kA0$KMxMQl9g!"$=$N4X?t$OI=Bj$N9T$K%]%$%s(B +$B%H$r0\F0$5$;$k$?$a$K8F$P$l$^$9!#(B + +$B$b$7$"$k%0%k!<%W$G<+F05-;vA*Br$r$d$a$?$$$N$G$"$l$P(B ($BNc$($P$G$C$+$$5-;v$N(B +$B$"$k%P%$%J%j%0%k!<%W$G$O!"$H$+(B)$B!"%0%k!<%W$,A*Br$5$l$?$H$-$K8F$S=P$5$l(B +$B$k(B @code{gnus-select-group-hook} $B$NCf$GJQ(B +$B?t(B @code{gnus-auto-select-first} $B$r(B @code{nil} $B$K@_Dj$9$k$3$H$,$G$-$^$9!#(B + +@node Subscription Commands +@section $B9XFI@)8f%3%^%s%I(B +@cindex subscription + +@table @kbd +@item S t +@itemx u +@kindex S t ($B%0%k!<%W(B) +@kindex u ($B%0%k!<%W(B) +@findex gnus-group-unsubscribe-current-group +@c @icon{gnus-group-unsubscribe} +$B8=:_$N%0%k!<%W$N9XFI$r@Z$jBX$($^(B +$B$9(B (@code{gnus-group-unsubscribe-current-group})$B!#(B + +@item S s +@itemx U +@kindex S s ($B%0%k!<%W(B) +@kindex U ($B%0%k!<%W(B) +@findex gnus-group-unsubscribe-group +$B%0%k!<%W$r9XFI$9$k$+$I$&$+$r3NG'$7!"9XFI$7$^$9!#$9$G$K9XFI$9$k$h$&$K$J$C(B +$B$F$$$k>l9g$K$O!"9XFI$r;_$a$^$9(B (@code{gnus-group-unsubscribe-group})$B!#(B + +@item S k +@itemx C-k +@kindex S k ($B%0%k!<%W(B) +@kindex C-k ($B%0%k!<%W(B) +@findex gnus-group-kill-group +@c @icon{gnus-group-kill-group} +$B8=:_$N%0%k!<%W$r(B kill $B$7$^$9(B (@code{gnus-group-kill-group})$B!#(B + +@item S y +@itemx C-y +@kindex S y ($B%0%k!<%W(B) +@kindex C-y ($B%0%k!<%W(B) +@findex gnus-group-yank-group +$B:G8e$K(B kill $B$7$?%0%k!<%W$r(B yank $B$7$^$9(B (@code{gnus-group-yank-group})$B!#(B + +@item C-x C-t +@kindex C-x C-t ($B%0%k!<%W(B) +@findex gnus-group-transpose-groups +$BFs$D$N%0%k!<%W$N=g=x$rCV$-49$($^$9(B (@code{gnus-group-transpose-groups})$B!#(B +$B$3$l$O%[%s%H$O9XFI%3%^%s%I$G$O$"$j$^$;$s$,!"(Bkill $B$H(B yank $B$r2?EY$+B3$1$k(B +$BBe$o$j$K$3$N%3%^%s%I$,;H$($^$9!#(B + +@item S w +@itemx C-w +@kindex S w ($B%0%k!<%W(B) +@kindex C-w ($B%0%k!<%W(B) +@findex gnus-group-kill-region +$B%j!<%8%g%sFb$NA4$F$N%0%k!<%W$r(B kill $B$7$^(B +$B$9(B (@code{gnus-group-kill-region})$B!#(B + +@item S z +@kindex S z ($B%0%k!<%W(B) +@findex gnus-group-kill-all-zombies +$BA4$F$N%>%s%S%0%k!<%W$r(B kill $B$7$^$9(B (@code{gnus-group-kill-all-zombies})$B!#(B + +@item S C-k +@kindex S C-k ($B%0%k!<%W(B) +@findex gnus-group-kill-level +$B$"$k%l%Y%k$N%0%k!<%W$rA4$F(B kill $B$7$^$9(B (@code{gnus-group-kill-level})$B!#(B +kill $B$7$?8e!"$3$l$i$N%0%k!<%W$r(B yank $B$GLa$9$3$H$O$G$-$J$$$N$G!"$3$N%3%^(B +$B%s%I$O$$$/$i$+Cm0U$7$F;H$C$F$/$@$5$$!#$3$N%3%^%s%I$,K\Ev$KJXMx$K$J$k$N$O!"(B +@file{.newsrc} $B$KH$7$F$/$/$@$5$$!#(B + +@node Group Data +@section $B%0%k!<%W%G!<%?(B + +@table @kbd +@item c +@kindex c ($B%0%k!<%W(B) +@findex gnus-group-catchup-current +@vindex gnus-group-catchup-group-hook +@c @icon{gnus-group-catchup-current} +$B$=$N%0%k!<%WFb$NA4$F$NL50u$N5-;v$r4{FI$K$9(B +$B$k(B (@code{gnus-group-catchup-current})$B!#%0%k!<%W%P%C%U%!$+$i4{FI$K$7$?>l(B +$B9g$O(B @code{gnus-group-catchup-group-hook} $B$,8F$S=P$5$l$^$9!#(B + +@item C +@kindex C ($B%0%k!<%W(B) +@findex gnus-group-catchup-current-all +$B$=$N%0%k!<%W$NA45-;v$r!"0uIU$-$N5-;v$b4^$a$F4{FI$K$7$^(B +$B$9(B (@code{gnus-group-catchup-current-all})$B!#(B + +@item M-c +@kindex M-c ($B%0%k!<%W(B) +@findex gnus-group-clear-data +$B8=:_$N%0%k!<%W$NA4$F$N%G!<%?$r%/%j%"$7$^$9!=!=%^!<%/$H4{FI5-;v$N%j%9%H$r(B +$B>C$75n$j$^$9(B (@code{gnus-group-clear-data})$B!#(B + +@item M-x gnus-group-clear-data-on-native-groups +@kindex M-x gnus-group-clear-data-on-native-groups +@findex gnus-group-clear-data-on-native-groups +$B$b$7(B @acronym{NNTP} $B%5!<%P$rJL$N$b$N$K@Z$jBX$($?$H$9$k$H!"A4$F$N%^!<%/$H(B +$B4{FI>pJs$O$b$&Lr$K$ON)$A$^$;$s!#$3$N%3%^%s%I$r;H$C$F4pK\%0%k!<%W$NA4$F$N(B +$B%G!<%?$r%/%j%"$9$k$3$H$,$G$-$^$9!#Cm0U$7$F;H$C$F$M!#(B +@end table + +@node Group Levels +@section $B%0%k!<%W%l%Y%k(B +@cindex group level +@cindex level + +$BA4$F$N%0%k!<%W$O(B @dfn{$B9XFIEY(B} (@dfn{subscribedness}) $B$N%l%Y%k$r;}$A$^$9!#(B +$BNc$($P!"$"$k%0%k!<%W$,%l%Y%k(B 2 $B$@$H$9$l$P!"$=$l$O%l%Y%k(B 5 $B$N%0%k!<%W$h$j(B +$B$b!V$h$j9XFI$7$F$$$k!W$H$$$&$3$H$G$9!#(BGnus $B$KBP$7$F!"$"$k%l%Y%k$+$=$l$h(B +$B$j>.$5$$%l%Y%k$N%0%k!<%W$N$_0lMwI=<($9$k$h$&$KMj$`$3$H$b$G$-$k(B +$B$7(B (@pxref{Listing Groups})$B!"$"$k%l%Y%k$+$=$l$h$j>.$5$$%l%Y%k$N%0%k!<%W(B +$B$N?7Ce5-;v$N$_$r3NG'$9$k$3$H$b$G$-$^$9(B(@pxref{Scanning New Messages})$B!#(B + +$BK:$l$J$$$G(B: $B%0%k!<%W$N%l%Y%k$,Bg$-$$$[$I!"=EMWEY$ODc$/$J$k$H$$$&$3$H!#(B + +@table @kbd +@item S l +@kindex S l ($B%0%k!<%W(B) +@findex gnus-group-set-current-level +$B8=:_$N%0%k!<%W$N%l%Y%k$r@_Dj$9$k!#?t;z%W%l%U%#%C%/%9$,M?$($i$l$k$H!"$=$3(B +$B$+$i(B @var{n} $B8D$N%0%k!<%W$N%l%Y%k$,@_Dj$5$l$^$9!#%l%Y%k$rF~NO$9$k$?$a$N(B +$B%W%m%s%W%H$,=P$^$9!#(B +@end table + +@vindex gnus-level-killed +@vindex gnus-level-zombie +@vindex gnus-level-unsubscribed +@vindex gnus-level-subscribed +Gnus $B$O%l%Y%k(B 1 $B$+$i(B @code{gnus-level-subscribed} ($B$3$NCM$r4^$`(B) ($B=i4|CM(B +$B$O(B 5) $B$^$G$N%0%k!<%W$r9XFI!"(B@code{gnus-level-subscribed} ($B$3$NCM$r4^$^$J(B +$B$$(B) $B$+$i(B@code{gnus-level-unsubscribed} ($B$3$NCM$r4^$`(B) ($B=i4|CM$O(B 7) $B$^$G(B +$B$N%0%k!<%W$rHs9XFI!"(B@code{gnus-level-zombie} $B$r%>%s%S(B ($BJb$/;S(B) ($B=i4|CM(B +$B$O(B 8)$B!"(B@code{gnus-level-killed} $B$r(B kill $B$5$l$F$$$k(B ($B40A4$K;`$s$G(B +$B$k(B) ($B=i4|CM$O(B 9) $B$HH=CG$7$^$9!#(BGnus $B$O9XFI$HHs9XFI$N%0%k!<%W$OA4$/F1MM$K(B +$B07$$$^$9$,!"%>%s%S$H(B kill $B%0%k!<%W$O!"$I$N5-;v$rFI$s$@$+!"B8:_$9$k$+$J$I(B +$B$N>pJs$r0l@Z;}$A$^$;$s!#$3$N;`$s$G$k%0%k!<%W$H@8$-$F$k%0%k!<%W$N6hJL$O!"(B +$BJL$K$=$l$,$-$l$$$@$+$i$H$+8-$$$+$i$H$$$&$o$1$G$O$J$/!"=c?h$K8zN(E*$JM}M3(B +$B$N$?$a$G$9!#(B + +$B%a!<%kMQ$N%0%k!<%W$O(B ($B$b$7$"$l$P(B) $BHs>o$K>.$5$$%l%Y%k(B ($BNc$($P(B 1 $B$+(B 2) $B$K(B +$B$7$F$*$/$3$H$r$*4+$a$7$^$9!#(B + +$B%s%S$H(B kill $B%0%k!<%W$O!"%G%#%U%)%k%H$G$O1#$5$l$F$$$kE@$GHs9VFI$N%0%k!<(B +$B%W$K;w$F$$$^$9!#$7$+$7!"(BGnus $B$,%K%e!<%9%5!<%P!<$KBP$7$F%>%s%S$H(B kill $B%0(B +$B%k!<%W$K4X$9$k>pJs(B ($B5-;v?t!"L$FI5-;v?t(B) $B$NLd$$9g$o$;$r$7$J$$E@$G!"9XFI$*(B +$B$h$SHs9XFI$N%0%k!<%W$H$O0c$C$F$$$^$9!#$U$D$&!"$"$J$?$O6=L#$NL5$$%0%k!<%W(B +$B$r(B @kbd{C-k} $B$G(B kill $B$7$^$9$h$M!#$b$7!"$[$H$s$I$N%0%k!<%W$,(B kill $B$5$l$F(B +$B$$$k$H!"(BGnus $B$OB.$/$J$j$^$9!#(B + +$B$J$<(B Gnus $B$O%>%s%S$H(B kill $B%0%k!<%W$r6hJL$9$k$N$G$7$g$&(B? $B$($($H!"%5!<%P!<(B +$B$K?7$7$$%0%k!<%W$,$G$-$k$H!"(BGnus $B$O%G%#%U%)%k%H$G$=$l$r%>%s%S$K$7$^$9!#(B +$B$3$l$O!"$"$J$?$,$U$D$&$O?7$7$$%0%k!<%W$KHQ$o$5$l$J$$$3$H$r0UL#$7$^$9$,!"(B +$B$"$J$?$O(B @kbd{A z} $B$G?7$7$$%0%k!<%W$N%j%9%H$rF@$k$3$H$,$G$-$^$9!#$"$J$?(B +$B$O9%$_$N$b$N$r9VFI$7!"MW$i$J$$$b$N$O(B kill $B$9$l$PNI$$$N$G$9!#(B +(@kbd{A k} $B$G(B kill $B$5$l$?%0%k!<%W$N%j%9%H$rI=<($7$^$9!#(B) + +$B$b$7%l%Y%kJQ?t$GM7$S$?$$$N$G$"$l$P!"B?>/Cm0U$r$7$F$^$o$kI,MW$,$"$j$^$9!#(B +$B0lC6$=$l$r@_Dj$7$?$i!"FsEY$H$=$l$K?($i$J$$$G$/$@$5$$!#$5$i$K8@$($P!"<+J,(B +$B$G2?$r$d$C$F$$$k$+$r@53N$KM}2r$7$F$$$J$$8B$j!"0l@Z?($i$J$$$G$/$@$5$$!#(B + +@vindex gnus-level-default-unsubscribed +@vindex gnus-level-default-subscribed +$B?H6a$K4X78$9$kFs$D$NJQ?t$O(B @code{gnus-level-default-subscribed} ($B=i4|CM(B +$B$O(B 3) $B$H(B @code{gnus-level-default-unsubscribed} ($B=i4|CM$O(B 6) $B$G$9!#$3$l(B +$B$i$O?7$7$$%0%k!<%W$,(B ($BHs(B) $B9XFI$5$l$?$H$-$N%l%Y%k$G$9!#$b$A$m$s!"$3$l(B +$B$iFs$D$NJQ?t$NCM$O!"0UL#$N$"$k@5$7$$HO0O$G$J$/$F$O$J$j$^$;$s!#(B + +@vindex gnus-keep-same-level +@code{gnus-keep-same-level} $B$,(B @code{nil} $B0J30$G$"$l$P!"0\F0%3%^%s%I$N$$(B +$B$/$D$+$OF10l(B ($B$"$k$$$O$=$l$h$j>.$5$$(B) $B%l%Y%k$N%0%k!<%W$N$_$N0\F0$K$J$j$^(B +$B$9!#FC$K!"$"$k%0%k!<%W$N:G8e$N5-;v$+$i.$5$$(B) $B%l%Y%k$N%0%k!<%W$K0\F0$7$^$9!#$3$l$O;D$j$N%0(B +$B%k!<%W$rFI$`$h$j@h$K!"$h$j=EMW$J%0%k!<%W$rFI$s$G$*$-$?$$$H$-$K$OJXMx$+$b(B +$B$7$l$^$;$s!#(B + +$B$b$7$3$NCM$,(B @code{best} $B$@$C$?$i!":G$b=EMW$J(B ($B:G$b%l%Y%k$NCM$,>.$5(B +$B$$(B) $B%0%k!<%W$K0\F0$7$^$9!#(B + +@vindex gnus-group-default-list-level +$B=i4|@_Dj$G$O(B @code{gnus-group-default-list-level} $B$HF1$8$+$=$l$h$j>.$5$$(B +$B%l%Y%k$N%0%k!<%W$,!"%0%k!<%W%P%C%U%!$K0lMwI=<($5$l$^$9!#(B + +@vindex gnus-group-list-inactive-groups +@code{gnus-group-list-inactive-groups} $B$,(B @code{nil} $B0J30$G$"$l$P!"L$FI(B +$B$N%0%k!<%W$K0l=o$K%"%/%F%#%V$G$J$$%0%k!<%W$bI=<($7$^$9!#$3$NJQ?t$O=i4|@_(B +$BDj$G$O(B @code{t} $B$G$9!#$b$7$3$l$,(B @code{nil} $B$G$"$l$P!"%"%/%F%#%V$G$J$$%0(B +$B%k!<%W$OI=<($5$l$^$;$s!#(B + +@vindex gnus-group-use-permanent-levels +@code{gnus-group-use-permanent-levels} $B$,(B @code{nil} $B0J30$G$"$l$P!"0lC6(B +$B%l%Y%k$r(B @kbd{g} $B$d(B @kbd{l} $B$N%W%l%U%#%C%/%9$KM?$($k$H!"$=$N8e$NA4$F$N%3(B +$B%^%s%I$K$*$$$F$=$N%l%Y%k$,!V:nMQ$9$k!W%l%Y%k$K$J$j$^$9!#(B + +@vindex gnus-activate-level +Gnus $B$ODL>o!"(B@code{gnus-activate-level} $B$+$=$l$h$j>.$5$$%l%Y%k$N%0%k!<%W(B +$B$N$_$r5/F0$7$^$9(B ($B$D$^$j%5!<%P$KLd$$9g$o$;$r$9$k(B)$B!#9XFI$7$F$$$J$$%0%k!<(B +$B%W$r5/F0$7$?$/$J$1$l$P!"$3$NJQ?t$rNc$($P(B 5 $B$K@_Dj$9$k$H$h$$$+$b$7$l$^$;(B +$B$s!#%G%#%U%)%k%H$O(B 6 $B$G$9!#(B + +@node Group Score +@section $B%0%k!<%W$N%9%3%"(B +@cindex group score +@cindex group rank +@cindex rank + +$BIaDL$O=EMW$J%0%k!<%W$O9b%l%Y%k$K$7$F$*$/$G$7$g$&$1$l$I$b!"$3$NJ}K!$G$O>/!9(B +$B@)8B$,$-$D$$$G$9$h$M!#$R$g$C$H$7$?$i!"%0%k!<%W$r$I$l$/$i$$IQHK$KFI$`$+$K(B +$B$h$C$F%0%k!<%W%P%C%U%!$r%=!<%H$7$?$$$J$"!"$J$s$F;W$o$J$$(B? $BM}$K$+$J$C$F$k(B +$B$G$7$g(B? + +@dfn{$B%0%k!<%W%9%3%"(B} (@dfn{group score}) $B$O$=$N$?$a$N$b$N$G$9!#(BGnus $B$K0J(B +$B2<$G@bL@$5$l$F$$$k5!9=$G!"$=$l$>$l$N%0%k!<%W$KBP$7$F%9%3%"$r;XDj$5$;$k$3(B +$B$H$,$G$-$^$9!#$=$7$F%0%k!<%W%P%C%U%!$r$3$N%9%3%"$r4p$K%=!<%H$9$k$3$H$,$G(B +$B$-$^$9!#$"$k$$$O!"%9%3%"=g$G%=!<%H$7$F$=$N8e%l%Y%k$G%=!<%H$9$k$3$H$b$G$-(B +$B$^$9!#(B($B%l%Y%k$H%9%3%"$r$R$H$^$H$a$K$7$F!"%0%k!<%W(B +$B$N(B @dfn{$B%i%s%/(B} (@dfn{rank}) $B$H8F$S$^$9!#%l%Y%k$,(B 4 $B$G%9%3%"$,(B 1 $B$N%0%k!<(B +$B%W$O!"%l%Y%k$,(B 5 $B$G%9%3%"$,(B 300 $B$N%0%k!<%W$h$j$b9b$$%i%s%/$H$J$j$^$9!#(B +($B%l%Y%k$NJ}$,=EMWEY$,9b$/!"%9%3%"$NJ}$O=EMWEY$,Dc$/$J$j$^$9!#(B)) + +@findex gnus-summary-bubble-group +$BIQHK$KFI$`%0%k!<%W$K!"$a$C$?$KFI$^$J$$%0%k!<%W$h$j$b9b$$%9%3%"$rM?$($?$$(B +$B$H$-$O!"(B@code{gnus-summary-exit-hook} $B%U%C%/(B +$B$K(B @code{gnus-summary-bubble-group} $B4X?t$rDI2C$9$k$3$H$,$G$-$^$9!#$3$l$G(B +$B%P%V%k%=!<%H$Nl9g$G!"$=$l$i$,%0(B +$B%k!<%W%P%C%U%!$KO"B3$7$F$"$k>l9g$K$O!"DL>oDL$jL?Na$KBP$7$F?t;z@\F,<-$rM?(B +$B$($k$@$1$G$9!#$=$&$9$l$P$[$H$s$I$N%0%k!<%WL?Na$O!"$3$l$i$N%0%k!<%W$KBP$7(B +$B$F$"$J$?$NL?Na$K=>$$$^$9!#(B + +$B$7$+$7$=$l$i$N%0%k!<%W$,=gHV$KJB$s$G$$$J$$>l9g$K$*$$$F$b!"$$$/$D$+$N%0%k!<(B +$B%W$KBP$7$FL?Na$rH$7$F$/$@$5$$!#(B + +@findex gnus-group-universal-argument +$B%W%m%;%90u$,IU$1$i$l$F$$$kA4$F$N%0%k!<%W$KBP$7$F2?$+$NL?Na$rR2p$7$^$9!#$3$l(B +$B$i$NL?Na$OA4$F!"?75,$K:n@.$7$?%0%k!<%W$r%]%$%s%H0LCV$KA^F~$7$^(B +$B$9!=!=(B@code{gnus-subscribe-newsgroup-method} $B$O;2>H$5$l$^$;$s!#(B + +@table @kbd +@item G m +@kindex G m ($B%0%k!<%W(B) +@findex gnus-group-make-group +@cindex making groups +$B?7$7$$%0%k!<%W$r:n@.$7$^$9(B (@code{gnus-group-make-group})$B!#(BGnus $B$O%W%m%s(B +$B%W%H$rI=<($7$F!"L>A0$HJ}K!$H!">l9g$K$h$C$F$O(B @dfn{address} $B$NF~NO$r5a$a(B +$B$F$-$^$9!#$h$j4JC1$K(B @acronym{NNTP} $B%0%k!<%W$r9XFI$9$kJ}K!$K$D$$$F$O!"(B +@ref{Browse Foreign Server} $B$r;2>H$7$F2<$5$$!#(B + +@item G M +@kindex G M ($B%0%k!<%W(B) +@findex gnus-group-read-ephemeral-group +$B0l;~%K%e!<%9%0%k!<%W$r:n@.$7$^(B +$B$9(B (@code{gnus-group-read-ephemeral-group})$B!#(B Gnus $B$O%W%m%s%W%H$rI=<($7(B +$B$F!"L>A0!"J}K!$*$h$S(B @dfn{address} $B$NF~NO$r5a$a$^$9!#(B + +@item G r +@kindex G r ($B%0%k!<%W(B) +@findex gnus-group-rename-group +@cindex renaming groups +$B8=:_$N%0%k!<%W$NL>A0$r!"2?$+JL$N$b$N$KJQ99$7$^(B +$B$9(B (@code{gnus-group-rename-group})$B!#$3$l$O$"$ko(B +$B$KCY$$$3$H$bM-$jF@$^$9!#(B + +@item G c +@kindex G c ($B%0%k!<%W(B) +@cindex customizing +@findex gnus-group-customize +$B%0%k!<%W%Q%i%a!<%?$r%+%9%?%^%$%:$9$k(B (@code{gnus-group-customize})$B!#(B + +@item G e +@kindex G e ($B%0%k!<%W(B) +@findex gnus-group-edit-group-method +@cindex renaming groups +$B8=:_$N%0%k!<%W$NA*BrJ}K!$r=$@5$9$k$?$a$N%P%C%U%!$K0\F0$7$^(B +$B$9(B (@code{gnus-group-edit-group-method})$B!#(B + +@item G p +@kindex G p ($B%0%k!<%W(B) +@findex gnus-group-edit-group-parameters +$B%0%k!<%W%Q%i%a!<%?$r=$@5$9$k$?$a$N%P%C%U%!$K0\F0$7$^(B +$B$9(B (@code{gnus-group-edit-group-parameters})$B!#(B + +@item G E +@kindex G E ($B%0%k!<%W(B) +@findex gnus-group-edit-group +$B%0%k!<%W>pJs$r=$@5$9$k$?$a$N%P%C%U%!$K0\F0$7$^(B +$B$9(B (@code{gnus-group-edit-group})$B!#(B + +@item G d +@kindex G d ($B%0%k!<%W(B) +@findex gnus-group-make-directory-group +@cindex nndir +$B%G%#%l%/%H%j%0%k!<%W$r:n@.$7$^$9(B (@pxref{Directory Groups})$B!#%G%#%l%/%H(B +$B%jL>$r%W%m%s%W%H$GF~NO$7$^$9(B (@code{gnus-group-make-directory-group})$B!#(B + +@item G h +@kindex G h ($B%0%k!<%W(B) +@cindex help group +@findex gnus-group-make-help-group + +Gnus $B%X%k%W%0%k!<%W$r:n@.$7$^$9(B (@code{gnus-group-make-help-group})$B!#(B + +@item G a +@kindex G a ($B%0%k!<%W(B) +@cindex (ding) archive +@cindex archive group +@findex gnus-group-make-archive-group +@vindex gnus-group-archive-directory +@vindex gnus-group-recent-archive-directory +Gnus $B%"!<%+%$%V%0%k!<%W$r:n@.$7$^(B +$B$9(B (@code{gnus-group-make-archive-group})$B!#=i4|@_Dj$G$O:G$b:G6a$N5-;v$r(B +$B;X$7$F$$$k%0%k!<%W$,:n@.$5$l$^$9(B +$B$,(B (@code{gnus-group-recent-archive-directory})$B!"@\F,0z?t$rM?$($k$HA4$F(B +$B$N5-;v$r4^$`%0%k!<%W$,(B @code{gnus-group-archive-directory} $B$r4p$K:n@.$5(B +$B$l$^$9!#(B + +@item G k +@kindex G k ($B%0%k!<%W(B) +@findex gnus-group-make-kiboze-group +@cindex nnkiboze +kiboze $B%0%k!<%W$r:n@.$7$^$9!#%W%m%s%W%H$GL>A0$H!"(Bkiboze $B%0%k!<%W$K!V4^$a(B +$B$?$$!W%0%k!<%W$K9g$&@55,I=8=$H!"%X%C%@!<$K9g$&J8;zNs$NAH$rF~NO$7$^(B +$B$9(B (@code{gnus-group-make-kiboze-group})$B!#(B@xref{Kibozed Groups}. + +@item G D +@kindex G D ($B%0%k!<%W(B) +@findex gnus-group-enter-directory +@cindex nneething +$BG$0U$N%G%#%l%/%H%j$r(B @code{nneething} $B%P%C%/%(%s%I%K%e!<%9%0%k!<%W$G$"$k(B +$B$+$N$h$&$KFI$_9~$_$^$9(B (@code{gnus-group-enter-directory})$B!#(B +@xref{Anything Groups}. + +@item G f +@kindex G f ($B%0%k!<%W(B) +@findex gnus-group-make-doc-group +@cindex ClariNet Briefs +@cindex nndoc +$B%U%!%$%k$J$I$r$b$H$K%0%k!<%W$r:n@.$7$^(B +$B$9(B (@code{gnus-group-make-doc-group})$B!#$3$N%3%^%s%I$K@\F,<-$rM?$($?>l9g!"(B +$B%U%!%$%kL>$H%U%!%$%k%?%$%W$r%W%m%s%W%H$GF~NO$7$^$9!#8=:_%5%]!<%H$5$l$F$$(B +$B$k%U%!%$%k%?%$%W$O(B @code{mbox}, @code{babyl}, @code{digest}, @code{news}, +@code{rnews}, @code{mmdf}, @code{forward}, @code{rfc934}, +@code{rfc822-forward}, @code{mime-parts}, @code{standard-digest}, +@code{slack-digest}, @code{clari-briefs}, @code{nsmail}, @code{outlook}, +@code{oe-dbx} $B$*$h$S(B @code{mailman} $B$G$9!#@\F,<-$J$7$G$3$N%3%^%s%I$rl9g$K$O!"(B +@samp{shaving group:alt.sysadmin.recovery} $B$N$h$&$J9gCW$9$kJ8;zNs$rMQ$$(B +$B$k$3$H$K$h$C$F!"8!:wBP>]$rFCDj$N%0%k!<%W$K8BDj$9$k$3$H$,2DG=$G$9!#(B + +@item G R +@kindex G R ($B%0%k!<%W(B) +@findex gnus-group-make-rss-group +@acronym{RSS} feed $B$K4p$E$/%0%k!<%W$r:n$j$^(B +$B$9(B (@code{gnus-group-make-rss-group})$B!#(BURL $B$NF~NO$rB%$5$l$^$9!#(B +@xref{RSS}. + +@item G DEL +@kindex G DEL ($B%0%k!<%W(B) +@findex gnus-group-delete-group +$B$3$N4X?t$O8=:_$N%0%k!<%W$r:o=|$7$^$9(B (@code{gnus-group-delete-group})$B!#(B +$B@\F,<-$,M?$($i$l$k$H!"$3$N4X?t$O$=$N%0%k!<%WFb$NA45-;v$rK\Ev$K:o=|$7!"%0(B +$B%k!<%W<+?H$r$3$N@$$+$i6/@)E*$KKu;&$7$F$7$^$$$^$9!#@\F,<-$O!"$"$J$?$,2?$r(B +$B$d$m$&$H$7$F$$$k$+!"K\Ev$K<+?.$,$"$k$H$-$K$N$_;H$C$F$/$@$5$$!#$^$"!"$3$N(B +$B%3%^%s%I$O(B (@code{nntp} $B%0%k!<%W$N$h$&$J(B) $BFI$_=P$7@lMQ%0%k!<%W$K$O;H$($^(B +$B$;$s$1$I!#(B + +@item G V +@kindex G V ($B%0%k!<%W(B) +@findex gnus-group-make-empty-virtual +$B?7$7$$!"?7A/$J!"6u$N(B @code{nnvirtual} $B%0%k!<%W$r:n@.$7$^(B +$B$9(B (@code{gnus-group-make-empty-virtual})$B!#(B@xref{Virtual Groups}. + +@item G v +@kindex G v ($B%0%k!<%W(B) +@findex gnus-group-add-to-virtual +$B8=:_$N%0%k!<%W$r(B @code{nnvirtual} $B%0%k!<%W$KDI2C$7$^(B +$B$9(B (@code{gnus-group-add-to-virtual})$B!#$3$l$O%W%m%;%90u(B/$B@\F,0z?t$N=,47$K(B +$B=>$$$^$9!#(B +@end table + +$B$5$^$6$^$JA*BrJ}K!$K4X$9$k$5$i$J$k>pJs$O(B @ref{Select Methods} $B$r;2>H$7$F(B +$B2<$5$$!#(B + +@vindex gnus-activate-foreign-newsgroups +$B$b$7(B @code{gnus-activate-foreign-newsgroups} $B$,@5$N?t$G$"$l$P!"(BGnus $B$O5/(B +$BF0;~$K!"$3$N?t$+$=$l$h$j$b>.$5$$%l%Y%k$N30It%0%k!<%W$rA4$F%A%'%C%/$7$^$9!#(B +$B$3$l$OFC$K0c$C$?(B @acronym{NNTP} $B%5!<%P$+$i$?$/$5$s$N%0%k!<%W$r9XFI$7$F$$(B +$B$k>l9g$J$I!"$7$P$i$/;~4V$,$+$+$k$+$b$7$l$^$;$s!#(B@ref{Group Levels} $B$b;2(B +$B>H$7$F2<$5$$!#(B@code{gnus-activate-level} $B$b30It%K%e!<%9%0%k!<%W$N3h@-2=(B +$B$K1F6A$r5Z$\$7$^$9!#(B + +@node Group Parameters +@section $B%0%k!<%W%Q%i%a!<%?(B +@cindex group parameters + +$B%0%k!<%W%Q%i%a!<%?$O!"$"$kFCDj$N%0%k!<%W$K8GM-$J>pJs$r3JG<$7$^$9!#0J2<$O(B +$B%0%k!<%W%Q%i%a!<%?%j%9%H$NNc$G$9(B: + +@example +((to-address . "ding@@gnus.org") + (auto-expire . t)) +@end example + +$B$=$l$>$l$NMWAG$O!XE@BP!Y(B(dotted pair)$B!=!=$D$^$jE@(B (dot) $B$NA0$K80!"E@$N8e(B +$B$m$KCM$,$"$k$b$N!"$G9=@.$5$l$^$9!#A4$F$N%Q%i%a!<%?$O$3$N7A<0$ro$N%j%9%H$K$J$j$^$9!#(B + +$B$$$/$D$+$N%Q%i%a!<%?$OBP1~$9$k%+%9%?%^%$%:2DG=$JJQ?t$r;}$C$F$$$^$9!#$=$l(B +$B$i$O@55,I=8=$HCM$NO"A[%j%9%H$G$9!#(B + +$B0J2<$OMxMQ2DG=$J%0%k!<%W%Q%i%a!<%?$G$9(B: + +@table @code +@item to-address +@cindex to-address +$B%U%)%m!<%"%C%W$H%K%e!<%9$X$NEj9F$r$9$k$H$-$K;HMQ$5$l$k%"%I%l%9!#(B + +@example +(to-address . "some@@where.com") +@end example + +$B$3$l$OZ$5$l$k$N$G!";22Ce$K$"$C$?$H$7$^$7$g$&!#$3$l$OK\Ev$N%K%e!<%9%0%k!<%W$G$9$,!"%5!<%P$O%a!<(B +$B%k%K%e!<%9%2!<%H%&%'%$$rDL$7$F5-;v$r@\Ej9F$9$k$3$H$OIT2DG=$G!"Be$o$j$K$=$N%a!<%j%s%0%j%9%H$K%a!<%k$rAw(B +$B?.$7$J$1$l$P$J$j$^$;$s!#(B + +@code{gnus-parameter-to-address-alist} $B$b;2>H$7$F2<$5$$!#(B + +@item to-list +@cindex to-list +$B$=$N%0%k!<%W$G(B @kbd{a} $B$r2!$7$?$H$-$K;HMQ$5$l$k%"%I%l%9!#(B + +@example +(to-list . "some@@where.com") +@end example + +$B$3$l$O%U%)%m!<%"%C%W$r$7$?$H$-$O40A4$KL5;k$5$l$^$9!=!=Nc30$O$=$l$,%K%e!<(B +$B%9%0%k!<%W$rI=$o$7$F$$$k$H$-$O!"(B@kbd{f} $B$r2!$7$?$H$-$K%a!<%k%0%k!<%W$N%k!<(B +$B%k$,E,MQ$5$l$k$H$$$&$3$H$G$9!#(B + +$B$b$7(B @kbd{a} $B%3%^%s%I$r%a!<%k%0%k!<%W$GH$7$F2<$5$$!#(B + +@anchor{subscribed} +@item subscribed +@cindex subscribed +@cindex Mail-Followup-To +@findex gnus-find-subscribed-addresses +$B$b$7$3$N%Q%i%a!<%?$,(B @code{t} $B$K@_Dj$5$l$F$$$k$H!"(BGnus $B$O$"$J$?$,$3$N%0(B +$B%k!<%W$r(B to-address $B$H(B to-list $B%Q%i%a!<%?$N%"%I%l%9$G9XFI$7$F$$$k%a!<%j(B +$B%s%0%j%9%H$G$"$k$H2rpJs$r(B Gnus $B$KM?$($k$3$H$O!"$"$J$?$,$=(B +$B$l$i$N%a!<%j%s%0%j%9%H$KEj9F$9$k$H$-$K@5$7$$(B Mail-Followup-To $B%X%C%@!<$r(B +$B@8@.$9$k$?$a$N(B ($B$[$s$N(B) $BBh0lJb$G$9!#FsJbL\$O(B @file{.gnus.el} $B$K0J2<$rF~(B +$B$l$k$3$H$G$9!#(B + +@lisp +(setq message-subscribed-address-functions + '(gnus-find-subscribed-addresses)) +@end lisp + +$BMxMQ$G$-$k(B MFT $BBP1~5!G=$r40A4$K07$&$K$O!"$3$3(B (@pxref{Mailing Lists, , +Mailing Lists, message-ja, The Message Manual}) $B$r8+$F2<$5$$!#(B + +@item visible +@cindex visible +$B%0%k!<%W%Q%i%a!<%?$N%j%9%HCf$K(B @code{(visible . t)} $B$H$$$&MWAG$,$"$l$P!"(B +$B$=$N%0%k!<%W$O%0%k!<%W%P%C%U%!$K$*$$$F!"L$FI5-;v$,$"$k$+$I$&$+$K4X$o$i$:!"(B +$B>o$KI=<($5$l$^$9!#(B + +@item broken-reply-to +@cindex broken-reply-to +@code{(broken-reply-to . t)} $B$H$$$&MWAG$,$"$l$P!"$=$N%0%k!<%W$G(B +$B$O(B @code{Reply-To} $B$OL5;k$5$l!"(B +@code{reply-to} $B$,(B @code{gnus-boring-article-headers} $B$NItJ,$G$"$l$P!"%X%C(B +$B%@!<$,1#$5$l$k$H$$$&0UL#$G$9!#$3$l$O$"$k(B listserv $B$K$h$k%a!<%j%s%0%j%9%H(B +$B$r9XFI$7$F$$$F!"$=$l$,(B @code{Reply-To} $BMs$r(B listserv $B<+?H$KJV$9$h$&$K$D(B +$B$1$i$l$F$$$k>l9g$KM-8z$G$7$g$&!#$3$l$O$*$+$7$J?6$kIq$$$G$9!#$@$+$i$3$l$,(B +$BMW$k$s$G$9(B! + +@item to-group +@cindex to-group +@code{(to-group . "some.group.name")} $B$H$$$&MWAG$O!"$=$N%0%k!<%W$X$NEj9F(B +$B$OA4$F(B @code{some.group.name} $B$KAw$i$l$k!"$H$$$&0UL#$G$9!#(B + +@item newsgroup +@cindex newsgroup +$B%0%k!<%W%Q%i%a!<%?%j%9%H$K(B @code{(newsgroup . t)} $B$,$"$l$P!"(BGnus $B$OA4$F(B +$B$N1~Ez$r%K%e!<%95-;v$KBP$9$k1~Ez$G$"$k$+$N$h$&$K07$$$^$9!#$3$l$OC5n$5$l$k$h$&$K0u$rIU$1$i$l$^$9!#B>$NJ}K!$O!"(B +@xref{Expiring Mail}. + +@code{gnus-auto-expirable-newsgroups} $B$b;2>H$7$F2<$5$$!#(B + +@item total-expire +@cindex total-expire +$B%0%k!<%W%Q%i%a!<%?$K(B @code{(total-expire . t)} $B$N$h$&$JMWAG$,$"$l$P!"4{(B +$BFI5-;v$O!";~8B>C5n$N0u$,$D$$$F$$$J$/$H$bA4$F;~8B>C5n=hM}$r;\$5$l$^$9!#Cm(B +$B0U$7$F;HMQ$7$F$/$@$5$$!#L$FI5-;v!"0uIU$-5-;v!"J]N15-;v$O;~8B>C5n$5$l$^$;(B +$B$s!#(B + +@code{gnus-total-expirable-newsgroups} $B$b;2>H$7$F2<$5$$!#(B + +@item expiry-wait +@cindex expiry-wait +@vindex nnmail-expiry-wait-function +$B%0%k!<%W%Q%i%a!<%?$K(B @code{(expiry-wait . 10)} $B$N$h$&$JMWAG$,$"$l$P!"$3(B +$B$NCM$O5-;v$r;~8B>C5n$9$k$H$-(B +$B$K(B @code{nnmail-expiry-wait} $B$H(B @code{nnmail-expiry-wait-function} $B$N@_(B +$BDj(B (@pxref{Expiring Mail}) $B$h$j$bM%@h$5$l$^$9!#$3$NCM$O;~8B>C5n$NF|(B +$B?t(B ($B@0?t$G$"$kI,MW$O$J$$(B) $B$+$b$7$/$O(B @code{never} $B$+(B @code{immediate} $B$N(B +$B%7%s%\%k$r;XDj$G$-$^$9!#(B + +@item expiry-target +@cindex expiry-target +$B;~8B>C5n$5$l$k%a%C%;!<%8$N2L$F$k>l=j!#$3$N%Q%l%a!<%?(B +$B$O(B @code{nnmail-expiry-target} $B$r>e=q$-$7$^$9!#(B + +@item score-file +@cindex score file group parameter +@code{(score-file . "file")} $B$N$h$&$JMWAG$O!"(B@file{file} $B$r8=:_$N%0%k!<(B +$B%W$KE,MQ$5$l$k%9%3%"%U%!%$%k$K$7$^$9!#E,MQ$5$l$k%9%3%"EPO?$OA4$F$3$N%U%!(B +$B%$%k$KF~$j$^$9!#(B + +@item adapt-file +@cindex adapt file group parameter +@code{(adapt-file . "file")} $B$N$h$&$JMWAG$O!"(B@file{file} $B$r8=:_$N%0%k!<(B +$B%W$NE,1~%U%!%$%k$K$7$^$9!#A4$F$NE,1~%9%3%"EPO?$O$3$N%U%!%$%k$KF~$j$^$9!#(B + +@item admin-address +@cindex admin-address +$B%a!<%j%s%0%j%9%H$+$iC&2q$9$k$H$-$O!"C&2qDLCN%a!<%k$r$=$N%a!<%j%s%0%j%9%H(B +$B<+?H$KAw?.$7$F$O$$$1$^$;$s!#Be$o$j$K4IM}MQ%"%I%l%9$K%a%C%;!<%8$rAw?.$7$^(B +$B$9!#$3$N%Q%i%a!<%?$K$O$I$3$+JXMx$J4IM}MQ%"%I%l%9$r=q$$$F$*$/$3$H$,$G$-$^(B +$B$9!#(B + +@item display +@cindex display +@code{(display . MODE)} $B$N$h$&$JMWAG$O!"%0%k!<%W$KF~$k$H$-$K$I$N5-;v$rI=(B +$B<($9$k$+$r;XDj$7$^$9!#M-8z$JCM$O!"(B + +@table @code +@item all +$BL$FI!"4{FI5-;v$NN>J}$rA4$FI=<($7$^$9!#(B + +@item an integer +$B$=$N%0%k!<%W$N:G8e$N(B @var{integer} $B8D$N5-;v$rI=<($7$^$9!#$3$l(B +$B$O(B @kbd{C-u @var{integer}} $B$G$=$N%0%k!<%W$KF~$k$N$HF1$8$G$9!#(B + +@item default +$B=i4|@_Dj$G$NI=<(5-;v$rI=<($7$^$9!#$3$l$ODL>o$OL$FI5-;v$H0uIU$-5-;v$G$9!#(B + +@item $BG[Ns(B +$B=R8l$rK~B-$9$k$h$&$K5-;v$rI=<($7$^$9!#(B + +$B$$$/$D$+Nc$r5s$2$^$9(B: + +@table @code +@item [unread] +$BL$FI$N5-;v$@$1$rI=<($7$^$9!#(B + +@item [not expire] +$B4|8B@Z$l>C5n2DG=$J5-;v0J30$N$9$Y$F$rI=<($7$^$9!#(B + +@item [and (not reply) (not expire)] +$B4|8B@Z$l>C5n2DG=$H$9$G$KJV?.$7$?5-;v0J30$N$9$Y$F$rI=<($7$^$9!#(B +@end table + +$BMxMQ$G$-$k1i;;;R$O(B @code{not}, @code{and} $B$*$h$S(B @code{or} $B$G$9!#=R8l(B +$B$O(B @code{tick}, @code{unsend}, @code{undownload}, @code{unread}, +@code{dormant}, @code{expire}, @code{reply}, @code{killed}, +@code{bookmark}, @code{score}, @code{save}, @code{cache}, @code{forward}, +@code{unseen} $B$*$h$S(B @code{recent} $B$r4^$_$^$9!#(B +@end table + +@code{display} $B%Q%i%a!<%?$O!"35N,%P%C%U%!$r;XDj$7$?0lIt$NAH$@$1$K@)8B$9(B +$B$k$h$&$KF/$-$^$9!#@)8B$r%9%?%C%/$+$i$K9gCW$9$k@55,I=8=$O$"$j$^$;$s(B ($BEvA3$G(B +$B$9(B)$B!#$3$N%0%k!<%W$NMM<0$NMWAG$O(B @code{gnus-posting-styles} $B$G8+$D$+$C$?(B +$B$b$N$h$j$bM%@h$5$l$^$9!#(B + +$BNc$($P!"$3$N%0%k!<%W$N$_!"$+$C$3$$$$L>A0$H=pL>$K$7$?$$$J$i!"(B +@code{gnus-posting-styles} $B$r$$$8$i$:$K!"$3$N$h$&$J$b$N$r%0%k!<%W%Q%i%a!<(B +$B%?$KF~$l$k$3$H$,$G$-$^$9(B: + +@example +(posting-style + (name "Funky Name") + ("X-My-Header" "Funky Value") + (signature "Funky Signature")) +@end example + +@item post-method +@cindex post-method +$B$b$7$3$l$,@_Dj$5$l$F$$$k$H!"%a%C%;!<%8$rAw?.$9$k$?$a$NA*BrJ}K!$H$7(B +$B$F(B @code{gnus-post-method} $B$NBe$o$j$K;H$o$l$^$9!#(B + +@item banner +@cindex banner +@code{(banner . @var{regex})} $B$N$h$&$J9`L\$O!"5-;v$N$9$Y$F$N>l=j$G@55,I=(B +$B8=(B @var{regex} $B$K%^%C%A$9$k$b$N$r:o=|$7$^$9!#(B@var{regex} $B$NBe$o$j$K%7%s(B +$B%\%k(B @code{signature} ($B:G8e$N=pL>$r:o(B +$B=|(B) $B$dO"A[%j%9%H(B @code{gnus-article-banner-alist} $B$N3FMWAG$r;H$&$3$H$b$G(B +$B$-$^$9!#(B + +@item sieve +@cindex sieve +$B$3$N%Q%i%a!<%?$O!"F~$C$F$-$?%a!<%k$,$3$N%0%k!<%W$KCV$/$KCM$9$k$+$I$&$+$r(B +$BD4$Y$k(B Sieve ($B$U$k$$(B) $B%F%9%H$r;}$A$^$9!#$3$N%0%k!<%W%Q%i%a!<%?$r85(B +$B$K(B @samp{fileinto "group.name";} $B$H$$$&%F%9%H>r7o$rK\BN$K;}$D!"(B +Sieve $B$N(B @samp{IF} $B@)8f9=B$BN$,:n$i$l$^$9!#(B + +$BNc$($P!"$b$7(B @samp{INBOX.list.sieve} $B%0%k!<%W$,(B @code{(sieve address +"sender" "sieve-admin@@extundo.com")} $B$H$$$&%0%k!<%W%Q%i%a!<%?$r;}$C$F$$(B +$B$?$J$i$P!"%0%k!<%W%Q%i%a!<%?$r(B Sieve $B%9%/%j%W%H$KJQ49$9$k(B (@pxref{Sieve +Commands}) $B$H$-$K!"0J2<$N(B Sieve $B%3!<%I$,:n$i$l$^$9(B: + +@example +if address "sender" "sieve-admin@@extundo.com" @{ + fileinto "INBOX.list.sieve"; +@} +@end example + +$BJ#?t$NEE;R%a!<%k%"%I%l%9$N$?$a$N%F%9%H$r@8@.$9$k$K$O!"(B@code{(sieve +address "sender" ("name@@one.org" else@@two.org"))} $B$N$h$&$J%0%k!<%W%Q%i(B +$B%a!<%?$r;H$C$F2<$5$$!#(BSieve $B%9%/%j%W%H(B (@pxref{Sieve Commands}) $B$r@8@.$9(B +$B$k$H!"0J2<$N$h$&$J(B Sieve $B%3!<%I$,:n$i$l$^$9(B: + +@example +if address "sender" ["name@@one.org", "else@@two.org"] @{ + fileinto "INBOX.list.sieve"; +@} +@end example + +Sieve $B%Q%i%a!<%?$K4XO"$9$k=EMW$J%3%^%s%I$HJQ?t$K$D$$$F$O!"(B@pxref{Sieve +Commands} $B$r;2>H$7$F2<$5$$!#(B + +Sieve $B8@8l$O(B RFC 3028 $B$G=R$Y$i$l$F$$$^(B +$B$9(B (@pxref{Top, Emacs Sieve, Top, sieve, Emacs Sieve})$B!#(B + +@item (agent parameters) +$B%(!<%8%'%s%H$r;H$&$h$&$K$7$F$"$k$H!"8D!9$N%0%k!<%W$G%(!<%8%'%s%H$N?6$kIq(B +$B$$$r@)8f$9$k$I$N%Q%i%a!<%?$b@_Dj$9$k$3$H$,$G$-$^$9!#%(!<%8%'%s%H%Q%i%a!<(B +$B%?$K$D$$$F$O(B @ref{Category Syntax} $B$r;2>H$7$F2<$5$$!#$?$$$F$$$N%f!<%6$O!"(B +$B@_Dj$KMW$9$k6lO+$r:G>.8B$K$9$k$?$a$K!"%(!<%8%'%s%H%+%F%4%j!<$+%0%k!<%W%H(B +$B%T%C%/$N$I$A$i$+$G%(!<%8%'%s%H%Q%i%a!<%?$r@_Dj$9$k$3$H$rA*$V$G$7$g$&!#(B + +@item (@var{variable} @var{form}) +$B%0%k!<%W$KF~$k$H$-$K!"$=$N%0%k!<%W%m!<%+%k$NJQ?t$r@_Dj$9$k%0%k!<%W%Q%i%a!<(B +$B%?$r;HMQ$9$k$3$H$,$G$-$^$9!#(B@samp{news.answers} $B$K$*$$$F%9%l%C%II=<($r9T(B +$B$$$?$/$J$$$H$-$O!"$=$N%0%k!<%W$K%0%k!<%W%Q%i%a!<%?(B +$B$K(B @code{(gnus-show-threads nil)} $B$H=q$1$^$9!#(B +@code{gnus-show-threads} $B$O!"$=$N35N,%P%C%U%!$NCf$N%m!<%+%kJQ?t$K$J$j!"(B +form $B$N(B @code{nil} $B$O$=$3$GI>2A$5$l$^$9!#(B + +$B$3$N5!G=$O!"JQ?t$r35N,%P%C%U%!$G%m!<%+%k$K@_Dj$9$k$3$H$KCm0U$7$F2<$5$$!#(B +$B$G$b!"$$$/$D$+$NJQ?t$O5-;v%P%C%U%!$+(B ($BJV?.!"%U%)%m!2A$5$l$^$9!#Be$o$j$K!"LdBj$NJQ?t(B +$B$r(B @code{gnus-newsgroup-variables} $B$K2C$($k$3$H$,=u$1$K$J$k$+$b$7$l$^$;(B +$B$s!#$7$?$,$C$F!"%0%k!<%W%Q%i%a!<%?$r2p$7$F(B @code{message-from-style} $B$r(B +$B@_Dj$7$?$$$J$i$P!"(B@file{~/.gnus}$B%U%!%$%k$N$I$3$+B>$N$H$3$m$K!"Ms$+$i%a!<%j%s%0%j%9%H$NI8<1%?%0$r$O$.(B +$B$K(B @samp{DOC-BOOK-APPS:} $B$H$$$&%?%0$r;}$C$F$$$k$J(B +$B$i$P!"$=$N%0%k!<%W$N%0%k!<%W%Q%i%a!<%?$K(B @code{(gnus-list-identifiers +"DOCBOOK-APPS:")} $B$rF~$l$k$3$H$K$h$C$F!"$=$N%0%k!<%W$N35N,%P%C%U%!$KI=<((B +$B$5$l$k5-;v$NBjL>$+$i%?%0$r$O$.2A7k(B +$B2L$,@_Dj$5$l$^$9!#(B + +$B$"$k$$$O!"(B@var{variable} $B$O$=$N%0%k!<%W$KBP$7$F%m!<%+%k$K$J$k$N$G!"$3$N(B +$BMM<0$O0l;~E*$K%U%C%/$rJQ99$9$k$?$a$K;H$&$3$H$,$G$-$^$9!#Nc$($P!"0J2<$N$b(B +$B$N$,%0%k!<%W%Q%i%a!<%?$KDI2C$5$l$k$H!"(B + +@lisp +(gnus-summary-prepared-hook + '(lambda nil (local-set-key "d" (local-key-binding "n")))) +@end lisp + +$B$=$N%0%k!<%W$KF~$C$?$H$-$K(B @kbd{d} $B%-!<$O5-;v$K4|8B@Z$l>C5n$N0u$rIU$1$J(B +$B$$$h$&$K$J$j$^$9!#(B +@end table + +$B%0%k!<%W%Q%i%a!<%?$N=$@5$K$O(B @kbd{G p} $B$+(B @kbd{G c} $BL?Na$r;H$C$F$/$@$5(B +$B$$(B (@kbd{G p} $B$O(B Lisp $B%Y!<%9$N!"(B@kbd{G c} $B$O(B Custom $B$U$&$N%$%s%?!<%U%'!<(B +$B%9$rDs6!$7$^$9(B)$B!#%H%T%C%/%Q%i%a!<%?$K$D$$$FFI$s$G$_$k$3$H$bLLGr$$$G$7$g(B +$B$&(B (@pxref{Topic Parameters})$B!#(B + +@vindex gnus-parameters +$B%0%k!<%W%Q%i%a!<%?$O(B @code{gnus-parameters} $BJQ?t$r2p:_$7$F@_Dj$9$k$3$H$b(B +$B$G$-$^$9!#$G$b$$$/$D$+$N%Q%i%a!<%?!"Nc$($P(B @code{visible} $B$O8zNO$rH/4x$7(B +$B$^$;$s!#Nc$G$9!#(B + +@lisp +(setq gnus-parameters + '(("mail\\..*" + (gnus-show-threads nil) + (gnus-use-scoring nil) + (gnus-summary-line-format + "%U%R%z%I%(%[%d:%ub%-23,23f%]%) %s\n") + (gcc-self . t) + (display . all)) + + ("^nnimap:\\(foo.bar\\)$" + (to-group . "\\1")) + + ("mail\\.me" + (gnus-use-scoring t)) + + ("list\\..*" + (total-expire . t) + (broken-reply-to . t)))) +@end lisp + +$BJ8;zNs$NCM$O!"(B@code{to-group} $B$NNc$,<($9$h$&$K!"@55,I=8=$K$h$kCV$-49$($r(B +$B.$5$$%l%Y%k$N%0(B +$B%k!<%W$N$_$rI=<($7$^$9!#=i4|@_Dj$G$O!"$3$l$O%l%Y%k(B 5 ($B$D$^(B +$B$j(B @code{gnus-group-default-list-level}) $B$+$=$l$h$j>.$5$$%l%Y%k(B ($B$9$J$o(B +$B$A9XFI$7$F$$$k%0%k!<%W$N$_(B) $B$rI=<($7$^$9!#(B + +@item L +@itemx A u +@kindex A u ($B%0%k!<%W(B) +@kindex L ($B%0%k!<%W(B) +@findex gnus-group-list-all-groups +$BL$FI5-;v$N$"$k$J$7$K4X$o$i$:!"A4$F$N%0%k!<%W$rI=<($7$^(B +$B$9(B (@code{gnus-group-list-all-groups})$B!#?t;z@\F,0z?t$r;HMQ$9$k$H!"$3$N%3(B +$B%^%s%I$O0z?t$N?t$+$=$l$h$j$b>.$5$$%l%Y%k$N%0%k!<%W$N$_$rI=<($7$^$9!#=i4|(B +$B@_Dj$G$O(B 7 $B$+$=$l$h$j$b>.$5$$%l%Y%k$N%0%k!<%W(B ($B$9$J$o$A9XFI!"Hs9XFI$N%0(B +$B%k!<%W$N$_(B) $B$,I=<($5$l$^$9!#(B + +@item A l +@kindex A l ($B%0%k!<%W(B) +@findex gnus-group-list-level +$B$"$kFCDj$N%l%Y%k$NL$FI5-;v$N$"$k%0%k!<%W$rI=<($7$^(B +$B$9(B (@code{gnus-group-list-level})$B!#@\F,<-$rM?$($k$H!"L$FI5-;v$N$J$$%0%k!<(B +$B%W$b4^$a$FI=<($7$^$9!#(B + +@item A k +@kindex A k ($B%0%k!<%W(B) +@findex gnus-group-list-killed +kill $B$5$l$?%0%k!<%W$rA4$FI=<($7$^$9(B (@code{gnus-group-list-killed})$B!#@\(B +$BF,0z?t$rM?$($k$H!"8=:_9XFI!"Hs9XFI$H$J$C$F$$$J$$A4$F$NMxMQ2DG=$J%0%k!<%W(B +$B$rI=<($7$^$9!#$3$l$O%5!<%P$+$i%"%/%F%#%V%U%!%$%k$rFI$`$3$H$K$J$k$G$7$g$&!#(B + +@item A z +@kindex A z ($B%0%k!<%W(B) +@findex gnus-group-list-zombies +$BA4$F$N%>%s%S%0%k!<%W$rI=<($7$^$9(B (@code{gnus-group-list-zombies})$B!#(B + +@item A m +@kindex A m ($B%0%k!<%W(B) +@findex gnus-group-list-matching +$B@55,I=8=$K9gCW$9$kL>A0$r;}$D%0%k!<%W$G!"L$FI5-;v$N$"$k9XFI%0%k!<%W$rA4$F(B +$BI=<($7$^$9(B (@code{gnus-group-list-matching})$B!#(B + +@item A M +@kindex A M ($B%0%k!<%W(B) +@findex gnus-group-list-all-matching +$B@55,I=8=$K9gCW$9$k%0%k!<%W$rI=<($9(B +$B$k(B (@code{gnus-group-list-all-matching})$B!#(B + +@item A A +@kindex A A ($B%0%k!<%W(B) +@findex gnus-group-list-active +$B:#@\B3$7$F$$$k%5!<%P$N%"%/%F%#%V%U%!%$%k$K$"$k%0%k!<%W$r!"K\Ev$KA4ItI=<((B +$B$7$^$9(B (@code{gnus-group-list-active})$B!#$3$l$O$7$P$i$/;~4V$,$+$+$k$3$H$b(B +$BM-$jF@$^$9!#$?$V$s(B @kbd{A M} $B$r/3d$j0z$$$FA0$r;}$D%0%k!<%W$rA4$FI=<($9(B +$B$k(B (@code{gnus-group-apropos})$B!#(B + +@item A d +@kindex A d ($B%0%k!<%W(B) +@findex gnus-group-description-apropos +$B@55,I=8=$K9gCW$9$kL>A0$+@bL@J8$r;}$D%0%k!<%W$rA4$FI=<($9(B +$B$k(B (@code{gnus-group-description-apropos})$B!#(B + +@item A c +@kindex A c ($B%0%k!<%W(B) +@findex gnus-group-list-cached +$B%-%c%C%7%e5-;v$r;}$D%0%k!<%W$rA4$FI=<($9(B +$B$k(B (@code{gnus-group-list-cached})$B!#(B + +@item A ? +@kindex A ? ($B%0%k!<%W(B) +@findex gnus-group-list-dormant +$BJ]N15-;v$r;}$D%0%k!<%W$rA4$FI=<($9$k(B (@code{gnus-group-list-dormant})$B!#(B + +@item A / +@kindex A / ($B%0%k!<%W(B) +@findex gnus-group-list-limit +$B8=:_$NA*Br$5$l$?HO0O$K8BDj$7$?%0%k!<%W$rI=<($9(B +$B$k(B (@code{gnus-group-list-limit})$B!#(B + +@item A f +@kindex A f ($B%0%k!<%W(B) +@findex gnus-group-list-flush +$B8=:_$NA*Br$5$l$?%0%k!<%W$r=q$-=P$9(B (@code{gnus-group-list-flush})$B!#(B + +@item A p +@kindex A p ($B%0%k!<%W(B) +@findex gnus-group-list-plus +$B8=:_$NA*Br$5$l$?%0%k!<%W$r2C$($?%0%k!<%W$rI=<($9(B +$B$k(B (@code{gnus-group-list-plus})$B!#(B +@end table + +@vindex gnus-permanently-visible-groups +@cindex visible group parameter +@code{gnus-permanently-visible-groups} $B@55,I=8=$K9gCW$9$k%0%k!<%W$O!"L$(B +$BFI5-;v$,$"$k$+$J$$$+$K4X$o$i$:>o$KI=<($5$l$^$9!#$"$k$$$O%0%k!<%W%Q%i%a!<(B +$B%?$K$*$$$F(B @code{visible} $BMWAG$rDI2C$9$k$3$H$G$bF1MM$N8z2L$rF@$k$3$H$,$G(B +$B$-$^$9!#(B + +@vindex gnus-list-groups-with-ticked-articles +$B0uIU$-$N5-;v$N$_$r;}$D%0%k!<%W$ODL>o%0%k!<%W%P%C%U%!$KI=<($5$l$^$9!#$b(B +$B$7(B @code{gnus-list-groups-with-ticked-articles} $B$,(B @code{nil} $B$G$"$l$P!"(B +$B$=$N%0%k!<%W$O40A4$K6u$N%0%k!<%W$G$"$k$+$N$h$&$K07$o$l$^$9!#=i4|CM(B +$B$O(B @code{t} $B$G$9!#(B + +@node Sorting Groups +@section $B%0%k!<%W$N%=!<%H(B +@cindex sorting groups + +@kindex C-c C-s ($B%0%k!<%W(B) +@findex gnus-group-sort-groups +@vindex gnus-group-sort-function +@kbd{C-c C-s} (@code{gnus-group-sort-groups}) $BL?Na$O!"%0%k!<%W%P%C%U%!(B +$B$r(B @code{gnus-group-sort-function} $BJQ?t$GM?$($i$l$k4X?t$K=>$C$FJB$YBX$((B +$B$^$9!#MxMQ2DG=$JJB$YBX$(4X?t(B (sorting function) $B$K$O0J2<$N$b$N$,$"$j$^(B +$B$9(B: + +@table @code +@item gnus-group-sort-by-alphabet +@findex gnus-group-sort-by-alphabet +$B%0%k!<%WL>$G%"%k%U%!%Y%C%H=g$KJB$YBX$($^$9!#$3$l$,=i4|@_Dj$G$9!#(B + +@item gnus-group-sort-by-real-name +@findex gnus-group-sort-by-real-name +$B%0%k!<%W$rK\Ev$N(B ($BA0$K2?$bIU$$$F$$$J$$(B) $B%0%k!<%WL>$G%"%k%U%!%Y%C%H=g$KJB(B +$B$YJQ$($^$9!#(B + +@item gnus-group-sort-by-level +@findex gnus-group-sort-by-level +$B%0%k!<%W%l%Y%k$GJB$YBX$($^$9!#(B + +@item gnus-group-sort-by-score +@findex gnus-group-sort-by-score +$B%0%k!<%W$N%9%3%"$GJB$YBX$($^$9!#(B@xref{Group Score}. + +@item gnus-group-sort-by-rank +@findex gnus-group-sort-by-rank +$B%0%k!<%W$N%9%3%"$GJB$YBX$(!"$N%"%k%U%!%Y%C%H=g$GJB$YBX$($^$9!#(B +@end table + +@code{gnus-group-sort-function} $B$OJB$YBX$(4X?t$N%j%9%H$G$"$C$F$b9=$$$^$;(B +$B$s!#$3$N>l9g!"$b$C$H$b=EMW$JJB$YBX$($N80$r;}$D4X?t$O:G8e$G$J$/$F$O$J$j$^(B +$B$;$s!#(B + +$B$"$k@\JB$YBX$($kL?Na$b$$$/$D$+$"$j$^$9!#(B + +@table @kbd +@item G S a +@kindex G S a ($B%0%k!<%W(B) +@findex gnus-group-sort-groups-by-alphabet +$B%0%k!<%W%P%C%U%!$r%0%k!<%WL>$N%"%k%U%!%Y%C%H=g$GJB$YBX$($^(B +$B$9(B (@code{gnus-group-sort-groups-by-alphabet})$B!#(B + +@item G S u +@kindex G S u ($B%0%k!<%W(B) +@findex gnus-group-sort-groups-by-unread +$B%0%k!<%W%P%C%U%!$rL$FI5-;v$N?t$GJB$YBX$($^(B +$B$9(B (@code{gnus-group-sort-groups-by-unread})$B!#(B + +@item G S l +@kindex G S l ($B%0%k!<%W(B) +@findex gnus-group-sort-groups-by-level +$B%0%k!<%W%P%C%U%!$r%0%k!<%W%l%Y%k$GJB$YBX$($^(B +$B$9(B (@code{gnus-group-sort-groups-by-level})$B!#(B + +@item G S v +@kindex G S v ($B%0%k!<%W(B) +@findex gnus-group-sort-groups-by-score +$B%0%k!<%W%P%C%U%!$r%0%k!<%W$N%9%3%"$GJB$YBX$($^(B +$B$9(B (@code{gnus-group-sort-groups-by-score})$B!#(B@xref{Group Score}. + +@item G S r +@kindex G S r ($B%0%k!<%W(B) +@findex gnus-group-sort-groups-by-rank +$B%0%k!<%W%P%C%U%!$r%0%k!<%W$N%i%s%/$GJB$YBX$($^(B +$B$9(B (@code{gnus-group-sort-groups-by-rank})$B!#(B@xref{Group Score}. + +@item G S m +@kindex G S m ($B%0%k!<%W(B) +@findex gnus-group-sort-groups-by-method +$B%0%k!<%W%P%C%U%!$r%P%C%/%(%s%I$NL>A0$G%"%k%U%!%Y%C%H=g$KJB$YBX$($^(B +$B$9(B (@code{gnus-group-sort-groups-by-method})$B!#(B + +@item G S n +@kindex G S n ($B%0%k!<%W(B) +@findex gnus-group-sort-groups-by-real-name +$B%0%k!<%W%P%C%U%!$rK\Ev$N(B ($BA0$K2?$bIU$$$F$$$J$$(B) $B%0%k!<%WL>$G%"%k%U%!%Y%C(B +$B%H=g$KJB$YBX$($^$9(B (@code{gnus-group-sort-groups-by-real-name})$B!#(B +@end table + +$B0J2<$NA4$F$NL?Na$O%W%m%;%9(B/$B@\F,<-$N=,47$K=>$$$^(B +$B$9(B (@pxref{Process/Prefix})$B!#(B + +$B%7%s%\%k@\F,<-(B (@pxref{Symbolic Prefixes}) $B$,M?$($i$l$?$H$-$O!"$3$l$iA4(B +$B$F$NL?Na$O5U=g$GJB$S49$($^$9!#(B + +$B$^$?!"%0%k!<%W$N0lIt$rJB$YBX$($k$3$H$b$G$-$^$9!#(B + +@table @kbd +@item G P a +@kindex G P a ($B%0%k!<%W(B) +@findex gnus-group-sort-selected-groups-by-alphabet +$B%0%k!<%W$r%0%k!<%WL>$N%"%k%U%!%Y%C%H=g$GJB$YBX$($^(B +$B$9(B (@code{gnus-group-sort-selected-groups-by-alphabet})$B!#(B + +@item G P u +@kindex G P u ($B%0%k!<%W(B) +@findex gnus-group-sort-selected-groups-by-unread +$B%0%k!<%W$rL$FI5-;v$N?t$GJB$YBX$($^(B +$B$9(B (@code{gnus-group-sort-selected-groups-by-unread})$B!#(B + +@item G P l +@kindex G P l ($B%0%k!<%W(B) +@findex gnus-group-sort-selected-groups-by-level +$B%0%k!<%W$r%0%k!<%W%l%Y%k$GJB$YBX$($^(B +$B$9(B (@code{gnus-group-sort-selected-groups-by-level})$B!#(B + +@item G P v +@kindex G P v ($B%0%k!<%W(B) +@findex gnus-group-sort-selected-groups-by-score +$B%0%k!<%W$r%0%k!<%W$N%9%3%"$GJB$YBX$($^(B +$B$9(B (@code{gnus-group-sort-selected-groups-by-score})$B!#(B +@xref{Group Score}. + +@item G P r +@kindex G P r ($B%0%k!<%W(B) +@findex gnus-group-sort-selected-groups-by-rank +$B%0%k!<%W$r%0%k!<%W$N%i%s%/$GJB$YBX$($^(B +$B$9(B (@code{gnus-group-sort-selected-groups-by-rank})$B!#(B@xref{Group Score}. + +@item G P m +@kindex G P m ($B%0%k!<%W(B) +@findex gnus-group-sort-selected-groups-by-method +$B%0%k!<%W$r%P%C%/%(%s%I$NL>A0$G%"%k%U%!%Y%C%H=g$KJB$YBX$($^(B +$B$9(B (@code{gnus-group-sort-selected-groups-by-method})$B!#(B + +@item G P n +@kindex G P n ($B%0%k!<%W(B) +@findex gnus-group-sort-selected-groups-by-real-name +$B%0%k!<%W$rK\Ev$N(B ($BA0$K2?$bIU$$$F$$$J$$(B) $B%0%k!<%WL>$G%"%k%U%!%Y%C%H=g$KJB(B +$B$YBX$($^$9(B (@code{gnus-group-sort-selected-groups-by-real-name})$B!#(B + +@item G P s +@kindex G P s ($B%0%k!<%W(B) +@findex gnus-group-sort-selected-groups +$B%0%k!<%W$r(B @code{gnus-group-sort-function} $B$K=>$C$FJB$YBX$($^$9!#(B +@end table + +$B:G8e$K!"(B@kbd{C-k} $B$H(B @kbd{C-y} $B$r;H$C$F!"%s%S$H$7$F(B +$B9XFI$7$^$9!#(B + +@item C-c C-x +@kindex C-c C-x ($B%0%k!<%W(B) +@findex gnus-group-expire-articles +$B8=:_$N%0%k!<%W$N%(%/%9%Q%$%"5-;v$KBP$7$F(B ($B$b$7$"$l$P(B) $BA4$F%(%/%9%Q%$%"=h(B +$BM}$r9T$$$^$9(B (@code{gnus-group-expire-articles})$B!#$3$l$O!"$=$N%0%k!<%W$K(B +$B$7$P$i$/B8:_$7$F$$$?4|8B@Z$l:o=|2DG=$J$9$Y$F$N5-;v$r>C5n$9$k$H$$$&$3$H$G(B +$B$9!#(B(@pxref{Expiring Mail})$B!#(B + +@item C-c C-M-x +@kindex C-c C-M-x ($B%0%k!<%W(B) +@findex gnus-group-expire-all-groups +$BA4$F$N%0%k!<%W$NA4$F$N4|8B@Z$l:o=|2DG=$J5-;v$KBP$7$F!"%(%/%9%Q%$%"=hM}$r(B +$B9T$$$^$9!#(B(@code{gnus-group-expire-all-groups})$B!#(B +@end table + +@node Browse Foreign Server +@section $B30It%5!<%P$N1\Mw(B +@cindex foreign servers +@cindex browsing servers + +@table @kbd +@item B +@kindex B ($B%0%k!<%W(B) +@findex gnus-group-browse-foreign-server +$BA*BrJ}K!$H%5!<%PL>$rJ9$+$l$^$9!#(BGnus $B$O$3$N%5!<%P$K@\B3$7!"$=$3$K$"$k(B +$B%0%k!<%W$r1\Mw$7$h$&$H$7$^$9(B (@code{gnus-group-browse-foreign-server})$B!#(B +@end table + +@findex gnus-browse-mode +$BMxMQ2DG=$J%0%k!<%W$N%j%9%H$r;}$C$??7$7$$%P%C%U%!$,8=$l$^$9!#$3$N%P%C%U%!(B +$B$O(B @code{gnus-browse-mode} $B$r;HMQ$7$^$9!#$3$N%P%C%U%!$ODL>o$N%0%k!<%W%P%C(B +$B%U%!$K$A$g$C$H(B ($B$H$$$&$+!"$H$C$F$b(B) $B;w$F$$$^$9!#(B + +$B0J2<$,1\Mw%b!<%I(B (browse mode) $B$G;HMQ$G$-$k%-!l9g$O9XFI$9$k$3$H$K$J$k$N$@$1$l(B +$B$I(B (@code{gnus-browse-unsubscribe-current-group})$B!#(B + +@item l +@itemx q +@kindex q ($B1\Mw(B) +@kindex l ($B1\Mw(B) +@findex gnus-browse-exit +$B1\Mw%b!<%I(B (browse mode) $B$r=*N;$7$^$9(B (@code{gnus-browse-exit})$B!#(B + +@item d +@kindex d ($B1\Mw(B) +@findex gnus-browse-describe-group +$B8=:_$N%0%k!<%W$r9XFI$K$7$^$9(B (@code{gnus-browse-describe-group})$B!#(B + +@item ? +@kindex ? ($B1\Mw(B) +@findex gnus-browse-describe-briefly +$B1\Mw%b!<%I(B (browse mode) $B$r4JC1$K@bL@$7$^$9(B ($B$^$"!"Bg$7$F@bL@$9$k$3$H$b(B +$B$J$$$s$@$1$I$5(B) (@code{gnus-browse-describe-briefly})$B!#(B +@end table + +@node Exiting gnus +@section Gnus $B$N=*N;(B +@cindex exiting gnus + +$B$=$&!"(BGnus $B$O:G8e(B ($B%5%$%3!<(B) $B$G$9(B ($BLuCm(B: $B$/!"6l$7$$!#(B +$B86J8$O(B ``Yes, Gnus is ex(c)iting.'')$B!#(B + +@table @kbd +@item z +@kindex z ($B%0%k!<%W(B) +@findex gnus-group-suspend +Gnus $B$rCfCG$7$^$9(B (@code{gnus-group-suspend})$B!#$3$l$O(B Gnus $B$rC$9$@$1$G$9!#KM$O$3$l$N(B +$B$&$l$7$5$,$h$/$o$+$s$J$$$s$@$1$I!"C/$+J,$+$k?M$$$k(B? + +@item q +@kindex q ($B%0%k!<%W(B) +@findex gnus-group-exit +@c @icon{gnus-group-exit} +Gnus $B$r=*N;$7$^$9(B(@code{gnus-group-exit})$B!#(B + +@item Q +@kindex Q ($B%0%k!<%W(B) +@findex gnus-group-quit +@file{.newsrc} $B%U%!%$%k$r%;!<%V$;$:$K(B Gnus $B$r=*N;$7$^(B +$B$9(B (@code{gnus-group-quit})$B!#%I%j%V%k%U%!%$%k$O%;!<%V$5$l$^$9$1(B +$B$I(B (@pxref{Auto Save})$B!#(B +@end table + +@vindex gnus-exit-gnus-hook +@vindex gnus-suspend-gnus-hook +@vindex gnus-after-exiting-gnus-hook +Gnus $B$rCfCG$9$k$H$-$O(B @code{gnus-suspend-gnus-hook} $B$,8F$S=P$5$l$^$9!#(B +Gnus$B$r=*N;$9$k$H$-$O(B @code{gnus-exit-gnus-hook} $B$,8F$S=P$5$l!"$5$i(B +$B$K(B Gnus $B$r=*N;$9$k$H$-$N:G8e$H$7(B +$B$F(B @code{gnus-after-exiting-gnus-hook} $B$,8F$S=P$5$l$^$9!#(B + +Note: + +@quotation +$B%_%9(B Lisa Cannifax $B$O1Q8l$N/G/$,H`=w$N%W%i%9%F%#%C(B +$B%/$N0X;R$NGX1[$7$K!"1tI.$G7+$jJV$7@~$rIA$/$N$K$D$i$l$F!"B-$,$7$S$l$F=E$/(B +$B$J$j!"0U<1$,[/[0$H$7$F$-$^$7$?!#(B +@end quotation + +@node Group Topics +@section Group Topics +@cindex topics + +$B$b$7$"$J$?$,$?!<$/$5$s$N%0%k!<%W$rFI$s$G$$$k$N$G$"$l$P!"%0%k!<%W$r%H%T%C(B +$B%/Kh$K3,AXJ,$1$G$-$k$HJXMx$G$7$g$&!#(BEmacs $B$N%0%k!<%W$r$3$C$A$X!"%;%C%/%9(B +$B$N%0%k!<%W$r$"$C$A$X!"$G!";D$j$r(B ($B$((B? $B%0%k!<%W$,Fs$D$/$i$$$7$+$J$$(B +$B$N(B?) $B$N%;%/%7%g%s$KF~$l$^$7$g$&!#$"$k$$(B +$B$O(B Emacs $B%;%C%/%9$N%0%k!<%W$r(B Emacs $B%0%k!<%W!"%;%C%/%9%0%k!<%W$N$I$A$i$+(B +$B$NI{%H%T%C%/$H$9$k$3$H$5$($b$G$-$^$9!=!=$"$k$$$ON>J}$K(B! $B$9$s$4$$$G$7$g$&(B! + +@iftex +@iflatex +\gnusfigure{Group Topics}{400}{ +\put(75,50){\epsfig{figure=ps/group-topic,height=9cm}} +} +@end iflatex +@end iftex + +$B$3$l$,Nc$G$9(B: + +@example +Gnus + Emacs -- $B$3$$$D$O$9$2!<$<(B! + 3: comp.emacs + 2: alt.religion.emacs + $B$($C$A$J(B Emacs + 452: alt.sex.emacs + 0: comp.talk.emacs.recovery + $B$=$NB>(B + 8: comp.binaries.fractals + 13: comp.sources.unix +@end example + +@findex gnus-topic-mode +@kindex t ($B%0%k!<%W(B) +$B$3$N(B@emph{$BAG@2$i$7$$(B}$B5!G=$r;H$&$K$O!"(B@code{gnus-topic} $B%^%$%J!<%b!<%I(B +$B$r(B ($B2?$H(B!) $BC1$K%9%$%C%A%*%s$9$k$@$1!=!=%0%k!<%W%P%C%U%!$G!"(B@kbd{t} $B$r2!(B +$B$7$F$/$@$5$$(B ($B$3$l$O%H%0%k%3%^%s%I$G$9(B)$B!#(B + +$B$5$"$d$C$F$_$h$&!#$H$K$+$/;n$7$F$_$F!#7/$,La$C$F$/$k$^$G!"KM$O$3$3$GBT$C(B +$B$F$k$+$i$5!#%i%i!"%?%i%i%s(B@dots{}$B!"$$$$6J$@$M!"$3$l(B@dots{}$B%i!"%i!"(B +$B%i(B@dots{}$B$((B? $BLa$C$F$-$?(B? $B$h$7!"$8$c/$7$"$j$^$9!#(B + +$B$@$$$?$$$K$*$$$F!"$`$G$7$g$&!#BhFs$K!"$"$J$?$O%0%k!<%W$r%H%T%C%/$K(B +$BF~$l$F!"$=$l$i$r$"$J$?$N9%$_$N=g=x$K$J$k$^$G!"$"$A$3$A$K0\F0$9$k$3$H$rK>(B +$B$`$G$7$g$&!#Bh;0$K9T$J$&A`:n$O!"$=$l$i$N0l@Z9g@Z$rI=<($7$?$j1#$9$3$H$G$7$g(B +$B$&!#B>$N%0%k!<%W$N35MW$r8+$d$9$/$9$k$?$a$K!"$"$J$?$OI{%H%T%C%/$d%0%k!<%W(B +$B$K$h$C$F$O!"%H%T%C%/$,1#$l$k$h$&$K$7$?$$$H;W$&$+$b$7$l$^$;$s$M!#(B + +$B$3$3$K$O!"$"$J$?$N9%$`$d$jJ}$G%H%T%C%/$r@_Dj$9$k$?$a$KI,MW$K$J$j$=$&$J!"(B +$B4pK\E*$J%-!<$N%j%9%H$,$"$j$^$9!#(B + +@table @kbd +@item T n +@kindex T n ($B%H%T%C%/(B) +@findex gnus-topic-create-topic +$B?7$7$$%H%T%C%/L>$NF~NO$rB%$7!"$=$l$r:n@.$7$^(B +$B$9(B (@code{gnus-topic-create-topic})$B!#(B + +@item T TAB +@itemx TAB +@kindex T TAB ($B%H%T%C%/(B) +@kindex TAB ($B%H%T%C%/(B) +@findex gnus-topic-indent +$B8=:_$N%H%T%C%/$N(B ``$B;z2<$2(B'' $B$r9T$$!"$=$NA0$N%H%T%C%/$NI{%H%T%C%/$K$7$^(B +$B$9(B (@code{gnus-topic-indent})$B!#@\F,0z?t$rM?$($k$H!"H?BP$K$=$N%H%T%C%/$N(B +$B;z2<$2$r2sI|(B (un-indent) $B$7$^$9!#(B + +@item M-TAB +@kindex M-TAB ($B%H%T%C%/(B) +@findex gnus-topic-unindent +$B8=:_$N%H%T%C%/$N(B ``$B;z2<$22sI|(B'' (un-indent) $B$r9T$$!"$=$l$,8=:_$N?F$N?F$N(B +$BI{%H%T%C%/$K$J$k$h$&$K$7$^$9(B (@code{gnus-topic-unindent})$B!#(B +@end table + +$B0J2<$NFs$D$N%-!<$O!"%0%k!<%W$H%H%T%C%/$r$"$A$3$A0\F0$9$k$?$a$K;H$o$l$^$9!#(B +$B$=$l$i$O!"$h$/CN$i$l$F$$$k%+%C%H!u%Z!<%9%H$N$h$&$KF0:n$7$^$9!#(B +@kbd{C-k} $B$O%+%C%H!"(B@kbd{C-y} $B$O%Z!<%9%H$G$9!#$b$A$m$s!"(BEmacs $B$G$O%+%C%H(B +$B!u%Z!<%9%H$G$O$J$/$F(B kill & yank $B$H$$$&MQ8l$r;H$$$^$9$,!#(B + +@table @kbd +@item C-k +@kindex C-k ($B%H%T%C%/(B) +@findex gnus-topic-kill-group +$B%0%k!<%W$"$k$$$O%H%T%C%/$r(B kill $B$7$^$9(B (@code{gnus-topic-kill-group})$B!#(B +$B%H%T%C%/Fb$K$"$C$?%0%k!<%W$bA4$F!"%H%T%C%/$H0l=o$K:o=|$5$l$^$9!#(B + +@item C-y +@kindex C-y ($B%H%T%C%/(B) +@findex gnus-topic-yank-group +$BD>A0$N(B kill $B$5$l$?%0%k!<%W$"$k$$$O%H%T%C%/$r(B yank $B$7$^(B +$B$9(B (@code{gnus-topic-yank-group})$B!#A4$F$N%H%T%C%/$O!"A4$F$N%0%k!<%W$NA0(B +$B$K(B yank $B$5$l$k$3$H$K5$$r$D$1$F$/$@$5$$!#(B + +$B$G$9$+$i!"$"$k%H%T%C%/$r%H%T%C%/$N%j%9%H$N@hF,$K0\F0$9$k$K$O!"C1$K$=$3(B +$B$G(B @kbd{C-k} $B$rC!$-$^$9!#$3$l$O%+%C%H!u%Z!<%9%H$N%+%C%H$KAjEv$7$^$9!#$=(B +$B$&$7$?$i%+!<%=%k$r%P%C%U%!$N@hF,(B (``Gnus'' $B%H%T%C%/$N??2<(B) $B$K0\F0$7$F!"(B +@kbd{C-y} $B$rC!$$$F2<$5$$!#$3$l$O%+%C%H!u%Z!<%9%H$N%Z!<%9%H$KAjEv$7$^$9!#(B +$B$J$"$s$@!"4JC1$8$c$s!#(B + +@kbd{C-k} $B$H(B @kbd{C-y} $B$O%H%T%C%/$HF1MM$K%0%k!<%W$K$b;H$($^$9!#$9$J$o$A!"(B +$B$"$J$?$O%0%k!<%W$HF1$8$h$&$K%H%T%C%/$N0\F0$b$G$-$k$N$G$9!#(B +@end table + +$B$"$J$?$NK>$_$N$^$^$K%H%T%C%/$r;H$($k$h$&$K$7$?8e$G!"$"$J$?$O%H%T%C%/$r1#(B +$B$7$?$j:F$S8+$($k$h$&$K$7$h$&$H;W$&$G$7$g$&!#$=$N$?$a$K0J2<$N%-!<$rMQ0U$7(B +$B$F$$$^$9!#(B + +@table @kbd +@item RET +@kindex RET ($B%H%T%C%/(B) +@findex gnus-topic-select-group +@itemx SPACE +$B%0%k!<%W$rA*Br$9$k$+!"$"$k$$$O%H%T%C%/$r@^$j$?$?$_$^(B +$B$9(B (@code{gnus-topic-select-group})$B!#%0%k!<%W$N>e$G$3$N%3%^%s%I$roDL$j$=$N%0%k!<%W$KF~$j$^$9!#%H%T%C%/9T$N>e$G9T$&$H!"$=$N%H%T%C(B +$B%/$O(B ($B4{$KI=<($5$l$F$$$k$H$-$O(B) $B@^$j$?$?$^$l$k$+!"(B($B4{$K@^$j$?$?$^$l$F$$(B +$B$k$H$-$O(B) $BE83+$5$l$^$9!#$D$^$j%H%T%C%/$KBP$7$F$O$3$l$O%H%0%k%3%^%s%I$G$9!#(B +$B$5$i$K!"?t;z%W%l%U%#%C%/%9$rM?$($k$H!"$=$N%l%Y%k(B ($B$H$=$l$h$j$b>.$5$$%l%Y(B +$B%k(B) $B$N%0%k!<%W$,I=<($5$l$^$9!#(B +@end table + +$B$5$F$*$N%3%^%s%I$N%j%9%H$G$9!#=g=x$K$OFC$K0UL#$O$"$j$^$;$s!#(B + +@table @kbd +@item T m +@kindex T m ($B%H%T%C%/(B) +@findex gnus-topic-move-group +$B8=:_$N%0%k!<%W$r!"$I$3$+B>$N%H%T%C%/$K0\F0$5$;$^(B +$B$9(B (@code{gnus-topic-move-group})$B!#$3$N%3%^%s%I$O%W%m%;%90u(B/$B@\F,0z?t$N=,(B +$B47$K=>$$$^$9(B (@pxref{Process/Prefix})$B!#(B + +@item T j +@kindex T j ($B%H%T%C%/(B) +@findex gnus-topic-jump-to-topic +$B%H%T%C%/$K%8%c%s%W$7$^$9(B (@code{gnus-topic-jump-to-topic})$B!#(B + +@item T c +@kindex T c ($B%H%T%C%/(B) +@findex gnus-topic-copy-group +$B8=:_$N%0%k!<%W$r!"$I$3$+B>$N%H%T%C%/$K%3%T!<$7$^(B +$B$9(B (@code{gnus-topic-copy-group})$B!#$3$N%3%^%s%I$O%W%m%;%90u(B/$B@\F,0z?t$N=,(B +$B47$K=>$$$^$9(B (@pxref{Process/Prefix})$B!#(B + +@item T h +@kindex T h ($B%H%T%C%/(B) +@findex gnus-topic-hide-topic +$B8=:_$N%H%T%C%/$r1#$7$^$9!#$b$7%W%l%U%#%C%/%9$,M?$($i$l$?$J$i!"$=$N%H%T%C(B +$B%/$r1J5W$K1#$7$^$9!#(B + +@item T s +@kindex T s ($B%H%T%C%/(B) +@findex gnus-topic-show-topic +$B8=:_$N%H%T%C%/$rI=<($7$^$9!#$b$7%W%l%U%#%C%/%9$,M?$($i$l$?$J$i!"$=$N%H%T%C(B +$B%/$r1J5W$KI=<($7$^$9!#(B + +@item T D +@kindex T D ($B%H%T%C%/(B) +@findex gnus-topic-remove-group +$B%0%k!<%W$r8=:_$N%H%T%C%/$+$i:o=|$7$^$9(B (@code{gnus-topic-remove-group})$B!#(B +$B$3$NL?Na$Ol9g$O!"(BGnus $B$O$"$J$?$,$$$^$9(B (@pxref{Process/Prefix})$B!#(B + +@item T M +@kindex T M ($B%H%T%C%/(B) +@findex gnus-topic-move-matching +$B@55,I=8=$K%^%C%A$9$kA4$F$N%0%k!<%W$r!"$"$k%H%T%C%/$K0\F0$5$;$^(B +$B$9(B (@code{gnus-topic-move-matching})$B!#(B + +@item T C +@kindex T C ($B%H%T%C%/(B) +@findex gnus-topic-copy-matching +$B@55,I=8=$K%^%C%A$9$kA4$F$N%0%k!<%W$r!"$"$k%H%T%C%/$K%3%T!<$7$^(B +$B$9(B (@code{gnus-topic-copy-matching})$B!#(B + +@item T H +@kindex T H ($B%H%T%C%/(B) +@findex gnus-topic-toggle-display-empty-topics +$B6u$N%H%T%C%/$NI=<(!&HsI=<($r@Z$jBX$($^(B +$B$9(B (@code{gnus-topic-toggle-display-empty-topics})$B!#(B + +@item T # +@kindex T # ($B%H%T%C%/(B) +@findex gnus-topic-mark-topic +$B8=:_$N%H%T%C%/$K$"$k%0%k!<%WA4$F$K%W%m%;%9%^!<%/$r$D$1$^(B +$B$9(B (@code{gnus-topic-mark-topic})$B!#@\F,<-$,M?$($i$l$J$$>l9g!"$3$N%3%^%s(B +$B%I$OI{%H%T%C%/$KBP$7$F:F5"E*$KF/$-$^$9!#(B + +@item T M-# +@kindex T M-# ($B%H%T%C%/(B) +@findex gnus-topic-unmark-topic +$B8=:_$N%H%T%C%/$K$"$kA4$F$N%0%k!<%W$+$i%W%m%;%9%^!<%/$r>C$7$^(B +$B$9(B (@code{gnus-topic-unmark-topic})$B!#@\F,<-$,M?$($i$l$J$$>l9g!"$3$N%3%^(B +$B%s%I$OI{%H%T%C%/$KBP$7$F:F5"E*$KF/$-$^$9!#(B + +@item C-c C-x +@kindex C-c C-x ($B%H%T%C%/(B) +@findex gnus-topic-expire-articles +($B$b$7$"$l$P(B) $B8=:_$N%0%k!<%W$+%H%T%C%/$+$NA4$F$N;~8B>C5n2DG=5-;v$r;~8B>C(B +$B5n$7$^$9(B (@code{gnus-topic-expire-articles})$B!#(B(@pxref{Expiring Mail})$B!#(B + +@item T r +@kindex T r ($B%H%T%C%/(B) +@findex gnus-topic-rename +$B%H%T%C%/$NL>A0$rJQ99$7$^$9(B (@code{gnus-topic-rename})$B!#(B + +@item T DEL +@kindex T DEL ($B%H%T%C%/(B) +@findex gnus-topic-delete +$B6u$N%H%T%C%/$r:o=|$7$^$9(B (@code{gnus-topic-delete})$B!#(B + +@item A T +@kindex A T ($B%H%T%C%/(B) +@findex gnus-topic-list-active +Gnus $B$,CN$C$F$$$k%H%T%C%/2=$5$l$?%0%k!<%W$rA4$FI=<($7$^(B +$B$9(B (@code{gnus-topic-list-active})$B!#(B + +@item T M-n +@kindex T M-n ($B%H%T%C%/(B) +@findex gnus-topic-goto-next-topic +$B$l$N%H%T%C%/$N2?$rI=<($9$k$+$r(B Gnus $B$K8@$&J}K!$r@bL@$7(B +$B$^$9!#(B + +@vindex gnus-topic-line-format +$B%H%T%C%/9T$=$l<+BN$O!"(B@code{gnus-topic-line-format} $BJQ?t$NCM$K=>$C$F:n@.(B +$B$5$l$^$9(B (@pxref{Formatting Variables})$B!#M-8z$JMWAG$O!"(B + +@table @samp +@item i +$B;z2<$2!#(B +@item n +$B%H%T%C%/L>!#(B +@item v +$B8+$($k$+$I$&$+!#(B +@item l +$B%l%Y%k!#(B +@item g +$B%H%T%C%/Cf$N%0%k!<%W$N?t!#(B +@item a +$B%H%T%C%/Cf$NL$FI5-;v$N?t!#(B +@item A +$B%H%T%C%/$HA4$F$NI{%H%T%C%/$NL$FI5-;v$N?t!#(B +@end table + +@vindex gnus-topic-indent-level +$B3FI{%H%T%C%/(B ($B$HI{%H%T%C%/Fb$N%0%k!<%W(B) $B$O!"%H%T%C%/%l%Y%k?t(B +$B$N(B @code{gnus-topic-indent-level} $BG\$N6uGrJ,$N;z2<$2$,9T$o$l$^$9!#=i4|CM(B +$B$O(B 2 $B$G$9!#(B + +@vindex gnus-topic-mode-hook +@code{gnus-topic-mode-hook} $B$O%H%T%C%/%^%$%J!<%b!<%I%P%C%U%!$G8F$S=P$5$l(B +$B$^$9!#(B + +@vindex gnus-topic-display-empty-topics +@code{gnus-topic-display-empty-topics} $B$O%H%T%C%/$NCf$KL$FI5-;v$,L5$$>l(B +$B9g$G$b$=$N%H%T%C%/$rI=<($9$k$h$&$K$7$^$9!#=i4|CM$O(B @code{t} $B$G$9!#(B + +@node Topic Sorting +@subsection $B%H%T%C%/$NJB$YBX$((B +@cindex topic sorting + +$B0J2<$K<($9L?Na$G!"3F%H%T%C%/Kh$KJL!9$K%0%k!<%W$rJB$YBX$($k$3$H$,$G$-$^$9(B: + +@table @kbd +@item T S a +@kindex T S a ($B%H%T%C%/(B) +@findex gnus-topic-sort-groups-by-alphabet +$B8=:_$N%H%T%C%/$r%0%k!<%WL>$N%"%k%U%!%Y%C%H=g$KJB$YBX$($^(B +$B$9(B (@code{gnus-topic-sort-groups-by-alphabet})$B!#(B + +@item T S u +@kindex T S u ($B%H%T%C%/(B) +@findex gnus-topic-sort-groups-by-unread +$B8=:_$N%H%T%C%/$rL$FI5-;v$N?t$GJB$YBX$($^(B +$B$9(B (@code{gnus-topic-sort-groups-by-unread})$B!#(B + +@item T S l +@kindex T S l ($B%H%T%C%/(B) +@findex gnus-topic-sort-groups-by-level +$B8=:_$N%H%T%C%/$r%0%k!<%W$N%l%Y%k$GJB$YBX$($^(B +$B$9(B (@code{gnus-topic-sort-groups-by-level})$B!#(B + +@item T S v +@kindex T S v ($B%H%T%C%/(B) +@findex gnus-topic-sort-groups-by-score +$B8=:_$N%H%T%C%/$r%0%k!<%W$N%9%3%"$GJB$YBX$($^(B +$B$9(B (@code{gnus-topic-sort-groups-by-score})$B!#(B@xref{Group Score}. + +@item T S r +@kindex T S r ($B%H%T%C%/(B) +@findex gnus-topic-sort-groups-by-rank +$B8=:_$N%H%T%C%/$r%0%k!<%W$N%i%s%/$GJB$YBX$($^(B +$B$9(B (@code{gnus-topic-sort-groups-by-rank})$B!#(B@xref{Group Score}. + +@item T S m +@kindex T S m ($B%H%T%C%/(B) +@findex gnus-topic-sort-groups-by-method +$B8=:_$N%H%T%C%/$r%P%C%/%(%s%I$NL>A0$G%"%k%U%!%Y%C%H=g$KJB$YBX$($^(B +$B$9(B (@code{gnus-topic-sort-groups-by-method})$B!#(B + +@item T S e +@kindex T S e ($B%H%T%C%/(B) +@findex gnus-topic-sort-groups-by-server +$B8=:_$N%H%T%C%/$r%5!<%P!<$NL>A0$G%"%k%U%!%Y%C%H=g$KJB$YBX$($^(B +$B$9(B (@code{gnus-topic-sort-groups-by-server})$B!#(B + +@item T S s +@kindex T S s ($B%H%T%C%/(B) +@findex gnus-topic-sort-groups +$B8=:_$N%H%T%C%/$r!"JQ?t(B @code{gnus-group-sort-function} $B$GM?$($i$l$k4X?t(B +$B$K=>$C$FJB$YBX$($^$9(B (@code{gnus-topic-sort-groups})$B!#(B +@end table + +$B@\F,0z?t$,M?$($i$l$?$i!"$3$l$i$9$Y$F$N%3%^%s%I$O5U=g$NJB$YBX$($r9T$J$$$^(B +$B$9!#%0%k!<%W$N%=!<%H$K$D$$$F$N$5$i$J$k>pJs$O(B @ref{Sorting Groups} $B$r;2>H(B +$B$7$F2<$5$$!#(B + +@node Topic Topology +@subsection $B%H%T%C%/$N0LAj9=B$(B +@cindex topic topology +@cindex topology + +$B$=$l$G$O!"%0%k!<%W%P%C%U%!$NNc$r8+$F$$$-$^$7$g$&!#(B + +@example +Gnus + Emacs -- $B$3$$$D$O$9$2!<$<(B! + 3: comp.emacs + 2: alt.religion.emacs + $B$($C$A$J(B Emacs + 452: alt.sex.emacs + 0: comp.talk.emacs.recovery + $B$=$NB>(B + 8: comp.binaries.fractals + 13: comp.sources.unix +@end example + +$B$D$^$j!"$3$3$G$O0l$D$N%H%C%W%l%Y%k$N%H%T%C%/(B (@samp{Gnus}) $B$,$"$j!"$=$N(B +$B2<$KFs$D$N%H%T%C%/$,$"$j!"$=$N$&$A$N0lJ}$NI{%H%T%C%/Cf$K0l$DI{%H%T%C%/$,(B +$B$"$j$^$9(B ($B%H%C%W%l%Y%k%H%T%C%/$O>o$K0l$D$7$+$"$j$^$;$s(B)$B!#$3$N9=B$$O!"0J(B +$B2<$N$h$&$KI=8=$G$-$^$9(B: + +@lisp +(("Gnus" visible) + (("Emacs -- $B$3$$$D$O$9$2!<$<(B!" visible) + (("$B$($C$A$J(B Emacs" visible))) + (("$B$=$NB>(B" visible))) +@end lisp + +@vindex gnus-topic-topology +$B$3$l$Oe5-$NI=<($r9T$&$?$a$N!"JQ?t(B @code{gnus-topic-topology} $B$NCM(B +$B$=$N$b$N$J$N$G$9!#$3$NJQ?t$O(B @file{.newsrc.eld} $B%U%!%$%k$KJ]B8$5$l!"$N%9%?!<%H%"%C(B +$B%W%U%!%$%k$N@_Dj$K$OA4$/1F6A$rM?$($^$;$s!#(B + +$B$3$N9=B$$O!"$I$N%H%T%C%/$,$I$N%H%T%C%/$NI{%H%T%C%/$G$"$k$+$H!"$I$N%H%T%C(B +$B%/$,I=<($5$l$F$$$k$+$r<($7$F$$$^$9!#8=:_$OFs$D$N@_Dj(B +$BCM!=!=(B@code{visible} $B$H(B @code{invisible} $B$,5v$5$l$F$$$^$9!#(B + +@node Topic Parameters +@subsection $B%H%T%C%/%Q%i%a!<%?(B +@cindex topic parameters + +$B%H%T%C%/Fb$NA4$F$N%0%k!<%W$O%0%k!<%W%Q%i%a!<%?$r!"$=$N?F(B ($B$H@hAD(B) $B$N%H%T%C(B +$B%/%Q%i%a!<%?$+$i7Q>5$7$^$9!#%0%k!<%W%Q%i%a!<%?$H$7$F@5$7$$$b$N$OA4$F!"%H(B +$B%T%C%/%Q%i%a!<%?$H$7$F$b@5$7$$$b$N$G$9(B(@pxref{Group Parameters})$B!#%(!<%8%'(B +$B%s%H$r;H$&$h$&$K$7$F$"$k$H!"$9$Y$F$N%(!<%8%'%s%H%Q%i%a!<%?(B (@ref{Category +Syntax} $B$N(B Agent Parameters $B$r;2>H(B ($BLuCm(B: $BI,MW$J$i(B Index $B$r;H$C$F(B)) $B$OM-(B +$B8z$J%H%T%C%/%Q%i%a!<%?$G$b$"$j$^$9!#(B + +$B$5$i$K!"0J2<$N%Q%i%a!<%?$O%H%T%C%/%Q%i%a!<%?$H$7$F$N$_M-8z$G$9(B: + +@table @code +@item subscribe +$B%H%T%C%/$G?7$7$$%0%k!<%W$r9XFI$7$F$$$k>l(B +$B9g(B (@pxref{Subscription Methods})$B!"(B@code{subscribe} $B%H%T%C%/%Q%i%a!<%?$O(B +$B$I$N%0%k!<%W$,$I$N%H%T%C%/$K9T$/$+$r;XDj$7$^$9!#CM$O$=$N%H%T%C%/$K9T$/%0(B +$B%k!<%W$K9gCW$9$k@55,I=8=$G$"$kI,MW$,$"$j$^$9!#(B + +@item subscribe-level +$B%H%T%C%/$G?7$7$$%0%k!<%W$r9XFI$7$F$$$k>l(B +$B9g(B (@code{subscribe} $B%Q%i%a!<%?$r;2>H(B)$B!"$=$N%0%k!<%W$N9XFIEY$N%l%Y%k(B +$B$O(B @code{gnus-level-default-subscribed} $B$NBe$o$j(B +$B$K(B @code{subscribe-level} $B%H%T%C%/%Q%i%a!<%?$NCM$K$J$j$^$9!#(B +@end table + +$B%0%k!<%W%Q%i%a!<%?$O(B ($B$b$A$m$s(B) $B%H%T%C%/%Q%i%a!<%?$h$j$bM%@h$5$l!"I{%H%T%C(B +$B%/$N%H%T%C%/%Q%i%a!<%?$O?F%H%T%C%/$N%H%T%C%/%Q%i%a!<%?$h$j$bM%@h$5$l$^$9!#(B +$BJ,$+$k$h$M!#$4$/IaDL$N7Q>5%k!<%k$G$9(B ($B%k!<%k(B (@dfn{Rules}) $B$O$3$3$G$OL>(B +$B;l$G$"$C$F!"F0;l$N!V@~$r0z$/!W$G$O$"$j$^$;$s!#$3$N%k!<%k$K$OH?BP$7$?$/$J(B +$B$k$+$bCN$l$J$$$1$I!"$=$l$O$4<+M3$K(B)$B!#(B + +@example +@group +Gnus + Emacs + 3: comp.emacs + 2: alt.religion.emacs + 452: alt.sex.emacs + $BB)H4$-(B + 452: alt.sex.emacs + 0: comp.talk.emacs.recovery + $B$=$NB>(B + 8: comp.binaries.fractals + 13: comp.sources.unix + 452: alt.sex.emacs +@end group +@end example + +@samp{Emacs} $B%H%T%C%/$O%H%T%C%/%Q%i%a!<(B +$B%?(B @code{(score-file . "emacs.SCORE")} $B$r;}$C$F$$$^$9!#(B +@samp{$BB)H4$-(B} $B%H%T%C%/$O%H%T%C%/%Q%i%a!<(B +$B%?(B @code{(score-file . "relief.SCORE")} $B$r;}$A!"(B +@samp{$B$=$NB>(B} $B%H%T%C%/$O%H%T%C%/%Q%i%a!<(B +$B%?(B @code{(score-file . "emacs.SCORE")} $B$r;}$C$F$$$^$9!#(B +$B$5$i$K!"(B@samp{alt.religion.emacs} $B$O%0%k!<%W%Q%i%a!<(B +$B%?(B @code{(score-file . "religion.SCORE")} $B$r;}$C$F$$$^$9!#(B + +$B$5$F!"$3$3$G(B @samp{$BB)H4$-(B} $B%H%T%C%/$N(B @samp{alt.sex.emacs} $B%0%k!<%W$KF~$C(B +$B$?$H$-!"(B@file{relief.SCORE} $B$,4pK\%9%3%"%U%!%$%k$H$J$j$^$9!#$b(B +$B$7(B @samp{Emacs} $B%H%T%C%/$NF1$8%0%k!<%W$KF~$k$H!"(B@file{emacs.SCORE} $B$,4p(B +$BK\%9%3%"%U%!%$%k$K$J$k$G$7$g$&!#(B +@samp{alt.religion.emacs} $B%0%k!<%W$KF~$l$P!"(B@file{religion.SCORE} $B$,4pK\(B +$B%9%3%"%U%!%$%k$K$J$k$G$7$g$&!#(B + +$B$3$l$C$F$H$C$F$b4JC1$G<+L@$N$3$H$N$h$&$K8+$($k$G$7$g(B? $B$^$"!"$=$NDL$j$G$9!#(B +$B$G$9$,LdBj$,$"$k>l9g$b$"$j$^$9!#FC$K(B@code{total-expiry} $B%Q%i%a!<%?$K4X$7(B +$B$F$G$9!#Nc$($P$"$k%a!<%k%0%k!<%W$rFs$D$N%H%T%C%/$NCf$K!"0lJ}(B +$B$O(B @code{total-expiry} $B$"$j$G!"$b$&0lJ}$O$=$l$J$7$G;}$C$F$$$k$H$7$^$7$g(B +$B$&!#$3$3$G(B @kbd{M-x gnus-expire-all-expirable-groups} $B$rl9g$K$O==J,Cm0U$7$J$1$l$P$J$j$^$;$s!#(B + +@node Misc Group Stuff +@section $B$=$NB>$N%0%k!<%W4XO"(B + +@menu +* Scanning New Messages:: Gnus $B$K?7$7$$%a%C%;!<%8$,E~Ce$7$?$+$I$&$+$rJ9$/(B +* Group Information:: $B%0%k!<%W$H(B Gnus $B$K4X$9$k>pJs$H%X%k%W(B +* Group Timestamp:: Gnus $B$K:G8e$K$$$D%0%k!<%W$rFI$s$@$+$r5-O?$5$;$k(B +* File Commands:: Gnus $B$N%U%!%$%k$NFI$_=q$-(B +* Sieve Commands:: Sieve $B%9%/%j%W%H$N4IM}(B +@end menu + +@table @kbd +@item ^ +@kindex ^ ($B%0%k!<%W(B) +@findex gnus-group-enter-server-mode +$B%5!<%P%P%C%U%!%b!<%I$KF~$k(B (@code{gnus-group-enter-server-mode})$B!#(B +@xref{Server Buffer}. + +@item a +@kindex a ($B%0%k!<%W(B) +@findex gnus-group-post-news +$B%a%C%;!<%8(B ($B%G%#%U%)%k%H$O%K%e!<%9(B) $B$N:n@.$r3+;O$7$^(B +$B$9(B (@code{gnus-group-post-news})$B!#$b$7@\F,<-$,M?$($i$l$?$i8=:_0LCV$N%0%k!<(B +$B%W$KEj9F$7$^$9!#$b$7@\F,<-$,(B 1 $B$@$C$?$i!"$I$N%0%k!<%W$KEj9F$9$k$+$r?R$M(B +$B$^$9!#$3$N4X?t$NL>A0$+$iO"A[$5$l$k$3$H$H$ON"J"$K!"@\F,<-$G%a!<%k%0%k!<%W(B +$B$,;XDj$5$l$?>l9g$O!"%K%e!<%9$NBe$o$j$K%a!<%k$NMM<0$,MQ0U$5$l$^$9!#(B +@xref{Composing Messages}. + +@item m +@kindex m ($B%0%k!<%W(B) +@findex gnus-group-mail +$B%a!<%k$r$I$3$+$KAw$j$^$9(B (@code{gnus-group-mail})$B!#$b$7@\F,<-$,M?$($i$l(B +$B$?$i8=:_0LCV$N%0%k!<%W$NEj9FMM<0(B (posting style) $B$r;H$$$^$9!#$b$7@\F,<-(B +$B$,(B 1 $B$@$C$?$i!"$I$N%0%k!<%W$NEj9FMM<0$r;H$&$+$r?R$M$^$9!#(B +@xref{Composing Messages}. + +@item i +@kindex i ($B%0%k!<%W(B) +@findex gnus-group-news +$B%K%e!<%9$N:n@.$r3+;O$7$^$9(B (@code{gnus-group-news})$B!#$b$7@\F,<-$,M?$($i(B +$B$l$?$i8=:_0LCV$N%0%k!<%W$KEj9F$7$^$9!#$b$7@\F,<-$,(B 1 $B$@$C$?$i!"$I$N%0%k!<(B +$B%W$KEj9F$9$k$+$r?R$M$^$9!#(B@xref{Composing Messages}. + +$B$3$N4X?t$O!"$?$H$(%a!<%k%0%k!<%W$G;H$o$l$?$H$7$F$b!"(B +$B@\%;!<%V$5$l$^$9!#BP1~$9$k%P%C%/%(%s%I$,Ej9F$N$?$a$N%a%=%C(B +$B%I(B (request-post method) $B$r;}$C$F$$$J$1$l$P$J$j$^$;$s$,!#(B +@end table + +$B0J2<$O%0%k!<%W%P%C%U%!$N$?$a$NJQ?t$G$9(B: + +@table @code +@item gnus-group-mode-hook +@vindex gnus-group-mode-hook +$B%0%k!<%W%P%C%U%!$,:n@.$5$l$?;~$K8F$S=P$5$l$^$9!#(B + +@item gnus-group-prepare-hook +@vindex gnus-group-prepare-hook +$B%0%k!<%W%P%C%U%!$,@8@.$5$l$?$"$H$K8F$S=P$5$l$^$9!#$3$l$O%P%C%U%!$r2?$+JQ(B +$B$J!"<+A3$8$c$J$$J}K!$G=$@5$7$?$$$H$-$K;H$o$l$k$+$b$7$l$^$;$s!#(B + +@item gnus-group-prepared-hook +@vindex gnus-group-prepare-hook +$B%0%k!<%W%P%C%U%!$,@8@.$5$l$?8e$N0lHV:G8e$K8F$S=P$5$l$^$9!#Nc$($P%]%$%s%H(B +$B$r$I$3$+$K0\F0$5$;$?$$$H$-$J$I$K;H$($^$9!#(B + +@item gnus-permanently-visible-groups +@vindex gnus-permanently-visible-groups +$B$3$N@55,I=8=$K%^%C%A$9$k%0%k!<%W$O!"$=$l$,6u$G$"$k$+$I$&$+$K4X$o$i$:!">o(B +$B$K%0%k!<%W%P%C%U%!$KI=<($5$l$^$9!#(B + +@item gnus-group-name-charset-method-alist +@vindex gnus-group-name-charset-method-alist +$B%0%k!<%WL>MQ$NA*BrJ}K!$HJ8;z=89g$NO"A[%j%9%H$G$9!#$3$l$O1Q;z$G$O$J$$%0%k!<(B +$B%WL>$rI=<($9$k$?$a$K;H$$$^$9!#(B + +$BNc(B: +@lisp +(setq gnus-group-name-charset-method-alist + '(((nntp "news.com.cn") . cn-gb-2312))) +@end lisp + +@item gnus-group-name-charset-group-alist +@cindex UTF-8 group names +@vindex gnus-group-name-charset-group-alist +$B%0%k!<%WL>MQ$N%0%k!<%WL>$N@55,I=8=$HJ8;z=89g$NO"A[%j%9%H$G$9!#$3$l$O1Q;z(B +$B$G$O$J$$%0%k!<%WL>$rI=<($9$k$?$a$K;H$$$^$9!#%G%#%U%)%k%HCM$O!"(BUTF-8 $B$,%5(B +$B%]!<%H$5$l$F$$$k>l9g$O(B @code{((".*" utf-8))}$B!"$=$l0J30$N>l9g(B +$B$O(B @code{nil} $B$G$9!#(B + +$BNc(B: +@lisp +(setq gnus-group-name-charset-group-alist + '(("\\.com\\.cn:" . cn-gb-2312))) +@end lisp +@end table + +@node Scanning New Messages +@subsection $B?7Ce%a%C%;!<%8$rC5$9(B +@cindex new messages +@cindex scanning new news + +@table @kbd +@item g +@kindex g ($B%0%k!<%W(B) +@findex gnus-group-get-new-news +@c @icon{gnus-group-get-new-news} +$B%5!<%P$N?7Ce5-;v$r%A%'%C%/$7$^$9!#?t;z%W%l%U%#%C%/%9$r;HMQ$9$k$H!"$3$NL?(B +$BNa$O0z?t(B @var{arg} $B$+$=$l$h$j>.$5$$%l%Y%k$N%0%k!<%W$N$_$r%A%'%C%/$7$^(B +$B$9(B (@code{gnus-group-get-new-news})$B!#?t;z0J30$N%W%l%U%#%C%/%9$rM?$($k$H!"(B +$B$3$NL?Na$O$=$N%P%C%/%(%s%I$+$i%"%/%F%#%V%U%!%$%k$r6/@)E*$KA4ItFI$_D>$7$^(B +$B$9!#(B + +@item M-g +@kindex M-g ($B%0%k!<%W(B) +@findex gnus-group-get-new-news-this-group +@vindex gnus-goto-next-group-when-activating +@c @icon{gnus-group-get-new-news-this-group} +$B8=:_$N%0%k!<%W$K?7Ce5-;v$,$"$k$+$I$&$+$r%A%'%C%/$7$^(B +$B$9(B (@code{gnus-group-get-new-news-this-group})$B!#(B +@code{gnus-goto-next-group-when-activating} $B$O$3$NL?Na$,r7o$KA4$F$N%0%k!<%W$r5/F0$7$^$9(B (@code{gnus-activate-all-groups})$B!#(B + +@item R +@kindex R ($B%0%k!<%W(B) +@cindex restarting +@findex gnus-group-restart +Gnus $B$r%j%9%?!<%H$7$^$9(B (@code{gnus-group-restart})$B!#$3$l(B +$B$O(B @file{.newsrc} $B%U%!%$%k$r%;!<%V$7!"A4$F$N%5!<%P$N@\B3$rJD$8!"A4$F(B +$B$N(B Gnus $B%i%s%?%$%`JQ?t$r%/%j%"$7$?8e!"(BGnus $B$r$b$&0lEY:G=i$+$i3+;O$7$^$9!#(B +@end table + +@vindex gnus-get-new-news-hook +@code{gnus-get-new-news-hook} $B$O?7Ce%K%e!<%9$r%A%'%C%/$9$kD>A0$KpJs(B +@cindex group information +@cindex information on groups + +@table @kbd +@item H f +@kindex H f ($B%0%k!<%W(B) +@findex gnus-group-fetch-faq +@vindex gnus-group-faq-directory +@cindex @acronym{FAQ} +@cindex ange-ftp +$B8=:_$N%0%k!<%W$N(B @acronym{FAQ} $B$ro%j%b!<%H%^%7%s>e$N%G%#%l%/%H%j$G$9!#$3$NJQ?t$O%G%#%l%/(B +$B%H%j$N%j%9%H$G$"$C$F$b9=$$$^$;$s!#$3$N>l9g!"$3$N%3%^%s%I$K%W%l%U%#%C%/%9(B +$B$rM?$($k$3$H$G$$$/$D$+$N%5%$%H$NCf$+$iA*$V$3$H$,$G$-$^$9!#%U%!%$%k$Nl9g!"(B +Gnus $B$O(B @code{gnus-group-faq-directory} $B$NCM$rA4$F!"0l$D0l$D%*!<%W%s$7$F(B +$B$_$h$&$H$7$^$9!#(B + +@item H c +@kindex H c ($B%0%k!<%W(B) +@findex gnus-group-fetch-charter +@vindex gnus-group-charter-alist +@cindex charter +$B8=:_$N%0%k!<%W$N7{>O$r(B web $B%V%i%&%6$G3+$3$&$H$7$^(B +$B$9(B (@code{gnus-group-fetch-charter})$B!#@\F,0z?t$,M?$($i$l$k$H%0%k!<%WL>$r(B +$B?R$M$^$9!#(B + +Gnus $B$O(B @code{gnus-group-charter-alist} $B$r;H$C$F7{>O$N=j:_$rC5$7$^$9!#=j(B +$B:_$,$o$+$i$J$+$C$?$i!"(BGnus $B$O$=$N%0%k!<%W$N%3%s%H%m!<%k%a%C%;!<%8$rO$r4^$s$G$$$k$3$H$,$"$j$^$9$+$i!#(B + +@item H C +@kindex H C ($B%0%k!<%W(B) +@findex gnus-group-fetch-control +@vindex gnus-group-fetch-control-use-browse-url +@cindex control message +$B$=$N%0%k!<%W$N%3%s%H%m!<%k%a%C%;!<%8$r(B @code{ftp.isc.org} $B$N5-O?8K$+$i$r?R$M$^$9!#(B + +@code{gnus-group-fetch-control-use-browse-url} $B$,Hs(B-@code{nil} $B$@$C$?$i!"(B +Gnus $B$O(B @code{browse-url} $B$r;H$C$F%3%s%H%m!<%k%a%C%;!<%8$r3+$-$^$9!#$=$&(B +$B$G$J$$>l9g$O(B @code{ange-ftp} $B$r;H$C$FpJs$O$5$^$6$^$JJ}K!$GI=<($G$-$^$9!=!=$b$C$H$b4JC1$J$N$O!"%0%k!<%W9T(B +$B%U%)!<%^%C%H$G(B @samp{%d} $B;XDj$r;H$&J}K!$G$9(B: + +@lisp +(setq gnus-group-line-format + "%M\%S\%p\%P\%5y: %(%-40,40g%) %d\n") +@end lisp + +$B$3$N7k2L$H$7$F!"3F9T$O0J2<$N$h$&$KI=<($5$l$^$9(B: + +@example +* 0: mail.ding 19961002T012943 + 0: custom 19961002T012713 +@end example + +$B8+$FJ,$+$k$H$*$j!"F|IU$O%3%s%Q%/%H$J(B ISO 8601 $B7A<0$GI=<($5$l$^$9!#(B +$B$3$l$G$O$A$g$C$H$"$s$^$j$J$N$G!"0J2<$N$h$&$J46$8$K$9$k$HF|IU$@$1(B +$B$rI=<($G$-$^$9!#(B + +@lisp +(setq gnus-group-line-format + "%M\%S\%p\%P\%5y: %(%-40,40g%) %6,6~(cut 2)d\n") +@end lisp + +$B$b$C$H6E$C$?F|IU$N7A<0$r$*K>$_$J$i!"%f!<%6!C$5$l$F$7$^$&$3$H$O$"$j$^$;$s!#(B + +@vindex gnus-sieve-crosspost +$BJQ?t(B @code{gnus-sieve-crosspost} $B$O(B Sieve $B%9%/%j%W%H$,$I$N$h$&$K:n$i$l$k(B +$B$+$r@)8f$7$^$9!#$b$7Hs(B-@code{nil} ($B%G%#%U%)%k%H(B) $B$@$C$?$i5-;v$O5,B'$K%^%C(B +$B%A$9$k$9$Y$F$N%0%k!<%W$KCV$+$l$^$9!#$=$&$G$J$$>l9g!"5-;v$O:G=i$N5,B'$K%^%C(B +$B%A$9$k%0%k!<%W$@$1$KCV$+$l$^$9!#Nc$($P%0%k!<%W%Q%i%a!<%?(B @samp{(sieve +address "sender" "owner-ding@@hpc.uh.edu")} $B$O!"(B +@code{gnus-sieve-crosspost} $B$,(B @code{nil} $B$@$C$?$i0J2<$N(B Sieve $B%3!<%I$N(B +$BCGJR$r:n$j$^$9!#(B(@code{gnus-sieve-crosspost} $B$,Hs(B-@code{nil} $B$@$C$?>l9g(B +$B$O!"9T$,4^$`(B @code{stop} $B$N8F$S=P$7$,:o=|$5$l$k$3$H0J30$OF1$8$G$9!#(B) + +@example +if address "sender" "owner-ding@@hpc.uh.edu" @{ + fileinto "INBOX.ding"; + stop; +@} +@end example + +@xref{Top, Emacs Sieve, Top, sieve, Emacs Sieve}. + +@table @kbd +@item D g +@kindex D g ($B%0%k!<%W(B) +@findex gnus-sieve-generate +@vindex gnus-sieve-file +@cindex generating sieve script +@code{sieve} $B%0%k!<%W%Q%i%a!<%?$+$i(B Sieve $B%9%/%j%W%H$r:F:n@.$7$F!"(B +@code{gnus-sieve-file} $B$K=q$-9~$_$^$9!#0JA0$NFbMF$OJ]B8$5$l$^$;$s!#(B + +@item D u +@kindex D u ($B%0%k!<%W(B) +@findex gnus-sieve-update +@vindex gnus-sieve-file +@cindex updating sieve script +@code{sieve} $B%0%k!<%W%Q%i%a!<%?$r85$K(B @code{gnus-sieve-file} $B$N(B Gnus $B$,(B +$B4IM}$7$F$$$kItJ,$r:F:n@.$7$F%U%!%$%k$K%;!<%V$7!"(B@code{sieveshell} $B%W%m%0(B +$B%i%`$r;H$C$F%5!<%P!<$K%"%C%W%m!<%I$7$^$9!#(B +@end table + +@node Summary Buffer +@chapter $B35N,%P%C%U%!(B +@cindex summary buffer + +$B35N,%P%C%U%!(B (summary buffer) $B$G$O$=$l$>$l$N5-;v$,0l9T$GI=<($5$l$^$9!#$=(B +$B$NCf$rF0$-2s$j!"5-;v$rFI$_!"Ej9F$7!"JVEz$r$9$k$3$H$,$G$-$^$9!#(B + +$B35N,%P%C%U%!$K0\$k0lHVIaDL$NJ}K!$O!"%0%k!<%W%P%C%U%!$G%0%k!<%W$rA*Br$9$k(B +$B$3$H$G$9(B (@pxref{Selecting a Group})$B!#(B + +$B35N,%P%C%U%!$OK>$`$@$1$?$/$5$s3+$$$?>uBV$K$7$F$*$/$3$H$,$G$-$^$9!#(B + +@menu +* Summary Buffer Format:: $B35N,%P%C%U%!$N304Q$r7hDj$9$k(B +* Summary Maneuvering:: $B35N,%P%C%U%!$rF0$-2s$k(B +* Choosing Articles:: $B5-;v$rFI$`(B +* Paging the Article:: $BFI$s$G$$$k5-;v$r%9%/%m!<%k$9$k(B +* Reply Followup and Post:: $B5-;v$rEj9F$9$k(B +* Delayed Articles:: $B5-;v$r8e$GAw$k(B +* Marking Articles:: $B5-;v$K4{FI$d4|8B@Z$l:o=|2DG=Ey$N0u$rIU$1$k(B +* Limiting:: $B35N,%P%C%U%!$K@)8B$r2C$($k$3$H$,$G$-$k(B +* Threading:: $B%9%l%C%I$,$I$N$h$&$K:n$i$l$k$+(B +* Sorting the Summary Buffer:: $B%9%l%C%I$H5-;v$,$I$N$h$&$KJB$S$+$($i$l$k$+(B +* Asynchronous Fetching:: Gnus $B$O5-;v$r@h$KC5n$7$J$/$5$;$k(B +* Article Backlog:: $B4{$KFI$s$@5-;v$r;D$7$F$*$/(B +* Saving Articles:: $B5-;v$NJ]B8$r%+%9%?%^%$%:$9$kJ}K!(B +* Decoding Articles:: Gnus $B$O0lO"$N(B (uu)encode $B$5$l$?5-;v$r07$($k(B +* Article Treatment:: $B5-;v%P%C%U%!$O$*K>$_$I$*$j$KL\Cc6lCc$K$G$-$k(B +* MIME Commands:: $B5-;v$N(B MIME $B$N$"$l$3$l$rA`:n$9$k(B +* Charsets:: $BJ8;z%;%C%H$N$3$H(B +* Article Commands:: $B5-;v%P%C%U%!$G$$$m$$$m$J$3$H$r$9$k(B +* Summary Sorting:: $B$$$m$$$m$JJ}K!$G35N,%P%C%U%!$rJB$YBX$($k(B +* Finding the Parent:: $B;R5-;v$,C5$;$J$$$C$F(B? $B?F5-;v$r$N$I$N>l=j$K$b9g$o$J$+$C$?$b$N(B +* Exiting the Summary Buffer:: $B%0%k!<%W%P%C%U%!$KLa$k!"$^$?$O8=:_$N%0%k!<%W$r:F$SA*Br$9$k(B +* Crosspost Handling:: $B%/%m%9%]%9%H$5$l$?5-;v$,$I$N$h$&$K07$o$l$k$+(B +* Duplicate Suppression:: $B%/%m%9%]%9%H$N07$$$K<:GT$7$?$H$-$NBeBXZ(B +* Mailing List:: $B%a!<%j%s%0%j%9%H%^%$%J!<%b!<%I(B +@end menu + +@node Summary Buffer Format +@section $B35N,%P%C%U%!$NMM<0(B +@cindex summary buffer format + +@iftex +@iflatex +\gnusfigure{The Summary Buffer}{180}{ +\put(0,0){\epsfig{figure=ps/summary,width=7.5cm}} +\put(445,0){\makebox(0,0)[br]{\epsfig{figure=ps/summary-article,width=7.5cm}}} +} +@end iflatex +@end iftex + +@menu +* Summary Buffer Lines:: $B35N,%P%C%U%!$,$I$N$h$&$K8+$($k$Y$-$+$r;XDj$G$-$k(B +* To From Newsgroups:: $B<+J,<+?H$NL>A0$rI=<($7$J$$J}K!(B +* Summary Buffer Mode Line:: $B%b!<%I9T$N8+$(J}$r7h$a$i$l$k(B +* Summary Highlighting:: $B35N,%P%C%U%!$r$-$l$$$GAGE($K$9$k(B +@end menu + +@findex std11-extract-address-components +@findex mail-extract-address-components +@findex gnus-extract-address-components +@vindex gnus-extract-address-components +Gnus $B$OJQ?t(B @code{gnus-extract-address-components} $B$NCM$r(B @code{From} $B%X%C(B +$B%@!<$NL>A0$H%"%I%l%9$NItJ,$ro$KB.$/F0:n$7$^$9!#(B +@code{mail-extract-address-components} $B$ONI$/F0:n$7$^$9$,!"$d$dCY$/$J$j(B +$B$^$9!#$=$7$F!"(B@code{std11-extract-address-components} $B$O$H$F$bNI$/F0:n$7(B +$B$^$9$,!"CY$/$J$j$^$9!#%G%#%U%)%k%H$N4X?t$O(B 5% $B$N3d9g$G4V0c$C$FEz$($^$9!#(B +$B$b$7$3$l$K2fK}$J$i$J$$$N$G$"$l$P!"B>$N4X?t$rBe$o$j$K;H$&$3$H$,$G$-$^$9(B: + +@lisp +(setq gnus-extract-address-components + 'mail-extract-address-components) +@end lisp + +@vindex gnus-summary-same-subject +@code{gnus-summary-same-subject} $B$O:#FI$s$G$$$k5-;v$,!"$=$NA0$N5-;v$HF1(B +$B$8I=Bj(B (subject) $B$G$"$k$3$H$r<($9J8;zNs$G$9!#$3$NJ8;zNs$O;EMM$,$3$l$rMW(B +$B5a$9$k$H$-$K;H$o$l$^$9!#=i4|@_Dj$G$O(B @code{""} $B$G$9!#(B + +@node Summary Buffer Lines +@subsection $B35N,%P%C%U%!$N9T(B + +@vindex gnus-summary-line-format +$BJQ?t(B @code{gnus-summary-line-format} $B$NCM$rJQ$($k$3$H$K$h$C$F!"35N,%P%C(B +$B%U%!$G$N9T$NMM<0(B (format) $B$rJQ99$9$k$3$H$,$G$-$^$9!#$$$/$D$+$N3H(B +$BD%(B (@pxref{Formatting Variables}) $B$r=|$$$F!"IaDL$N(B @code{format} $BJ8;zNs(B +$B$HF1$8$h$&$KF0:n$7$^$9!#(B + +$B9T$K$O>o$K%3%m%s$+%]%$%s%H0LCV$N%^!<%+!<$,B8:_$7$F$$$J$1$l$P$J$j$^$;$s!#(B +$BA`:n$7$?8e$K!"%+!<%=%k$O$$$D$b%3%m%s$+%]%$%s%H0LCV$N%^!<%+!<$N>l=j$K0\F0(B +$B$7$^$9!#(B($B$b$A$m$s!"$3$NF0:n$rJQ$($k$3$H$,$G$-$J$$$H$7$?$i(B Gnus $B$K$O$"$k(B +$B$^$8$-$3$H$G$9!#4X?t(B @code{gnus-goto-colon} $B$r!"$"$J$?$,9%$-$J%+!<%=%k$N(B +$BF0$-$K$J$k$h$&$K!"?7$?$K=q$1$PNI$$$N$G$9!#(B) @xref{Positioning Point}. + +$B=i4|CM$NJ8;zNs$O(B @samp{%U%R%z%I%(%[%4L: %-23,23f%]%) %s\n} $B$G$9!#(B + +$B0J2<$NMM<0;X<(J8;z$H3HD%MM<0;X<($r;H$&$3$H$,$G$-$^$9(B: + +@table @samp +@item N +$B5-;v?t!#(B +@item S +$BI=Bj$NJ8;zNs!#(B@code{gnus-list-identifiers} $B$N@_Dj$K$h$C$F%a!<%j%s%0%j%9(B +$B%H$NI8<1$,:o=|$5$l$^$9!#(B@xref{Article Hiding}. +@item s +$B%9%l%C%I(B (thread) $B$N4p5-;v$G$"$k$H$-$+D>A0$N5-;v$,0c$&I=Bj$N$H$-$O$=$NBj(B +$BL>$G!"$=$l0J30$O(B @code{gnus-summary-same-subject}$B!#(B +(@code{gnus-summary-same-subject} $B$N=i4|CM$O(B @code{""}$B!#(B) +@item F +$B40A4$J(B @code{From} $BMs!#(B +@item n +$BL>A0(B (@code{From} $BMs$h$j(B)$B!#(B +@item f +$BL>A0!"(B@code{To} $B%X%C%@!<$+(B @code{Newsgroups} $B%X%C%@!<$G(B +$B$9(B (@pxref{To From Newsgroups})$B!#(B +@item a +$BL>A0(B (@code{From} $BMs$h$j(B)$B!#$3$l$H(B @code{n} $B$H$N0c$$$O!"$3$l$OJQ(B +$B?t(B @code{gnus-extract-address-components} $B$G;XDj$5$l$F$$$k4X?t$r;H$C$FL>(B +$BA0$rA0(B (@code{From} $BMs$h$j(B)$B!#$3$l$O(B @code{a} $B$HF1$8$h$&$KF0:n$7$^$9!#(B +@item L +$B5-;v$N9T?t!#(B +@item c +$B5-;v$NJ8;z?t!#$3$NL>A0;XDj;R$O(B (nnfolder $B$N$h$&$J(B) $B$$$/$D$+$NA*BrJ}K!$r(B +$B%5%]!<%H$7$^$;$s!#(B +@item k +$B@07A$5$l$?5-;v$NJ8;z?t(B; $BNc$($P(B @samp{1.2k} $B$d(B @samp{0.4M}$B!#(B +@item I +$B%9%l%C%I$N%l%Y%k$K$h$k;z2<$2(B (@pxref{Customizing Threading})$B!#(B +@item B +$BJ#;($J(B trn $BMM<0$N%9%l%C%ILZ(B (tree)$B!#$I$N$h$&$J1~Ez$,9T$J$o$l$?$+$N5-O?$r(B +$BI=<($7$^$9!#%9%l%C%I$O$3$N$h$&$KIA$+$l$k$G$7$g$&(B: + +@example +> ++-> +| +-> +| | \-> +| | \-> +| \-> ++-> +\-> +@end example + +$B0J2<$N%*%W%7%g%s$G8+1I$($r%+%9%?%^%$%:$9$k$3$H$,$G$-$^$9!#%G%#%U%)%k%H(B +$B$N(B @acronym{ASCII} $BJ8;z$r@~IA2hMQ$N?^0F$GCV$-49$($k$3$H$K$h$C$F!"%9%l%C(B +$B%II=<($r$r;H(B +$B$$$^$9!#%G%#%U%)%k%H$O(B @samp{> } $B$G$9!#(B + +@item gnus-sum-thread-tree-false-root +@vindex gnus-sum-thread-tree-false-root +$B%9%l%C%I$N$K$;$N:,$K;H$o$l$^$9(B (@pxref{Loose Threads})$B!#(B@code{nil} $B$@$C(B +$B$?$i!"Be$o$j$KBjL>$r;H$$$^$9!#%G%#%U%)%k%H$O(B @samp{> } $B$G$9!#(B + +@item gnus-sum-thread-tree-single-indent +@vindex gnus-sum-thread-tree-single-indent +$BC10l$N%a%C%;!<%8$N%9%l%C%I$K;H$o$l$^$9!#(B@code{nil} $B$@$C$?$i!"Be$o$j$KBj(B +$BL>$r;H$$$^$9!#%G%#%U%)%k%H$O(B @samp{} $B$G$9!#(B + +@item gnus-sum-thread-tree-vertical +@vindex gnus-sum-thread-tree-vertical +$B=D@~$NIA2h$K;H$o$l$^$9!#%G%#%U%)%k%H$O(B @samp{| } $B$G$9!#(B + +@item gnus-sum-thread-tree-indent +@vindex gnus-sum-thread-tree-indent +$B9T2<$2(B (indenting) $B$K;H$o$l$^$9!#%G%#%U%)%k%H$O(B @samp{ } $B$G$9!#(B + +@item gnus-sum-thread-tree-leaf-with-other +@vindex gnus-sum-thread-tree-leaf-with-other +$B7;Do$,$$$kMU$C$Q$K;H$o$l$^$9!#%G%#%U%)%k%H$O(B @samp{+-> } $B$G$9!#(B + +@item gnus-sum-thread-tree-single-leaf +@vindex gnus-sum-thread-tree-single-leaf +$B7;Do$,$$$J$$MU$C$Q$K;H$o$l$^$9!#%G%#%U%)%k%H$O(B @samp{\-> } $B$G$9!#(B +@end table + +@item T +$B5-;v$,K\5-;v$G$"$l$P2?$bI=<($;$:!"$=$&$G$J$$>l9g$O$?$/$5$s$N6uGr$G$9(B ($B8e(B +$B$N$b$N$r$9$Y$F2hLL$N30$KDI$$=P$7$F$7$^$$$^$9(B)$B!#(B +@item [ +$B3+$-3g8L!#IaDL$O(B @samp{[} $B$G$9$,!"M\;R5-;v$K$O(B @samp{<} $B$K$9$k$3$H$,$G$-(B +$B$^$9(B (@pxref{Customizing Threading})$B!#(B +@item ] +$BJD$83g8L!#IaDL$O(B @samp{[} $B$G$9$,!"M\;R5-;v$K$O(B @samp{<} $B$K$9$k$3$H$,$G$-(B +$B$^$9!#(B +@item > +$B$=$l$>$l$N%9%l%C%I$N%l%Y%k$KBP$7$F0l$D$N6uGr!#(B +@item < +$BFs==0z$/%9%l%C%I%l%Y%k$N6uGr!#(B +@item U +$BL$FI!#(B@xref{Read Articles}. + +@item R +$B$3$NJ6$i$o$7$$L>A0;XDj;R$O(B @dfn{secondary mark} $B$K$h$C$FDj5A$5$l$^$9!#$3(B +$B$N%^!<%/$O5-;v$,4{$KJVEz:Q$_$N$b$N$+!"%-%c%C%7%e$5$l$?$b$N$+!"$"$k$$$OJ](B +$BB8$5$l$?$b$N$+$rI=$7$^$9!#(B@xref{Other Marks}. + +@item i +$B?t;z$H$7$F$N%9%3%"(B (@pxref{Scoring})$B!#(B +@item z +@vindex gnus-summary-zcore-fuzz +$B$3$l$O!"(Bzcore $B$G=i4|@_Dj$N%l%Y%k$h$j$b>e$G$"$l$P(B @samp{+} $B$G!"=i4|@_Dj$N(B +$B%l%Y%k$h$j$b2<$G$"$l$P(B @samp{-} $B$G$9!#(B +@code{gnus-summary-default-score} $B$H$N:9(B +$B$,(B @code{gnus-summary-zcore-fuzz} $B$h$j$b>.$5$$$H!"$3$N;EMM$O;H$o$l$^$;$s!#(B +@item V +$B%9%l%C%IA4BN$N%9%3%"!#(B +@item x +@code{Xref}. +@item D +@code{$BF|IU(B} (@code{Date})$B!#(B +@item d +@code{DD-MM}$BMM<0$K$h$k(B@code{$BF|IU(B}$B!#(B +@item o +@var{YYYYMMDD}@code{T}@var{HHMMSS}$BMM<0$K$h$k(B@code{$BF|IU(B}$B!#(B +@item M +@code{Message-ID}. +@item r +@code{References}. +@item t +$B8=:_$NI{%9%l%C%I$N5-;v$N?t!#$3$N;EMM$r;H$&$H35N,%P%C%U%!$N@8@.$,4vJ,CY$/(B +$B$J$j$^$9!#(B +@item e +$B5-;v$K;R5-;v$,$"$k$H!"(B@samp{=} (@code{gnus-not-empty-thread-mark}) $B$,I=(B +$B<($5$l$^$9!#(B +@item P +$B9T?t!#(B +@item O +$B%@%&%s%m!<%I$N0u!#(B +@item &user-date; +$B7P2a;~4V$NMM<0!#$$$m$$$m$JMM<0$,(B @code{gnus-user-date-format-alist} $B$GDj(B +$B5A$5$l$F$$$^$9!#(B +@item u +$BMxMQ$N35N,;XDj$HF1MM$K35N,$KA^F~(B +$B$5$l$^$9!#(B +@end table + +@samp{%(} $B$H(B @samp{%)} $B$N4V$K$"$k%F%-%9%H$O!"$=$3$K%^%&%9$,$"$k$H$-(B +$B$K(B @code{gnus-mouse-face} $B$G%O%$%i%$%H$5$l$^$9!#$=$&$$$&NN0h$O0l$D$@$1$G(B +$B$9!#(B + +@samp{%U} ($B>uBV(B), @samp{%R} ($BJVEz:Q$_(B), @samp{%z} (zcore) $B$N07$$$K$O5$$r(B +$BIU$1$kI,MW$,$"$j$^$9!#8zN($N$?$a$K!"(BGnus $B$O$3$l$i$NJ8;z$,$I$N7e$K8=$l$k(B +$B$+$r7W;;$7!"!X%O!<%I!&%3!<%I!Y$7$^$9!#$3$l$O!"2DJQD9$N;EMM$N8e$G$O!"$3$l(B +$B$i$O0UL#$r;}$?$J$$$H$$$&$3$H$G$9!#$^$!!"$5$9$,$KBaJa$O$5$l$J$$$G$7$g$&$,!"(B +$B35N,%P%C%U%!$OJQ$K$J$j$^$9!#$=$l$G$b==J,Ha$7$$$G$7$g$&$1$I!#(B + +$B8-$$A*Br$O$3$l$i$N;XDj$r$G$-$k$@$1:8$K;}$C$F$/$k$3$H$G$9!#(B($B$G$b!"$=$&$$(B +$B$&$3$H$O$9$Y$F$KEv$F$O$^$k$N$G$O$J$$$G$7$g$&$+!#4WOC5YBj!#(B) + +$B$3$N@)8B$O>-Mh$NHG$G$OL5$/$J$k$+$bCN$l$^$;$s!#(B + +@node To From Newsgroups +@subsection To From Newsgroups +@cindex To +@cindex Newsgroups + +$B$$$/$D$+$N%0%k!<%W$G$O(B ($BFC$K%"!<%+%$%V%0%k!<%W(B), @code{From} $B%X%C%@!<$O(B +$B$"$^$j6=L#$r0z$-$^$;$s!#$=$3$NA4$F$N5-;v$O$"$J$?$K$h$C$F=q$+$l$?$b$N$G$9(B +$B$+$i!#Be$o$j$K!"(B@code{To} $B$d(B @code{Newsgroups} $B%X%C%@!<$N>pJs$rI=<($9$k(B +$B$?$a$K$O!";0$D$N$3$H$r7h$a$kI,MW$,$"$j$^$9(B: $B$I$N>pJs$r=8$a$k$+(B, $B$I$3$KI=(B +$B<($9$k$+(B, $B$$$DI=<($9$k$+!#(B + +@enumerate +@item +@vindex gnus-extra-headers +$BDI2C$N%X%C%@!<$N>pJs$O(B @code{gnus-extra-headers} $B$K$h$j@)8f$5$l$^$9!#$3(B +$B$l$O%X%C%@!<$N%7%s%\%k$N%j%9%H$G$9!#Nc$($P(B: + +@lisp +(setq gnus-extra-headers + '(To Newsgroups X-Newsreader)) +@end lisp + +$B$3$l$O!"(BGnus $B$,$3$l$i$N;0$D$N%X%C%@!<$r } $B$,!"(B@code{Newsgroups} $B$K$O(B @samp{=> } $B$,;H$o$l$^$9$,!"(B +@code{gnus-summary-to-prefix} $B$H(B @code{gnus-summary-newsgroup-prefix} $B$K(B +$B$h$C$F!"$=$l$i$NJ8;zNs$r%+%9%?%^%$%:$9$k$3$H$,$G$-$^$9!#(B + +@end enumerate + +@vindex nnmail-extra-headers +$B4XO"$7$?JQ?t$O(B @code{nnmail-extra-headers} $B$G!"(B +overview (@acronym{NOV}) $B%U%!%$%k$K$$$DDI2C$N%X%C%@!<$r4^$a$k$+$r@)8f$7(B +$B$^$9!#8E$$(B overview $B%U%!%$%k$,$"$k>l9g$O!"$3$NJQ?t$rJQ99$7$?8e$K%5!<%P!<(B +$B%P%C%U%!$K(B @kbd{^} $B$GF~$C$FE,@Z$J%a!<%k%5!<%P!<(B ($BNc$((B +$B$P(B nnml) $B$G(B @kbd{g} $B$r2!$7!":F@8@.$9$kI,MW$,$"$j$^$9!#(B + +@vindex gnus-summary-line-format +Gnus $B$K!"(B@code{gnus-summary-line-format} $BJQ?t$N(B @code{%n} $B;EMM(B +$B$r(B @code{%f} $B;EMM$KJQ99$9$k$3$H$G!"%G!<%?$rI=<($9$k$h$&$K;X<($9$kI,MW$,(B +$B$"$j$^$9!#(B + +$BMWLs$9$k$H!"IaDL$O0J2<$N$h$&$J$b$N$r(B @file{~/.gnus.el} $B$KCV$/$3$H$K$J$j(B +$B$^$9(B: + +@lisp +(setq gnus-extra-headers + '(To Newsgroups)) +(setq nnmail-extra-headers gnus-extra-headers) +(setq gnus-summary-line-format + "%U%R%z%I%(%[%4L: %-23,23f%]%) %s\n") +(setq gnus-ignored-from-addresses + "Your Name Here") +@end lisp + +($B>e5-$NCM$O(B Gnus $B$N%G%#%U%)%k%HCM$G$9!#$"$J$?$NLr$KN)$D$h$&$KJQ$($F2<$5(B +$B$$!#(B) + +$B%K%e!<%94IM}?M!"$^$?$O%K%e!<%94IM}?M$r@bF@$7$F%5%]!<%H$NDI2C$r$7$F$b$i$*(B +$B$&$H;W$C$F$$$k%f!<%6!<$N$_$J$5$s$X$N$4Cm0U(B: + +$B>e5-$N$3$H$O!":n@.$5$l$k(B @acronym{NOV} $B%U%!%$%k$rA`:n$G$-$k%a!<%k%0%k!<(B +$B%W$G$O$?$$$F$$$N>l9gLrN)$A$^$9!#$7$+$7!"4IM}?M$r@bF@$7$F(B ($BFC$K(B INN $B$NIa(B +$BDL$N$l$NMWAG$G$9(B: + +@table @samp +@item G +$B%0%k!<%WL>!#(B +@item p +$B@\F,8l$rA0!#(B +@item A +$B8=:_$N5-;vHV9f!#(B +@item z +$B8=:_$N5-;v%9%3%"!#(B +@item V +Gnus $B%P!<%8%g%s!#(B +@item U +$B$=$N%0%k!<%W$G$NL$FI5-;v$N?t!#(B +@item e +$B35N,%P%C%U%!$KI=<($5$l$F$$$J$$L$FI5-;v$N?t!#(B +@item Z +$BL$FI$HL$A*Br$N5-;v$N?t$H$H$b$KI=$5$l$kJ8;zNs$G!"L$FI$+$DL$A*Br$N5-;v$,$"(B +$B$k>l9g$O(B @samp{<%U(+%e) more>} $B$G!"L$FI5-;v$N$_$N>l9g(B +$B$O(B @samp{<%U more>} $B$G$9!#(B +@item g +$BC;=L%0%k!<%WL>!#Nc$($P!"(B@samp{rec.arts.anime} $B$O(B @samp{r.a.anime} $B$KC;=L(B +$B$5$l$^$9!#(B +@item S +$B8=:_$N5-;v$NI=Bj!#(B +@item u +$BMxMQA0(B (@pxref{Scoring})$B!#(B +@item d +$BJ]N15-;v$N?t(B (@pxref{Unread Articles})$B!#(B +@item t +$B2D;k0uIU$-5-;v$N?t(B (@pxref{Unread Articles})$B!#(B +@item r +$B$=$N0lO"$NF0:n$N4V$K4{FI$H$7$F0u$,$D$$$?5-;v$N?t!#(B +@item E +$B%9%3%"%U%!%$%k$K$h$C$FKu>C$5$l$?5-;v$N?t!#(B +@end table + +@node Summary Highlighting +@subsection $B35N,$N%O%$%i%$%H(B + +@table @code +@item gnus-visual-mark-article-hook +@vindex gnus-visual-mark-article-hook +$B$3$N%U%C%/$O5-;v$rA*Br$7$?8e$Kl9g$Ol9g$O score default) . bold)) +@end lisp + +$B$4A[A|$N$H$*$j!"$b$7(B @var{form} $B$,(B @code{nil} $B$G$J$$CM$rJV$9$H!"(B +@var{face} $B$,$=$N9T$KE,MQ$5$l$^$9!#(B +@end table + +@node Summary Maneuvering +@section $B35N,4V$N0\F0(B +@cindex summary movement + +$B$9$Y$F$ND>@\0\F0L?Na$O?tCM@\F,0z?t$r)$a$^$9!#$3$NJQ?t(B +$B$,(B @code{t} $B$Gl9g$H$7$F!"$3$NJQ?t(B +$B$,(B @code{quietly} $B$G$"$k$H!"(BGnus $B$O3NG'$r$;$:$K!"H$7$F$/$@$5$$!#(B + +@item gnus-auto-select-same +@vindex gnus-auto-select-same +@code{nil} $B$G$J$$$H!"$9$Y$F$N0\F0L?Na$O8=:_$N5-;v$HF1$8I=Bj$N5-;v$K0\F0(B +$B$7$h$&$H$7$^$9!#(B(@dfn{$BF1$8(B} $B$O$3$3$G$O(B @dfn{$BBgBNF1$8(B} $B$H$$$&0UL#$+$bCN$l(B +$B$^$;$s!#>\:Y$O(B @code{gnus-summary-gather-subject-limit} $B$r8+$F$/$@$5(B +$B$$(B (@pxref{Customizing Threading} $B$b;2>H$7$F$/$@$5$$(B)$B!#(B) $BF1$8I=Bj$N5-;v(B +$B$,L5$$$H$-$O:G=i$NL$FI5-;v$K0\F0$7$^$9!#(B + +$B$3$NJQ?t$O!"%9%l%C%II=<($r9T$C$F$$$k$H$-$O$"$^$jLr$KN)$?$J$$$G$7$g$&!#(B + +@item gnus-summary-check-current +@vindex gnus-summary-check-current +@code{nil} $B$G$J$$$H!"$9$Y$F$N!XL$FI!Y0\F0L?Na$O!"o$K??Cf$KJ]$A$^$9!#(B +$B$3$l$r$9$k$H!"$H$F$b$3$.$l$$$K$J$j$^$9$,!"CY$$%M%C%H%o!<%/@\B3$G$"$C$?$j!"(B +$BC1$K$3$N(B Emacsism $B$G$J$$9T0Y$r9%$-$K$J$l$J$$$N$G$"$l$P!"IaDL$N(B Emacs $B$N(B +$B%9%/%m!<%k$K$9$k$?$a$K!"$3$NJQ?t$r(B @code{nil} $B$K$9$k$3$H$,$G$-$^$9!#$3$l(B +$B$O35N,%P%C%U%!$N?eJ?J}8~$N??Cf$X$N:F0\F0$b6X;_$7$^$9$N$G!"Hs>o$KD9$$%9%l%C(B +$B%I$rFI$`$H$-$OITJX$+$b$7$l$^$;$s!#(B +@end table + +@node Choosing Articles +@section $B5-;v$NA*Br(B +@cindex selecting articles + +@menu +* Choosing Commands:: $B5-;v$rA*Br$9$k$?$a$NL?Na(B +* Choosing Variables:: $B$3$l$i$NL?Na$K1F6A$r5Z$\$9JQ?t(B +@end menu + +@node Choosing Commands +@subsection $BL?Na$NA*Br(B + +$B0J2<$N0\F0%3%^%s%I$O$I$l$b?tCM@\F,0z?t$rH$7$F2<$5$$!#(B + +@table @kbd +@item SPACE +@kindex SPACE ($B35N,(B) +@findex gnus-summary-next-page +$B8=:_$N5-;v$+!"$=$l$,4{$KFI$^$l$F$$$k>l9g$OA0$N5-;v$K0\F0$7$^$9(B (@code{gnus-summary-goto-last-article})$B!#(B + +@item G o +@kindex G o ($B35N,(B) +@findex gnus-summary-pop-article +$B35N,$NMzNr(B (history) $B$+$i:G8e$N5-;v$r0l$De$NL?Na$H0c$&$N$O!"(B +@kbd{l} $B$,:G=*Fs$D$N5-;v$N4V$r0\F0$9$k$N$KBP$7$F!"$3$l$O9%$-$J$@$1A0$N5-(B +$B;v$rMzNr$+$iA*$S=P$9$3$H$,$G$-$kE@$G$9!#2?$i$+$N$3$l$K4X78$7$?$3$H(B +$B$O(B ($B$b$7$3$l$i$NL?Na$r$?$/$5$s;H$&$N$G$"$l$P(B)$B!"(B +@ref{Article Backlog} $B$r;2>H$7$F$/$@$5$$!#(B + +@item G j +@item j +@kindex j ($B35N,(B) +@kindex G j ($B35N,(B) +@findex gnus-summary-goto-article +$B5-;vHV9f$+(B @code{Message-ID} $B$r?R$M!"$=$l$+$i$=$N5-;v$K9T$/!#(B +(@code{gnus-summary-goto-article})$B!#(B +@end table + +@node Choosing Variables +@subsection $BA*$V$?$a$NJQ?t(B + +$B5-;v$r0\F0$7!"A*Br$9$k$N$K4XO"$7$?$$$/$D$+$NJQ?t(B: + +@table @code +@item gnus-auto-extended-newsgroup +@vindex gnus-auto-extend-newsgroup +$B$3$NJQ?t$,(B @code{nil} $B$G$J$$$H!"$9$Y$F$N0\F0L?Na$O!"$b$7$=$N5-;v$,35N,%P%C(B +$B%U%!$KI=<($5$l$F$$$J$$>l9g$G$b!"A0(B ($B$b$7$/$Oo$K8F$P$l$^$9!#=i4|@_Dj$G$O!"A*Br$5$l(B +$B$?5-;v$N2<$K1#$l$F$$$k%9%l%C%I$r8+$;$k$h$&$K$J$C$F$$$^$9!#$"$J$?$,FI$s$@(B +$B$=$l$>$l$N5-;v$r%(!<%8%'%s%H$K%;!<%V$5$;$?$$>l9g$O!"$3$N%U%C%/(B +$B$K(B @code{gnus-agent-fetch-selected-article} $B$rDI2C$9$k$3$H$G!"$=$l$r9T$J(B +$B$&$G$7$g$&!#(B + +@item gnus-mark-article-hook +@vindex gnus-mark-article-hook +@findex gnus-summary-mark-unread-as-read +@findex gnus-summary-mark-read-and-unread-as-read +@findex gnus-unread-mark +$B$3$N%U%C%/$O5-;v$,A*Br$5$l$?$H$-$K>o$K8F$P$l$^$9!#$=$l$O5-;v$K4{FI$N0u$r(B +$BIU$1$k$?$a$K$"$j$^$9!#=i4|CM(B +$B$O(B @code{gnus-summary-mark-read-and-unread-as-read} $B$G!"$[$H$s$I$9$Y$F$N(B +$BFI$s$@5-;v$N0u$r(B @code{gnus-read-mark} $B$KJQ99$7$^$9!#$3$N4X?t$K1F6A$5$l(B +$B$J$$5-;v$O!"2D;k!"J]N1!"4|8B@Z$l:o=|2DG=5-;v$@$1$G$9!#$b$7!"L$FI$K4{FI$N(B +$B0u$rIU$1$?$$$@$1$G$"$l$P!"Be$o$j(B +$B$K(B @code{gnus-summary-mark-unread-as-read} $B$r;H$&$3$H$,$G$-$^$9!#$=$l$O!"(B +@code{gnus-low-score-mark} $B$d(B @code{gnus-del-mark} ($B$J$I$J$I(B) $B$N0u$r$=$N(B +$B$^$^;D$7$^$9!#(B +@end table + +@node Paging the Article +@section $B5-;v$N%9%/%m!<%k(B +@cindex article scrolling + +@table @kbd +@item SPACE +@kindex SPACE ($B35N,(B) +@findex gnus-summary-next-page +@kbd{SPACE} $B$O5-;v$r0l%Z!<%8@h$K%9%/%m!<%k$7$^$9!#5-;v$N:G8e$K$$$k>l9g$O(B +$B$7$+L5$$>l9g!"$=$l$O%9%-%C%W$5$l!"Be$o$j$K +@itemx > +@kindex > ($B35N,(B) +@kindex A > ($B35N,(B) +@findex gnus-summary-end-of-article +$B5-;v$N:G8e$^$G%9%/%m!<%k$7$^$9(B (@code{gnus-summary-end-of-article})$B!#(B + +@item A s +@itemx s +@kindex A s ($B35N,(B) +@kindex s ($B35N,(B) +@findex gnus-summary-isearch-article +$B5-;v%P%C%U%!$G%$%s%/%j%a%s%?%k%5!<%A(B (isearch) $B$r9T$$$^(B +$B$9(B (@code{gnus-summary-isearch-article})$B!#(B + +@item h +@kindex h ($B35N,(B) +@findex gnus-summary-select-article-buffer +$B5-;v%P%C%U%!$rA*Br$7$^$9(B (@code{gnus-summary-select-article-buffer})$B!#(B +@end table + +@node Reply Followup and Post +@section $BJVEz!"%U%)%m!<%"%C%W!"Ej9F(B + +@menu +* Summary Mail Commands:: $B%a!<%k$rAw$k(B +* Summary Post Commands:: $B%K%e!<%9$rAw$k(B +* Summary Message Commands:: $BB>$N%a%C%;!<%84XO"$NL?Na(B +* Canceling and Superseding:: +@end menu + +@node Summary Mail Commands +@subsection $B35N,$G$N%a!<%k$NL?Na(B +@cindex mail +@cindex composing mail + +$B%a!<%k%a%C%;!<%8$r:n@.$9$k$?$a$NL?Na(B: + +@table @kbd +@item S r +@item r +@kindex S r ($B35N,(B) +@kindex r ($B35N,(B) +@findex gnus-summary-reply +@c @icon{gnus-summary-mail-reply} +@c @icon{gnus-summary-reply} +$B8=:_$N5-;v$r=q$$$??M$KJVEz$N%a!<%k$rAw$j$^$9(B (@code{gnus-summary-reply})$B!#(B + +@item S R +@itemx R +@kindex R ($B35N,(B) +@kindex S R ($B35N,(B) +@findex gnus-summary-reply-with-original +@c @icon{gnus-summary-reply-with-original} +$B8=:_$N5-;v$r=q$$$??M$K!"K\5-;v$r4^$s$@JVEz$N%a!<%k$r=P$7$^(B +$B$9(B (@code{gnus-summary-reply-with-original})$B!#$3$NL?Na$O%W%m%;%9(B/$B@\F,0z(B +$B?t$N=,47$r;H$$$^$9!#(B + +@item S w +@kindex S w ($B35N,(B) +@findex gnus-summary-wide-reply +$B8=:_$N5-;v$r=q$$$??M$KBP$7$F!"9-$$JVEz(B (wide reply) $B$r$7$^(B +$B$9(B (@code{gnus-summary-wide-reply})$B!#(B@dfn{$B9-$$JVEz(B} $B$H$O%X%C%@!<(B +$B$N(B @code{To}, @code{From}, ($B$b$7$/$O(B @code{Reply-to}) $B$H(B @code{Cc}) $B$N$9(B +$B$Y$F$N?M$KJVEz$r$9$k$3$H$G$9!#(B@code{Mail-Followup-To} $B$,$"$l$P!"Be$o$j$K(B +$B$=$l$,;H$o$l$^$9!#(B + +@item S W +@kindex S W ($B35N,(B) +@findex gnus-summary-wide-reply-with-original +$B8=:_$N5-;v$KK\5-;v$r4^$s$@9-$$JVEz$N%a!<%k$rAw$j$^(B +$B$9(B (@code{gnus-summary-wide-reply-with-original})$B!#$3$NL?Na$O%W%m%;%9(B/$B@\(B +$BF,0z?t$N=,47$r;H$$$^$9!#(B + +@item S v +@kindex S v ($B35N,(B) +@findex gnus-summary-very-wide-reply +$B8=:_$N5-;v$r=q$$$??M$KBP$7$F!"Hs>o$K9-$$JVEz(B (very wide reply) $B$r$7$^(B +$B$9(B (@code{gnus-summary-very-wide-reply})$B!#(B@dfn{$BHs>o$K9-$$JVEz(B} $B$H$O!"%W(B +$B%m%;%9(B/$B@\F,0z?t$G;XDj$5$l$?$9$Y$F$N5-;v$N%X%C%@!<$N(B @code{To}, +@code{From}, ($B$b$7$/$O(B @code{Reply-to}) $B$H(B @code{Cc}) $B$N$9$Y$F$N?M$KJVEz(B +$B$r$9$k$3$H$G$9!#$3$NL?Na$O%W%m%;%9(B/$B@\F,0z?t$N=,47$r;H$$$^$9!#(B + +@item S V +@kindex S V ($B35N,(B) +@findex gnus-summary-very-wide-reply-with-original +$B8=:_$N5-;v$KK\5-;v$r4^$s$@Hs>o$K9-$$JVEz$N%a!<%k$rAw$j$^(B +$B$9(B (@code{gnus-summary-very-wide-reply-with-original})$B!#$3$NL?Na$O%W%m%;(B +$B%9(B/$B@\F,0z?t$N=,47$r;H$$$^$9!#(B + +@item S B r +@kindex S B r ($B35N,(B) +@findex gnus-summary-reply-broken-reply-to +$B8=:_$N5-;v$r=q$$$??M$KBP$7$FJVEz$r$7$^$9$,(B @code{Reply-To} $B%U%#!<%k%I$O(B +$BL5;k$7$^$9(B (@code{gnus-summary-reply-broken-reply-to})$B!#%a!<%j%s%0%j%9%H(B +$B$,$=$N%j%9%H$r;X$9(B @code{Reply-To} $B$r2a$C$F@_Dj$9$k$?$a$K$3$l$,I,MW$J$N(B +$B$G$"$l$P!"$"$J$?$O$?$V$sBe$o$j$K(B @code{broken-reply-to} $B%0%k!<%W%Q%i%a!<(B +$B%?$r@_Dj$9$kI,MW$,$"$j!"$=$l$OF0:n$9$k$G$7$g$&!#(B + +@item S B R +@kindex S B R ($B35N,(B) +@findex gnus-summary-reply-broken-reply-to-with-original +$B8=:_$N5-;v$r=q$$$??M$KBP$7$FK\5-;v$r4^$s$@JVEz$r$7$^$9(B +$B$,(B @code{Reply-To} $B%U%#!<%k%I$OL5;k$7$^(B +$B$9(B (@code{gnus-summary-reply-broken-reply-to-with-original})$B!#(B + +@item S o m +@itemx C-c C-f +@kindex S o m ($B35N,(B) +@kindex C-c C-f ($B35N,(B) +@findex gnus-summary-mail-forward +@c @icon{gnus-summary-mail-forward} +$BC/$+B>$N?M$K8=:_$N5-;v$rE>Aw$7$^$9(B (@code{gnus-summary-mail-forward})$B!#(B +$B@\F,0z?t$,$"$k$H!"E>Aw5-;v$N40A4$J%X%C%@!<$r$O;H$o$l$^$;$s!#$b$7@\F,<-$,(B 1 $B$@$C$?$i!"$I$N%0%k!<%W$KEj9F$9$k$+$r?R(B +$B$M$^$9!#(B + +$B$3$N4X?t$O!"$?$H$(%a!<%k%0%k!<%W$G;H$o$l$?$H$7$F$b!"(B +$B@\%;!<%V$5$l$^$9!#BP1~$9$k%P%C%/%(%s%I$,Ej9F$N$?$a$N%a%=%C(B +$B%I(B (request-post method) $B$r;}$C$F$$$J$1$l$P$J$j$^$;$s$,!#(B + +@item S D b +@kindex S D b ($B35N,(B) +@findex gnus-summary-resend-bounced-mail +@cindex bouncing mail +$B%a!<%k$rAw$C$?$N$K!"2?$i$+$NM}M3(B ($B%"%I%l%9$N4V0c$$!"E>Aw$NITD4(B) $B$GLa$C$F(B +$B$-$?$H$-$K!"$3$NL?Na$r;H$C$FLa$C$F$-$?%a!<%k$r$b$&0l2sAw$k$3$H$,$G$-$^(B +$B$9(B (@code{gnus-summary-resend-bonced-mail})$B!#$b$&0lEY%a!<%k$rAw$kA0$K%X%C(B +$B%@!<$rJT=8$G$-$k$h$&$K!"%a!<%k%P%C%U%!$K$=$N%a!<%k$,8=$l$k$G$7$g$&!#$3$N(B +$BL?Na$K@\F,0z?t$rM?$($F!"La$C$F$-$?%a!<%k$,C/$+$X$NJVEz$G$"$C$?>l9g!"(B +Gnus $B$O$=$N%a!<%k$re$NL?Na$H:.F1$7$J$$$h$&$K!"(B@code{gnus-summary-resend-message} $B$O8=:_$N(B +$B%a%C%;!<%8$rAw$k@h$N%"%I%l%9$NF~NO$rB%$7!"$=$l$+$i$=$N>l=j$K%a!<%k$rAw$j(B +$B$^$9!#%a%C%;!<%8$N%X%C%@!<$OJQ99$5$l$^$;$s!=!=$7$+$7!"(B +@code{Resent-To}, @code{Resent-From} $BEy$N%X%C%@!<$,IU$12C$($i$l$^$9!#$3(B +$B$l$O!"(B($B$*$=$i$/(B) $B$"$J$?<+?H$r(B @code{To} $BMs$K=q$$$?K\?M$K$b%a!<%k$rAw$C$F(B +$B$7$^$&$H$$$&$3$H$G$9!#$3$l$O:.Mp$r>7$/$G$7$g$&!#$G$9$+$i!"$b$A$m$s!"K\Ev(B +$B$K(B $BAw$7$?$$$H$-$KMQ$$$i$l$^$9!#(B($B$b$7$"$J$?(B +$B$,(B @code{root} $B$G$"$j!"(B@code{postmaster} $B$G$b$"$j!"(B +@code{root} $B$K(B @code{postmaster} $B$X$N%a!<%k$rl9g$O!"$=$l(B +$B$r(B @code{postmaster} $B$K$b:FAw$9$kI,MW$,$"$k$7$g$&!#Ca=x$,$J$1$l$P$J$j$^(B +$B$;$s(B! (Ordnung muss sein!)) + +$B$3$NL?Na$O%W%m%;%9(B/$B@\F,0z?t$N=,47$K=>$$$^$9(B (@pxref{Process/Prefix})$B!#(B + +@item S D e +@kindex S D e ($B35N,(B) +@findex gnus-summary-resend-message-edit +$B0l$DA0$N%3%^%s%I$K;w$F$$$^$9$,!":FAw$9$kA0$K$"$?$+$b?7$7$$%a%C%;!<%8$N$h(B +$B$&$KJT=8$9$k$3$H$,$G$-$^$9!#(B + +@item S O m +@kindex S O m ($B35N,(B) +@findex gnus-summary-digest-mail-forward +$B8=:_$N0lO"$N5-;v(B (@pxref{Decoding Articles}) $B$NMWLs$r:n$j!"%a!<%k$G$=$N(B +$B7k2L$rAw$j$^$9(B (@code{gnus-summary-digest-mail-forward})$B!#$3$NL?Na$O%W%m(B +$B%;%9(B/$B@\F,0z?t$N=,47$K=>$$$^$9(B (@pxref{Process/Prefix})$B!#(B + +@item S M-c +@kindex S M-c ($B35N,(B) +@findex gnus-summary-mail-crosspost-complaint +@cindex crossposting +@cindex excessive crossposting +$B8=:_$N5-;v$N=q$-j%/%m%9%]%9%H$X$N6l>p$N%a!<%k$rAw$j$^(B +$B$9(B (@code{gnus-summary-mail-crosspost-complaint})$B!#(B + +@findex gnus-crosspost-complaint +$B$3$NL?Na$O!"8=:_(B Usenet $B$K2#9T$7$F$$$k!"%/%m%9%]%9%H$N@$3&E*N.9T$KBP$7$F(B +$BH?7b$r9T$&$$!"$=$l$>$l(B +$B$N%a!<%k$rAw$kA0$KAw?.$9$k$+$I$&$+$N3NG'$r$7$^$9!#(B +@end table + +$B$^$?(B @xref{Header Commands, ,$B%X%C%@!pJs$,$"$j$^$9!#(B + +@node Summary Post Commands +@subsection $B35N,$NEj9FL?Na(B +@cindex post +@cindex composing news + +$B%K%e!<%9$N5-;v$rEj9F$9$k$?$a$NL?Na(B: + +@table @kbd +@item S p +@itemx a +@kindex a ($B35N,(B) +@kindex S p ($B35N,(B) +@findex gnus-summary-post-news +@c @icon{gnus-summary-post-news} +$BEj9F$9$k$?$a$N5-;v$r:n@.$7$^$9(B (@code{gnus-summary-post-news})$B!#%G%#%U%)(B +$B%k%H$G$O8=:_$N%0%k!<%W$KEj9F$7$^$9!#$b$7@\F,<-$,M?$($i$l$?$i8=:_$N%0%k!<(B +$B%WL>$O;H$o$l$^$;$s!#$b$7@\F,<-$,(B 1 $B$@$C$?$i!"Be$o$j$KJL$N$I$N%0%k!<%W$K(B +$BEj9F$9$k$+$r?R$M$^$9!#(B + +@item S f +@itemx f +@kindex f ($B35N,(B) +@kindex S f ($B35N,(B) +@findex gnus-summary-followup +@c @icon{gnus-summary-followup} +$B8=:_$N5-;v$N%U%)%m!<%"%C%W$rEj9F$7$^$9(B (@code{gnus-summary-followup})$B!#(B + +@item S F +@itemx F +@kindex S F ($B35N,(B) +@kindex F ($B35N,(B) +@c @icon{gnus-summary-followup-with-original} +@findex gnus-summary-followup-with-original +$BK\5-;v$rAw$7$^(B +$B$9(B (@code{gnus-summary-post-forward})$B!#@\F,0z?t$,M?$($i$l$?$H$-$O!"E>Aw(B +$B5-;v$N%X%C%@!<$r40A4$KpJs$,$"$j$^$9!#(B + +@node Summary Message Commands +@subsection $B35N,%a%C%;!<%8L?Na(B + +@table @kbd +@item S y +@kindex S y ($B35N,(B) +@findex gnus-summary-yank-message +$B8=:_$N5-;v$r4{$KB8:_$9$k(B Message $B:n@.%P%C%U%!$KE=$jIU$1$^(B +$B$9(B (@code{gnus-summaryyank-message})$B!#$3$NL?Na$OE=$jIU$1$?$$%a%C%;!<%8%P%C(B +$B%U%!$NF~NO$rB%$7!"%W%m%;%9(B/$B@\F,<-$N=,47$rM}2r$7$^(B +$B$9(B (@pxref{Process/Prefix})$B!#(B +@end table + +@node Canceling and Superseding +@subsection $B5-;v$rC$9(B +@cindex canceling articles +@cindex superseding articles + +$B2?$+$r=q$$$?8e$G!"K\Ev$K!"K\Ev$K!"$[(B $B$s(B $B$H(B $B$&(B $B$K$=$l$rEj9F$7$F$$$J$1$l$P(B +$B$J$!$H;W$C$?$3$H$O$"$j$^$;$s$+!#(B + +$B$(!<$H!"%a!<%k$OC$9$3$H$O$G$-$J$$$N$G$9$,!"%K%e!<%9$NEj9F$OC$9(B +$B$3$H$,$G$-$^$9!#(B + +@findex gnus-summary-cancel-article +@kindex C ($B35N,(B) +@c @icon{gnus-summary-cancel-article} +$BC$7$?$$5-;v$r8+$D$1$F$/$@$5$$(B ($BC$9$3$H$,$G$-$k$N$O<+J,$N5-;v$@(B +$B$1$G$9!#JQ$J$3$H$O;n$5$J$$$G$/$@$5$$(B)$B!#$=$l$+$i!"(B +@kbd{C} $B$+(B @kbd{S c} $B$r2!$7$F$/$@$5(B +$B$$(B (@code{gnus-summary-cancel-article})$B!#$"$J$?$N5-;v$,C$5$l$^(B +$B$9!=!=@$3&Cf$N5!3#$,$"$J$?$N5-;v$rC$7$^$9!#$3$NL?Na$O%W%m%;%9(B/$B@\F,(B +$B0z?t$N=,47$rMQ$$$^$9(B (@pxref{Process/Prefix})$B!#(B + +$B$7$+$7!"Cm0U$7$F$[$7$$$N$O$9$Y$F$N%5%$%H(B (site) $B$,C$7$r07$C$F$$$k$o(B +$B$1$G$O$J$$$3$H$G$9!#$G$9$+$i!"$?$$$F$$$N%5%$%H$,LdBj$N5-;v$rC$7$F$b!"(B +$B$"$A$3$A$G$"$J$?$N5-;v$O@8$-;D$k$+$b$7$l$^$;$s!#(B + +Gnus $B$O!"C$9$H$-$K!X8=:_!Y$NA*BrJ}K!$r;H$$$^$9!#I8=`$NEj9FJ}K!$r;H(B +$B$$$?$$$N$G$"$l$P!"J8;z@\F,0z?t(B @samp{a} $B$r;H$C$F$/$@$5(B +$B$$(B (@pxref{Symbolic Prefixes})$B!#(B + +Gnus $B$O(B @code{Cancel-Lock} $B%X%C%@!<(B (@pxref{Canceling News, Canceling +News, , message-ja, Message Manual}) $B$r;H$C$F!"$"$J$?$@$1$,$"$J$?$N%a%C(B +$B%;!<%8$r%-%c%s%;%k$G$-$k$3$H$rJ]>Z$7$^$9!#(B + +$B$b$72?$+4V0c$$$r$7$?$N$K5$IU$$$F!"D{@5$r$7$?$$$N$G$"$l$P!"(B +@dfn{$BBeBX(B} (@dfn{superseding}) $B5-;v$rEj9F$7$FK\5-;v$rCV$-49$($k$3$H$,$G(B +$B$-$^$9!#(B + +@findex gnus-summary-supersede-article +@kindex S ($B35N,(B) +$BK\5-;v$N$H$3$m$X0\F0$7$F!"(B@kbd{S s} $B$r2!$7$F$/$@$5(B +$B$$(B (@code{gnus-summary-supersede-article})$B!#IaDL$NJ}K!$G$=$l$rAw$kA0$K!"(B +$B5-;v$r9%$-$J$h$&$KJT=8$9$k$3$H$,$G$-$^$9!#BeBX$K4X$7$F$b!"C$7$HF1$8(B +$B$3$H$,Ev$F$O$^$j$^$9!#$3$A$i$NJ}$,$b$C$H$h$/Ev$F$O$^$k$+$b$7$l$^$;(B +$B$s(B: $B$$$/$D$+$N%5%$%H$OBeBX$rl9g!"5-;v$,:G=i$K$"(B +$B$J$?$N%5%$%H$K8=$l$kA0$KC$7(B/$BBeBX$r$9$k$?$a$N9*L/$JH$7$F2<$5$$!#(B + +@item +$B;~9o!#(Bam/pm $B$r4^$^$J$$(B 24 $B;~4V@)$N!"(B@code{hh:mm} $B$N7A<0$GM?$($^$9!#Aw?.(B +$B$5$l$k$N$O:#F|$N$=$N;~9o$G$9$,!"$9$G$K$=$N;~9o$r2a$.$F$7$^$C$F$$$?>l9g$O(B +$BMbF|$N$=$N;~9o$K$J$j$^$9!#$G$9$+$i!"D+$N(B 10 $B;~$K(B @code{11:15} $B$r;XDj$7$?(B +$B>l9g$O(B 1$B;~4V(B15$BJ,8e$KAw?.$5$l$k$3$H$K$J$j$^$9!#$7$+$7(B @code{9:20} $B$r;XDj(B +$B$7$?>l9g$OMbF|$N;~9o$r0UL#$7$^$9!#(B +@end itemize + +@code{gnus-delay-article} $B$NF0:n$O!"0J2<$N?t8D$NJQ?t$K1F6A$5$l$^$9(B: + +@table @code +@item gnus-delay-default-hour +@vindex gnus-delay-default-hour +$BFCDj$NF|IU$r;XDj$7$?>l9g$K!"%a%C%;!<%8$,$=$NF|$N2?;~$KAw?.$5$l$k$+$rM?$((B +$B$^$9!#2DG=$JCM$O(B 0 $B$+$i(B 23 $B$^$G$N@0?t$G$9!#(B + +@item gnus-delay-default-delay +@vindex gnus-delay-default-delay +$B%G%#%U%)%k%H$NCY1d$rM?$($kJ8;zNs$G$9!#A0=R$N$I$s$J7A<0$G$b2DG=$G$9!#(B + +@item gnus-delay-group +@vindex gnus-delay-group +$BCY1d5-;v$O!"%I%i%U%H%5!<%P!<$N$3$N%0%k!<%W$K4|8B$,Mh$k$^$GJ]4I$5$l$^$9!#(B +$B$?$V$s$"$J$?$O$3$l$rJQ99$9$kI,MW$OL5$$$G$7$g$&!#%G%#%U%)%k%H$NCM(B +$B$O(B @code{"delayed"} $B$G$9!#(B + +@item gnus-delay-header +@vindex gnus-delay-header +$B$=$l$>$l$N5-;v$,Aw?.$5$l$kF|;~$O%X%C%@!<$K5-O?$5$l$^$9!#$3$NJQ?t$O%X%C%@!<(B +$BL>$NJ8;zNs$G$9!#$?$V$s$"$J$?$O$3$l$rJQ99$9$kI,MW$OL5$$$G$7$g$&!#%G%#%U%)(B +$B%k%H$NCM$O(B @code{"X-Gnus-Delayed"} $B$G$9!#(B +@end table + +$BAw?.$N@h1d$P$7$O$3$s$J$U$&$K9T$J$o$l$^$9(B: @code{gnus-delay-article} $B%3%^(B +$B%s%I$G!"$"$J$?$O$I$N$/$i$$CY$i$;$k$+$r;XDj$7$^$9!#(BGnus $B$O%a%C%;!<%8$rAw(B +$B?.$9$kF|;~$r7W;;$7$F(B @code{X-Gnus-Delayed} $B%X%C%@!<$K5-O?$7!"$=$N%a%C%;!<(B +$B%8$r(B @code{nndraft:delayed} $B%0%k!<%W$KG<$a$^$9!#(B + +@findex gnus-delay-send-queue +$B$=$7$F!"$"$J$?$,?7Ce%K%e!<%9$rj$J$/$i$$$NL?Na$,$"$j$^$9(B: +@end ifinfo + +@menu +* Unread Articles:: $BL$FI5-;v$X$N0u(B +* Read Articles:: $B4{FI5-;v$X$N0u(B +* Other Marks:: $B9XFIEY$K1F6A$7$J$$0u(B +* Setting Marks:: $B0u$NIU$1J}$H>C$7J}(B +* Generic Marking Commands:: $B0u$r$I$N$h$&$K%+%9%?%^%$%:$9$k$+(B +* Setting Process Marks:: $B8e$No$K2D;k>uBV$G$"$k5-;v$N$3$H$G$9!#$*$b$7$m$$$H;W$&5-(B +$B;v$,$"$C$?>l9g$d!"C1$KFI$`$N$r@h$K1d$P$7$?$$$H$-$d!"8e$GJVEz$r$7$?$$$H$-(B +$B$K!"IaDL$O2D;k0u$rIU$1$^$9!#$7$+$7!"5-;v$O4|8B@Z$l>C5n$5$l$k$3$H$b$"$j$^(B +$B$9(B ($B%K%e!<%9%5!<%P!<$N%=%U%H%&%'%"$,%K%e!<%9%5!<%P!<>e$N5-;v$r>C5n!"(B +Gnus $B<+BN$O2D;k5-;v$r4|8B@Z$l>C5n$7$^$;$s(B) $B$N$G!"1J1s$K5-;v$rJ]B8$7$F$*(B +$B$-$?$$>l9g$O!"$=$N5-;v$r1JB3$K$9$kI,MW$,$"$j$^(B +$B$9(B (@pxref{Persistent Articles})$B!#(B + +@item ? +@vindex gnus-dormant-mark +$BJ]N1$H$7$F0u$rIU$1$^$9(B (@code{gnus-dormant-mark})$B!#(B + +@dfn{$BJ]N15-;v(B}$B$O%U%)%m!<%"%C%W$,$"$C$?$H$-$K$@$135N,%P%C%U%!$K8=$l$^$9!#(B +$B%U%)%m!<%"%C%W$,L5$$$H$-$bI=<($5$;$?$$$H$-$O!"L?Na(B @kbd{/ D} $B$r;H$&$3$H(B +$B$,$G$-$^$9!#$=$l0J30$O(B ($B8+$($k$+$I$&$+$OJL$K$7$F(B)$B!"2D;k5-;v(B (Ticked) $B$H(B +$B;w$?$h$&$J$b$N$G$9!#(B + +@item SPACE +@vindex gnus-unread-mark +$BL$FI$H$7$F0u$rIU$1$^$9(B (@code{gnus-unread-mark})$B!#(B + +@dfn{$BL$FI5-;v(B}$B$O:#$^$GA4$/FI$^$l$F$$$J$$5-;v$N$3$H$G$9!#(B +@end table + +@node Read Articles +@subsection $B4{FI5-;v(B +@cindex expirable mark + +$B0J2<$N$9$Y$F$N0u$O5-;v$K4{FI$N0u$rIU$1$^$9!#(B + +@table @samp +@item r +@vindex gnus-del-mark +$BMxMQC$5$l$?5-;v(B (@code{gnus-canceled-mark})$B!#(B + +@item F +@vindex gnus-souped-mark +@sc{soup} $B$5$l$F$$$k5-;v(B (@code{gnus-souped-mark})$B!#(B@xref{SOUP}. + +@item Q +@vindex gnus-sparse-mark +$B$^$P$i$K;2>H$5$l$?5-;v(B (@code{gnus-sparse-mark})$B!#(B +@xref{Customizing Threading}. + +@item M +@vindex gnus-duplicate-mark +$B=EJ#M^@)$K$h$j4{FI$N0u$N$D$$$?5-;v(B (@code{gnus-duplicate-mark})$B!#(B +@xref{Duplicate Suppression}. +@end table + +$B$3$l$i$N$9$Y$F$N0u$O!"K\Ev$O$?$@5-;v$,4{FI$H$7$F0u$,$D$$$F$$$k$3$H$r0UL#(B +$B$9$k$@$1$G$9!#E,1~%9%3%"%j%s%0$r$7$?$H$-$K$O0c$C$?$h$&$K2r$N0u(B +@cindex process mark +@cindex bookmarks + +$B5-;v$,FI$^$l$?$+$I$&$+$K$O4X78$7$J$$0u$,$$$/$D$+$"$j$^$9!#(B + +@itemize @bullet + +@item +$B8=:_$N5-;v$K$7$*$j$r64$`$3$H$,$G$-$^$9!#$"$J$?$OG-$NG"$N=,47$K4X$9$kD9$$(B +$BO@J8$rFI$s$G$$$F!"$=$l$rFI$_=*$o$kA0$KMAw$7$?5-;v$O!"$9$Y$FFs7eL\$K(B @samp{F} $B$N0u$,IU$-$^(B +$B$9(B (@code{gnus-forwarded-mark})$B!#(B + +@item +@vindex gnus-cached-mark +$B5-;v%-%c%C%7%e$KCy$a$i$l$F$$$k5-;v$O!"Fs7eL\$K(B @samp{*} $B$N0u$,IU$-$^(B +$B$9(B (@code{gnus-replied-mark})$B!#(B@xref{Article Caching}. + +@item +@vindex gnus-saved-mark +($B2?$i$+$NJ}K!$K$h$C$F!(I,$:$7$b=!65E*$H$$$&$o$1$G$O$J$/(B) $B!XJ]B8$5$l$?!Y(B +$B5-;v$O!"Fs7eL\$K(B @samp{S} $B$N0u$,IU$-$^$9(B (@code{gnus-saved-mark})$B!#(B + +@vindex gnus-recent-mark +$B$=$N%5!<%P!<$G$^$@FI$^$l$F$$$J$$5-;v$O!"Fs7eL\$K(B @samp{N} $B$N0u$,IU$-$^(B +$B$9(B (@code{gnus-recent-mark})$B!#$?$$$F$$$N%5!<%P!<$O$3$N0u$r%5%]!<%H$;$:!"(B +$B$=$N>l9g$OC1$KI=<($5$l$^$;$s!#(B@code{gnus-unseen-mark} $B$H8+Hf$Y$F2<$5$$!#(B + +@item +@vindex gnus-unseen-mark +$B$^$@(B Gnus $B$GFI$^$l$?$3$H$,$J$$5-;v$O!"Fs7eL\$K(B @samp{.} $B$N0u$,IU$-$^(B +$B$9(B (@code{gnus-unseen-mark})$B!#(B@code{gnus-recent-mark} $B$H8+Hf$Y$F2<$5$$!#(B + +@item +@vindex gnus-downloaded-mark +Gnus $B%(!<%8%'%s%H(B (@pxref{Agent Basics}) $B$r;H$C$F$$$k$H$-!"5-;v(B +$B$O(B unplugged ($B%*%U%i%$%s(B) $B$G8+$k$?$a$K%@%&%s%m!<%I$5$l$F$$$k$+$b$7$l$^$;(B +$B$s!#(B@samp{%O} $B$N;EMM$r;H$C$F$$$k$H!"$=$l$i$N5-;v$K$O$=$N;EMM(B +$B$K(B @samp{+} $B$N0u$,IU$-$^$9!#(B($BJQ?t(B @code{gnus-downloaded-mark} $B$G$I$NJ8;z(B +$B$r;H$&$+$r@)8f$7$^$9!#(B) + +@item +@vindex gnus-undownloaded-mark +Gnus $B%(!<%8%'%s%H(B (@pxref{Agent Basics}) $B$r;H$C$F$$$k$H$-!"$$$/$D$+$N5-(B +$B;v$O%@%&%s%m!<%I$5$l$F$$$J$$$+$b$7$l$^$;$s!#(BUnplugged ($B%*%U%i%$%s(B) $B$N>u(B +$BBV$G$O$=$N$h$&$J5-;v$r8+$k$3$H$,$G$-$^$;$s!#(B@samp{%O} $B$N;EMM$r;H$C$F$$$k(B +$B$H!"$=$l$i$N5-;v$K$O$=$N;EMM$K(B @samp{-} $B$N0u$,IU$-$^$9!#(B($BJQ(B +$B?t(B @code{gnus-undownloaded-mark} $B$G$I$NJ8;z$r;H$&$+$r@)8f$7$^$9!#(B) + +@item +@vindex gnus-downloadable-mark +Gnus $B%(!<%8%'%s%H(B (@pxref{Agent Basics}) $B$O$$$/$D$+$N5-;v$r<+F0E*$K%@%&(B +$B%s%m!<%I$7$^$9$,!"<+F0E*$K%@%&%s%m!<%I$5$l$J$$5-;v$K$b%@%&%s%m!<%I$N$?$a(B +$B$NL@<(E*$J0u$rIU$1$k$3$H$O2DG=$G$9!#$=$N$h$&$JL@<(E*$K0u$,IU$1$i$l$?5-;v(B +$B$K$O!":G=i$N7e$K(B @samp{%} $B$N0u$,IU$-$^$9!#(B($BJQ(B +$B?t(B @code{gnus-downloadable-mark} $B$G$I$NJ8;z$r;H$&$+$r@)8f$7$^$9!#(B) + +@item +@vindex gnus-not-empty-thread-mark +@vindex gnus-empty-thread-mark +$B$b$7(B @samp{%e} $B$N;EMM$,;H$o$l$k$H!"%9%l%C%I$,$"$k$+$I$&$+$O!";07eL\(B +$B$K(B @code{gnus-not-empty-thread-mark} $B$H(B @code{gnus-empty-thread-mark} $B$N(B +$B$=$l$>$l$K$h$C$F0u$,IU$-$^$9!#(B + +@item +@vindex gnus-process-mark +$B:G8e$K(B @dfn{$B%W%m%;%90u(B} $B$,$"$j$^$9(B(@code{gnus-process-mark})$B!#$$$m$$$m$J(B +$Bl9g!"$I$N$h$&$K$J$k$N$G$7$g$&(B? + +$B$?$$$7$?$3$H$O$"$j$^$;$s!#M%@h=g0L$Ol9g!"%-%c%C%7%e0u$,$"$k$@$1$G!"JVEz:Q$_0u$O$"$j$^(B +$B$;$s!#(B + +@node Setting Marks +@subsection $B0u$rIU$1$k(B +@cindex setting marks + +$B$9$Y$F$N0u$D$1L?Na$O?tCM@\F,0z?t$rC5n$7$^(B +$B$9(B (@code{gnus-summary-clear-mark-forward})$B!#MW$9$k$K!"5-;v$KL$FI$N0u$r(B +$BIU$1$^$9!#(B + +@item M t +@itemx ! +@kindex ! ($B35N,(B) +@kindex M t ($B35N,(B) +@findex gnus-summary-tick-article-forward +$B8=:_$N5-;v$K2D;k5-;v0u$rIU$1$^(B +$B$9(B (@code{gnus-summary-tick-article-forward})$B!#(B@xref{Article Caching}. + +@item M ? +@itemx ? +@kindex ? ($B35N,(B) +@kindex M ? ($B35N,(B) +@findex gnus-summary-mark-as-dormant +$B8=:_$N5-;v$KJ]N15-;v0u$rIU$1$^(B +$B$9(B (@code{gnus-summary-mark-as-read-forward})$B!#(B@xref{Article Caching}. + +@item D +@kindex D ($B35N,(B) +@findex gnus-summary-mark-as-read-backward +$B8=:_$N5-;v$K4{FI$N0u$rIU$1!"A0$N9T$K%]%$%s%H$r0\F0$7$^(B +$B$9(B (@code{gnus-summary-mark-as-read-backward})$B!#(B + +@item M k +@itemx k +@kindex k ($B35N,(B) +@kindex M k ($B35N,(B) +@findex gnus-summary-kill-same-subject-and-select +$B8=:_$N5-;v$HF1$8I=Bj$r;}$D$9$Y$F$N5-;v$r4{FI$H$7$F0u$rIU$1!"C5n$7$^$9(B (@code{gnus-summary-clar-above})$B!#(B + +@item M V u +@kindex M V u ($B35N,(B) +@findex gnus-summary-tick-above +$B=i4|@_Dj$N%9%3%"(B ($B$b$7$/$O?tCM@\F,0z?t(B) $B$h$j$bBg$-$$%9%3%"$r;}$D$9$Y$F$N(B +$B5-;v$K2D;k0u$rIU$1$^$9(B (@code{gnus-summary-tick-above})$B!#(B + +@item M V m +@kindex M V m ($B35N,(B) +@findex gnus-summary-mark-above +$B0u$NF~NO$rB%$7!"=i4|@_Dj$N%9%3%"(B ($B$b$7$/$O?tCM@\F,0z?t(B) $B$h$j$bBg$-$J%9%3(B +$B%"$r;}$D$9$Y$F$N5-;v$K$=$N0u$rIU$1$^$9(B (@code{gnus-summary-mark-above})$B!#(B +@end table + +@vindex gnus-summary-goto-unread +$BJQ?t(B @code{gnus-summary-goto-unread} $B$O0u$,IU$1$i$l$?8e$K$I$N$h$&$JF0:n(B +$B$,$J$5$l$k$+$r7hDj$7$^$9!#$b$7(B @code{nil} $B$G$J$$$H!"%]%$%s%H$Oe$+2<$K9T$/(B +$B$@$1$G$9!#FCJL$J>l9g$H$7$F!"$3$NJQ?t$,(B @code{never} $B$G$"$k$H!"$9$Y$F$N0u(B +$B$rIU$1$kL?Na$H(B (@kbd{SPACE} $B$N$h$&$J(B) $BB>$NL?Na$O$N(B +$B8=:_$N5-;v$KN1$^$C$F$b$i$$$?$$?M$b$$$k$G$7$g$&!#$=$7$F!"$^$@A0$N(B ($BL$(B +$BFI(B) $B5-;v$K9T$C$F$[$7$$?M$,$$$k$H$OJ9$$$?$3$H$O$"$j$^$;$s$,!"$=$&$7$?$$$H(B +$B;W$&?M$b4V0c$$$J$/$$$k$H;W$$$^$9!#(B + +$B$3$N8^$D$NF0:n$r8^$D$N0c$C$?0uIU$1L?Na$H3]$1;;$9$k$H!"$I$NL?Na$,2?$r$9$Y(B +$B$-$+$NHs>o$KJ#;($JJQ?t$NAH$r$b$D$3$H$K$J$j$^$9!#(B + +$B$3$NHa7`$+$iF($l$k$?$a$K!"(BGnus $B$O$3$l$i$9$Y$F$N0c$C$?$3$H$r$9$kL?Na$rDs(B +$B6!$7$^$9!#$3$l$i$O35N,%P%C%U%!$N(B @kbd{M M} $B%^%C%W$K$"$j$^$9!#A4$F$r$_$k(B +$B$?$a$K$O(B @kbd{M M C-h} $B$rF~NO$7$F$/$@$5$$(B---$B$3$N%^%K%e%"%k$G0lMw$r=P$9$K(B +$B$OB?2a$.$^$9!#(B + +$B$3$l$i$NL?Na$rD>@\;H$&$3$H$O$G$-$^$9$,!"$[$H$s$I$NMxMQ$N%3%^%s%I$G=hM}(B +$B$5$;$k5-;v$K0u$rIU$1$k$?$a$K;H$o$l$^$9!#Nc$($P!";M$D$N5-;v$K$K0u$rIU$1$F(B +$B$+$i(B @kbd{*} $B%3%^%s%I$r;H$&$H!"(BGnus $B$O$=$l$i;M$D$N5-;v$r%-%c%C%7%e$KF~$l(B +$B$^$9!#>\$7$/$O(B @ref{Process/Prefix} $B$r$I$&$>!#(B + +@table @kbd +@item M P p +@itemx # +@kindex # ($B35N,(B) +@kindex M P p ($B35N,(B) +@findex gnus-summary-mark-as-processable +$B8=:_$N5-;v$K%W%m%;%90u$rIU$1$^(B +$B$9(B (@code{gnus-summary-mark-as-processable})$B!#(B +@findex gnus-summary-unmark-as-processable + +@item M P u +@itemx M-# +@kindex M P u ($B35N,(B) +@kindex M-# ($B35N,(B) +$B$b$78=:_$N5-;v$K%W%m%;%90u$,$"$l$PH$7$F2<$5$$!#(B + +@node Limiting +@section $B@)8B$r$9$k(B +@cindex limiting + +$B35N,%P%C%U%!$,8=:_%0%k!<%W$K$"$k5-;v$N0lIt$@$1$rI=<($9$k$h$&$K@)8B$G$-$l(B +$B$PJXMx$J$3$H$,$"$j$^$9!#B?$/$N@)8BL?Na$,;}$D8z2L$O35N,%P%C%U%!$+$i>/(B +$B$7(B ($B$b$7$/$OB?$/(B) $B$N5-;v$r35N,%P%C%U%!$+$i:o=|$9$k$3$H$G$9!#(B + +$B$9$Y$F$N@)8BL?Na$O%5!<%P!<$+$i4{$K\:Y$O(B @ref{Group Parameters} $B$r;2>H$7$F2<$5$$!#(B + +@item / r +@kindex / r ($B35N,(B) +@findex gnus-summary-limit-to-replied +$B35N,%P%C%U%!$rJV?.$7$?5-;v$@$1$K@)8B$7$^(B +$B$9(B (@code{gnus-summary-limit-to-replied})$B!#@\F,<-$,M?$($i$l$?>l9g$O!"JV(B +$B?.$7$?5-;v0J30$N5-;v$K@)8B$7$^$9!#(B + +@item / E +@itemx M S +@kindex M S ($B35N,(B) +@kindex / E ($B35N,(B) +@findex gnus-summary-limit-include-expunged +$B$9$Y$F$N>C5n$5$l$?5-;v$rI=<($7$^(B +$B$9(B (@code{gnus-summary-limit-include-expunged})$B!#(B + +@item / D +@kindex / D ($B35N,(B) +@findex gnus-summary-limit-include-dormant +$B$9$Y$F$NJ]N15-;v$rI=<($7$^$9(B (@code{gnus-summary-limit-include-dormant})$B!#(B + +@item / * +@kindex / * ($B35N,(B) +@findex gnus-summary-limit-include-cached +$B$9$Y$F$N%-%c%C%7%e$KF~$C$F$$$k5-;v$rI=<($7$^(B +$B$9(B (@code{gnus-summary-limit-include-cached})$B!#(B + +@item / d +@kindex / d ($B35N,(B) +@findex gnus-summary-limit-exclude-dormant +$B$9$Y$F$NJ]N15-;v$r1#$7$^$9(B (@code{gnus-summary-limit-exclude-dormant})$B!#(B + +@item / M +@kindex / M ($B35N,(B) +@findex gnus-summary-limit-exclude-marks +$BA4$F$N0uIU$-5-;v$r=|30$7$^$9(B (@code{gnus-summary-limit-exclude-marks})$B!#(B + +@item / T +@kindex / T ($B35N,(B) +@findex gnus-summary-limit-include-thread +$B8=:_$N%9%l%C%I$N$9$Y$F$N5-;v$rI=<($7$^(B +$B$9(B (@code{gnus-summary-limit-include-thread})$B!#(B + +@item / c +@kindex / c ($B35N,(B) +@findex gnus-summary-limit-exclude-childless-dormant +$B;R5-;v$NL5$$$9$Y$F$NJ]N15-;v$r1#$7$^(B +$B$9(B (@code{gnus-summary-limit-exclude-childless-dormant})$B!#(B + +@item / C +@kindex / C ($B35N,(B) +@findex gnus-summary-limit-mark-excluded-as-read +$B$9$Y$F$NL$FI$N$_$N0u$N5-;v$r4{FI$H$7$F0u$rIU$1$^(B +$B$9(B (@code{gnus-summary-limit-mark-excluded-as-read})$B!#$b$7@\F,0z?t$,M?$((B +$B$i$l$l$P!"2D;k$HJ]N1$N$_$N0u$N5-;v$b4{FI$H$7$F0u$rIU$1$^$9!#(B + +@item / N +@kindex / N ($B35N,(B) +@findex gnus-summary-insert-new-articles +$B$9$Y$F$N?7$7$$5-;v$r35N,%P%C%U%!$KA^F~$7$^$9!#$b(B +$B$7(B @var{back-end}@code{-get-new-mail} $B$,Hs(B-@code{nil} $B$@$C$?$i!"?7$7$$%a!<(B +$B%k$NE~Mh$rD4$Y$k$H$$$&$3$H$G$9!#(B + +@item / o +@kindex / o ($B35N,(B) +@findex gnus-summary-insert-old-articles +$B$9$Y$F$N8E$$5-;v$r35N,%P%C%U%!$KA^F~$7$^$9!#$b$7?t;z$N@\F,<-$,M?$($i$l$l(B +$B$P!"$=$N?t$N5-;v$r8e$KCV$/!=!=3,AXE*N.57$G(B $B$H$$$&$3$H$G$9!#(B + +$B%9%l%C%I$O5-;v$N(B @code{References} $BMs$rD4$Y$k$3$H$K$h$C$F9T$o$l$^$9!#40(B +$BA4$J@$3&$G$O!"$3$l$@$1$GNI$$LZ$r:n$j>e$2$k$N$K==J,$J$N$G$9$,!"IT1?$J$3$H(B +$B$K!"(B@code{References} $BMs$O$7$P$7$P2u$l$F$$$k$+!";~$K$OC1$K$J$$$H$$$&$3$H(B +$B$,$"$j$^$9!#IT;W5D$J%K%e!<%9$NA}?#$,LdBj$rA}$d$7$^$9$N$G!"4n$P$7$$7k2L$r(B +$BF@$k$?$a$K$OB>$NH/8+K!$r:NMQ$7$J$1$l$P$J$j$^$;$s!#2a>j$JBP:vK!$OB8:_$7$F(B +$B$$$F!"$=$N62$k$Y$->\:Y$O(B @ref{Customizing Threading} $B$K>\$7$/=q$$$F$"$j(B +$B$^$9!#(B + +$B$^$:!"35G0$N354Q$G$9(B: + +@table @dfn +@item $B:,K\(B (root) +$B%9%l%C%I$G0lHVD:E@$K$"$k5-;v$G$9!(%9%l%C%I$N:G=i$N5-;v$G$9!#(B + +@item $B%9%l%C%I(B (thread) +$BLZ$N$h$&$J5-;v$N9=@.$G$9!#(B + +@item $BItJ,%9%l%C%I(B (sub-thread) +$BLZ$N$h$&$J9=B$$N(B ($B$h$j(B) $B>.$5$JItJ,$G$9!#(B + +@item $BL5B+G{%9%l%C%I(B (loose threads) +$B5-;v$N4|8B@Z$l:o=|$d!":,K\$,4{$KA02s$N%;%C%7%g%s$GFI$^$l$?$3$H$K$h$j35N,(B +$B%P%C%U%!$KI=<($5$l$J$$!"Ey$NM}M3$K$h$j!"%9%l%C%I$O$7$P$7$P:,K\$r<:$$$^$9!#(B +$B$=$N$h$&$J$H$-$K$O!"IaDL$OB?$/$NItJ,%9%l%C%I$,$"$C$F!"K\Ev$O0l$D$N%9%l%C(B +$B%I$KB0$7$F$$$k$N$G$9$,!":,K\$K$O$D$J$,$C$F$$$J$$!"$H$$$&$3$H$K$J$j$^$9!#(B +$B$3$&$$$&%9%l%C%I$,L5B+G{%9%l%C%I$H8F$P$l$F$$$^$9!#(B + +@item $B%9%l%C%I=8$a(B (thread gathering) +$B$^$P$i%9%l%C%I$rBg$-$J%9%l%C%I$K=8$a$h$&$H$9$k;n$_$G$9!#(B + +@item $B$^$P$i%9%l%C%I(B (sparse threads) +$BL5$$5-;v$,!X?dB,$5$l$?!Y%9%l%C%I$G!"35N,%P%C%U%!$K6u9T$GI=<($5$l$^$9!#(B +@end table + +@menu +* Customizing Threading:: $BJQ992DG=$J%9%l%C%I$K1F6A$9$kJQ?t(B +* Thread Commands:: $B35N,%P%C%U%!$G$N%9%l%C%I$K4p$E$$$?L?Na(B +@end menu + +@node Customizing Threading +@subsection $B%9%l%C%I$r%+%9%?%^%$%:$9$k(B +@cindex customizing threading + +@menu +* Loose Threads:: Gnus $B$,L5B+G{%9%l%C%I$r=8$a$FBg$-$J%9%l%C%I$K$9$kJ}K!(B +* Filling In Threads:: $B%9%l%C%I$rKd$a$k(B +* More Threading:: $B%9%l%C%I$r$$$8$/$k$5$i$KB?$/$NJQ?t(B +* Low-Level Threading:: $B$3$l$G=*$o$C$?$H;W$C$?$G$7$g$&(B@dots{} $B$G$b$"$J$?$O4V0c$C$F$$$?(B! +@end menu + +@node Loose Threads +@subsubsection $BL5B+G{%9%l%C%I(B +@cindex < +@cindex > +@cindex loose threads + +@table @code +@item gnus-summary-make-false-root +@vindex gnus-summary-make-false-root +$B$b$7(B @code{nil} $B$G$J$$$H!"(BGnus $B$OA4$F$N$D$J$,$C$F$$$J$$ItJ,LZ$r0l$D$NBg(B +$B$-$JLZ$K$7$F!"D:>e$K$_$;$+$1$N:,K\$r:n$j$^$9!#(B($B$A$g$C$HBT$C$F$/$@$5$$!#(B +$BD:>e$K:,85(B (root) $B$G$9$C$F(B? $B$($(!"$=$&$J$N$G$9!#(B) $B$D$J$,$C$F$$$J$$ItJ,LZ(B +$B$OK\Ev$N:,K\$,4|8B@Z$l:o=|$5$l$?$+!"A02s$N%;%C%7%g%s$G:,K\$rFI$s$@$j:o=|(B +$B$7$?$H$-$K$G$-$^$9!#(B + +$BK\Ev$N%9%l%C%I$,L5$$$H$-$O!"(BGnus $B$O2?$+$G$C$A>e$2$r$9$kI,MW$,$"$j$^$9!#(B +$B$3$NJQ?t$O(B Gnus $B$,;H$&$Y$-$4$^$+$7$NJ}K!$r<($7$F$$$^$9!#CM$H$7$F$H$k$3$H(B +$B$,$G$-$k;M$D$N8uJd$,$"$j$^$9!#(B + +@iftex +@iflatex +\gnusfigure{The Summary Buffer}{390}{ +\put(0,0){\epsfig{figure=ps/summary-adopt,width=7.5cm}} +\put(445,0){\makebox(0,0)[br]{\epsfig{figure=ps/summary-empty,width=7.5cm}}} +\put(0,400){\makebox(0,0)[tl]{\epsfig{figure=ps/summary-none,width=7.5cm}}} +\put(445,400){\makebox(0,0)[tr]{\epsfig{figure=ps/summary-dummy,width=7.5cm}}} +} +@end iflatex +@end iftex + +@cindex adopting articles + +@table @code +@item $BM\;R(B (adopt) +Gnus $B$O:G=i$N8I;y$r?F$K$7$^$9!#$3$N?F$O$9$Y$F$NB>$N5-;v$rM\;R$K$7$^$9!#(B +$B$3$NM\;R5-;v$O!"I8=`$N3Q3g8L(B (@samp{[]}) $B$NBe$o$j$K!"@h$N@m$C$?3g(B +$B8L(B (@samp{<>}) $B$G0uIU$1$i$l$^$9!#$3$l$,=i4|@_Dj$NJ}K!$G$9!#(B + +@item $B$_$;$+$1(B (dummy) +@vindex gnus-summary-dummy-line-format +@vindex gnus-summary-make-false-root-always +Gnus $B$O?F$N$U$j$r$9$k$_$;$+$1$N35N,9T$r$D$/$j$^$9!#$_$;$+$1$N9T$O$I$NK\(B +$BEv$N5-;v$K$bBP1~$7$^$;$s$N$G!"$=$l$rA*Br$9$k$3$H$O!"$_$;$+$1$N5-;v$N8e$N(B +$B:G=i$NK\Ev$N5-;v$rA*Br$r$9$k$@$1$K$J$j$^$9!#$_$;$+$1$N:,K\$NMM<0$r;XDj(B +$B$9$k$?$a$K!"(B@code{gnus-summary-dummy-line-format} $B$,;H$o$l$^$9!#$3$l$O$?$C(B +$B$?0l$D$@$1$N%U%)!<%^%C%H$N;EMM$rl9g$O!"(B +@code{gnus-summary-make-false-root-always} $B$r(B @code{t} $B$K@_Dj$7$F2<$5$$!#(B + +@item $B6u(B (empty) +Gnus $B$O$N5-;v$r(B +$BI=<($9$k$@$1$G$9!#(B + +@item nil +$BL5B+G{%9%l%C%I$r=8$a$^$;$s!#(B +@end table + +@item gnus-summary-gather-subject-limit +@vindex gnus-summary-gather-subject-limit +$BL5B+G{%9%l%C%I$O5-;v$NI=Bj$rHf3S$9$k$3$H$K$h$C$F=8$a$i$l$^$9!#$b$7$3$NJQ(B +$B?t$,(B @code{nil} $B$G$"$k$H!"(BGnus $B$OL5B+G{%9%l%C%I$r0l$D$NBg$-$JD6%9%l%C%I(B +$B$K=8$a$kA0$K!"L5B+G{%9%l%C%I$NI=Bj$,40A4$K0lCW$9$k$3$H$rMW5a$7$^$9!#$3$l(B +$B$O!"D9$$I=Bj$N9T$r@Z$jMn$H$7$F$7$^$&4VH4$1$J%K%e!<%9%j!<%@!<$,B8:_$9$k8=(B +$B:_$G$O!"$"$^$j$K87$7$$MW5a$+$bCN$l$^$;$s!#$b$7$=$&;W$&$N$J$i!"$3$NJQ?t$r(B +$BNc$($P(B 20 $B$K@_Dj$7$F!"I=Bj$N:G=i$N(B 20 $BJ8;z$@$1$,0lCW$9$k$3$H$rMW5a$9$k$h(B +$B$&$K$9$k$3$H$,$G$-$^$9!#$3$NJQ?t$rK\Ev$KDc$$?t;z$K@_Dj$9$k$H!"(BGnus $B$,L\(B +$B$KF~$kA4$F$r0l$D$N%9%l%C%I$K=8$a$k$N$r8+$k$3$H$,$G$-$k$G$7$g$&!#$=$7$F!"(B +$B$=$l$O$"$^$jM-MQ$G$O$"$j$^$;$s!#(B + +@cindex fuzzy article gathering +$B$3$NJQ?t$rFCJL$JCM(B @code{fuzzy} $B$K@_Dj$9$l$P!"(BGnus $B$OI=Bj$K$"$$$^$$$JJ8(B +$B;zNsHf3S%"%k%4%j%:%`$r;H$$$^$9(B (@pxref{Fuzzy Matching})$B!#(B + +@item gnus-simplify-subject-fuzzy-regexp +@vindex gnus-simplify-subject-fuzzy-regexp +$B$3$l$O@55,I=8=$+!"$"$$$^$$I=Bj;XDj$,;H$o$l$F$$$k$H$-$KI=Bj$+$i9gCW$7$?$b(B +$B$N$, +@lisp +(setq gnus-simplify-ignored-prefixes + (concat + "\\`\\[?\\(" + (mapconcat + 'identity + '("looking" + "wanted" "followup" "summary\\( of\\)?" + "help" "query" "problem" "question" + "answer" "reference" "announce" + "How can I" "How to" "Comparison of" + ;; ... + ) + "\\|") + "\\)\\s *\\(" + (mapconcat 'identity + '("for" "for reference" "with" "about") + "\\|") + "\\)?\\]?:?[ \t]*")) +@end lisp + +$B$3$N@55,I=8=$K9gCW$9$k$9$Y$F$N8l$O!"Fs$D$NI=Bj$rHf3S$9$kA0$Ke=q$-$7$^$9!#$3$NJQ?t$OJ8(B +$B;zNs(B @code{Subject} $B$rH?I|$7$F4JC1$J7A$K$?$I$jCe$/$?$a$KE,MQ$9$k4X?t$N%j(B +$B%9%H$G$"$kI,MW$,$"$j$^$9!#(B + +$B$3$N%j%9%H$KF~$l$FLr$KN)$D$h$&$J4X?t$OJ,$J6uGr(B (whitespace) $B$ru67$r>/$7$h$/$9$k$?$a$K!"$I$NI=Bj$,=8$a$k2a(B +$BDx$+$i=|$+$l$k$+$r7h$a$k@55,I=(B +$B8=(B @code{gnus-summary-gather-exclude-subject} $B$r;H$&$3$H$,$G$-$^$9!#%G%#(B +$B%U%)%k%H$O(B @samp{^ *$\\|^(none)$} $B$G$9!#(B + +@item gnus-summary-thread-gathering-function +@vindex gnus-summmary-thread-gathering-function +Gnus $B$O(B @code{Subject} $BMs$r8+$k$3$H$K$h$C$F%9%l%C%I$r=8$a$^$9!#$3$l$O!"(B +$B7k2LE*$KA4$/4X78$NL5$$5-;v$,F1$8!X%9%l%C%I!Y$K4^$^$l$k$3$H$,$"$k$H$$$&$3(B +$B$H$G!"$3$l$O:.Mp$N85$G$9!#BeBXZ(B +$B$7$^$9$,!"$3$o$l$?%K%e!<%9%j!<%@!<$GEj9F$7$?5-;v$OE,@Z$K=8$a$i$l$J$$$H$$(B +$B$&$3$H$G$b$"$j$^$9!#A*Br8"$O$"$J$?$K$"$j$^$9!=!=1VIB$+%3%l%i$+!#(B + +@table @code +@item gnus-gather-threads-by-subject +@findex gnus-gather-threads-by-subject +$B$3$N4X?t$O%G%#%U%)%k%H$N<}=84X?t$G!"GSB>E*$K(B @code{Subject} $B$r8+$^$9!#(B + +@item gnus-gather-threads-by-references +$B$3$N4X?t$OGSB>E*$K(B @code{References} $BMs$r8+$^$9!#(B +@end table + +@code{References} $B$K$h$C$F=8$a$k$3$H$r;n$7$F$_$?$$$N$G$"$l$P!"/$J$$35N,9T$rI=<($7$?$$$1$l$I!"$G$-$k$@$1$?$/$5$s$NHsL)%9%l%C(B +$B%I$K@\B3$7$F$*$-$?$$$H$-$O!"$3$NJQ?t$r(B @code{some} $B$+?t;z$K@_Dj$9$k$3$H(B +$B$,$G$-$^$9!#$b$7?t;z$K@_Dj$7$?$H$-$O!"$=$l$h$jB?$$DI2C$N%X%C%@!<$Ol9g$G$b!"8E$$%X%C%@!<$Nl9g$K;H$&$3$H$rA[Dj$7$F$$$^$9!#$=$l$Ol9g$O%G%#%U%)%k%H$N(B @code{nil} $B$N$^$^$K$7$F$*$/$N$,L5Fq$G(B +$B$9!#;H$$$?$$>l9g$O%0%k!<%WL>$K9gCW$9$k@55,I=8=$+!"$9$Y$F$N%0%k!<%WL>$K9g(B +$BCW$9$k(B @code{t} $B$K$7$F2<$5$$!#(B +@end table + +@node More Threading +@subsubsection $B$b$C$H%9%l%C%I$r(B + +@table @code +@item gnus-show-threads +@vindex gnus-show-threads +$B$3$NJQ?t$,(B @code{nil} $B$G$"$k$H!"%9%l%C%I$O:n$i$l$:!"$3$3$K$"$k;D$j$N$9$Y(B +$B$F$NJQ?t$OA4$/8z2L$,L5$/$J$j$^$9!#%9%l%C%I:n$j$r;_$a$k$H%0%k!<%W$NA*Br$,(B +$B>/$7B.$/$J$j$^$9$,!"5-;v$rFI$`$N$,$b$C$HCY$/!"ITJX$K$J$k$3$H$O3N/$J$$Am9gE*%9%3%"(B (@code{gnus-thread-score-function}) $B$r;}(B +$B$D$9$Y$F$N%9%l%C%I$O>C5n$5$l$^$9!#$3$NJQ?t$O%G%#%U%)%k%H$G(B +$B$O(B @code{nil} $B$G!"$3$l$O$I$N%9%l%C%I$b>C5n$5$l$J$$$H$$$&$3$H$G$9!#(B + +@item gnus-thread-hide-killed +@vindex gnus-thread-hide-killed +$B$b$7%9%l%C%I$r:o=|$7$F!"$3$NJQ?t$,(B @code{nil} $B$G$J$$$H!"ItJ,LZ$O1#$5$l$^(B +$B$9!#(B + +@item gnus-thread-ignore-subject +@vindex gnus-thread-ignore-subject +$B;~!9!"C/$+$,%9%l%C%I$N??Cf$GI=Bj$rJQ99$9$k$3$H$,$"$j$^$9!#$b$7$3$NJQ?t(B +$B$,(B @code{nil} $B$G$J$$$H!"$3$l$,%G%#%U%)%k%H$G$9$,!"I=Bj$NJQ99$OL5;k$5$l$^(B +$B$9!#$b$7(B @code{nil} $B$@$H!"I=Bj$NJQ99$r$9$k$HJL$N%9%l%C%I$K$J$j$^$9!#(B + +@item gnus-thread-indent-level +@vindex gnus-thread-indent-level +$B$3$N?t;z$OItJ,%9%l%C%I$,$I$l$/$i$$;z2<$2(B (indent) $B$5$l$k$Y$-$+$r7h$a$^$9!#(B +$B%G%#%U%)%k%H$O(B 4 $B$G$9!#(B + +@item gnus-sort-gathered-threads-function +@vindex gnus-sort-gathered-threads-function +$B$H$-$I$-!"FC$K%a!<%j%s%0%j%9%H$G!"$C$F!"I{%9%l%C(B +$B%I$r=i4|@_Dj$N(B @code{gnus-thread-sort-by-number} $B$GJB$S49$($k$H!"1~Ez$N(B +$BJ}$,$=$l$,1~Ez$7$F$$$k5-;v$h$j@h$K8=$l$k$3$H$,$"$j$^$9!#%0%k!<%W%Q%i%a!<(B +$B%?$dE,@Z$J%U%C%/(B ($BNc$($P(B @code{gnus-summary-generate-hook}) $B$G$3$NJQ?t$r(B +$BBe$o$j$NCM(B ($BNc$($P!"(B@code{gnus-thread-sort-by-date}) $B$K@_Dj$9$k$3$H$G!"(B +$B$=$N$h$&$J>l9g$K!"$h$jO@M}E*$JI{%9%l%C%I$N=gHV$r@8@.$9$k$3$H$,$G$-$^$9!#(B +@end table + +@node Low-Level Threading +@subsubsection $BDc%l%Y%k$K$*$1$k%9%l%C%I:n@.(B + +@table @code +@item gnus-parse-headers-hook +@vindex gnus-parse-headers-hook +$B$9$Y$F$N%X%C%@!<$r2r@O$9$kA0$K$N$b$N$rIU$12C(B +$B$($k$3$H$K$h$k(B) $BBN7OE*$JJ}K!$G(B @code{Message-ID} $B$r8r49$9$k%a!<%k$+$i(B +$B%K%e!<%9$X$N%2!<%H%&%'%$$,$"$k>l9g!"(B@code{Message-ID} $B$,$b$C$H0UL#$N$"$k(B +$B$b$N$K$9$k$?$a$K!"$3$NJQ?t$r@_Dj$7$F85$KLa$9$3$H$,$G$-$^$9!#$3$l$O0l$D$N(B +$BNc$G$9(B: + +@lisp +(setq gnus-alter-header-function 'my-alter-message-id) + +(defun my-alter-message-id (header) + (let ((id (mail-header-id header))) + (when (string-match + "\\(<[^<>@@]*\\)\\.?cygnus\\..*@@\\([^<>@@]*>\\)" id) + (mail-header-set-id + (concat (match-string 1 id) "@@" (match-string 2 id)) + header)))) +@end lisp +@end table + +@node Thread Commands +@subsection $B%9%l%C%I$NL?Na(B +@cindex thread commands + +@table @kbd +@item T k +@itemx C-M-k +@kindex T k ($B35N,(B) +@kindex C-M-k ($B35N,(B) +@findex gnus-summary-kill-thread +$B8=:_$N(B ($BItJ,(B) $B%9%l%C%I$K4{FI$N0u$rIU$1$^(B +$B$9(B (@code{gnus-summary-kill-thread})$B!#$b$7@\F,0z?t$,@5$G$"$k$H!"Be$o$j$K(B +$B$9$Y$F$N0u$re$2$^(B +$B$9(B (@code{gnus-summary-raise-thread})$B!#(B + +@item T # +@kindex T # ($B35N,(B) +@findex gnus-uu-mark-thread +$B%W%m%;%90u$r8=:_$N(B ($BItJ,(B) $B%9%l%C%I$KIU$1$^(B +$B$9(B (@code{gnus-uu-mark-thread})$B!#(B + +@item T M-# +@kindex T M-# ($B35N,(B) +@findex gnus-uu-unmark-thread +$B8=:_$N(B ($BItJ,(B) $B%9%l%C%I$+$i%W%m%;%90u$r$7$^(B +$B$9(B (@code{gnus-summary-rethread-current})$B!#$3$l$O35N,%P%C%U%!$,%9%l%C%I(B +$BI=<($5$l$F$$$J$$$H$-$G$bF0:n$7$^$9!#(B + +@item T ^ +@kindex T ^ ($B35N,(B) +@findex gnus-summary-reparent-thread +$B8=:_$N5-;v$r0uIU$-(B ($B$b$7$/$OA0$N(B) $B5-;v$N;R5-;v$K$7$^(B +$B$9(B (@code{gnus-summary-reparent-thread})$B!#(B +@end table + +$B0J2<$NL?Na$O%9%l%C%I0\F0L?Na$G$9!#$3$l$i$O$9$Y$F?tCM@\F,0z?t$re>:$7$^$9(B (@code{gnus-summary-up-thread})$B!#(B + +@item T o +@kindex T o ($B35N,(B) +@findex gnus-summary-top-thread +$B%9%l%C%I$ND:>e$K0\F0$7$^$9(B (@code{gnus-summary-top-thread})$B!#(B +@end table + +@vindex gnus-thread-operation-ignore-subject +$B%9%l%C%I$r:n@.$9$k$H$-$KI=Bj$rL5;k$9$k$H!"<+A3$K%9%l%C%I$K$O$$$/$D$+$N0c$C(B +$B$?I=Bj$,$"$k$3$H$K$J$j$^$9!#$=$l$+(B +$B$i(B @kbd{T k} (@code{gnus-summary-kill-thread}) $B$N$h$&$JL?Na$rH/$9$k$H$-(B +$B$K!"A4BN$N%9%l%C%I$r:o=|$9$k$N$G$O$J$/!"8=:_$N5-;v$HF1$8I=Bj$r;}$DItJ,$@(B +$B$1$r:o=|$7$?$$$H$-$,$"$k$+$b$7$l$^$;$s!#$b$7$3$NH/A[$,NI$$$H;W$&$N$G$"$l(B +$B$P!"(B@code{gnus-thread-operation-ignore-subject} $B$r$$$8$/$k$3$H$,$G$-$^$9!#(B +$B$3$l$,(B @code{nil} $B$G$J$$$H(B ($B$3$l$,%G%#%U%)%k%H$G$9$,(B)$B!"%9%l%C%I$NL?Na$r(B +$B$N%9%l%C%I$h$j@h$KJB$SBX(B +$B$($i$l$k$Y$-$G$"$l$P!"(B@code{nil} $B$G$J$$CM$r$+$($7$^$9!#IaDL!"JB$SBX$($O(B +$BK\Ev$O$=$l$>$l$N%9%l%C%I$N:,K\$r8+$k$@$1$K$h$j$J$5$l$k$3$H$K5$$rIU$1$F$/(B +$B$@$5$$!#$b$7Fs$D0J>e$N4X?t$r;H$&>l9g!"M%@hE*JB$SBX$(%-!<$O%j%9%H$N:G8e$N(B +$B4X?t$G$9!#$*$=$i$/$$$D$b(B @code{gnus-thread-sort-by-number} $B$rJB$SBX$(4X(B +$B?t$N%j%9%H!=!=:G=i$,9%$^$7$$(B $B$KF~$l$F$*$/$Y$-$G$7$g$&!#$3$l$OB>$NJB$SBX(B +$B$(4p=`$K4X$7$FEy$7$$%9%l%C%I$O5-;v$,>e$,$C$F$$$/=gHV$KI=<($5$l$k$3$H$rJ](B +$B>Z$7$^$9!#(B + +$B%9%3%"$N5U=g!"I=Bj!"$=$7$F:G8e$KHV9f!"$N=g$KJB$SBX$($?$$$N$G$"$l$P!"l9g$O!"1Q;z=g$KJB$S$+$($i$l$^$9!#%9%3%"$HI=Bj$,F1$8%9%l%C%I$OHV9f(B +$B$GJB$SBX$($i$l!"(B($BIaDL$O(B) $B5-;v$,E~Ce$7$?=gHV$K$J$j$^$9!#(B + +$B%9%3%"!"E~Ce$N5U=g$KJB$SBX$($?$$$N$G$"$l$P!"h!"$b$7$/$O$"$J$?$N9%4q?4$r$/(B +$B$9$0$k$h$&$J2?$+$G$7$g$&!#(B + +@findex gnus-article-sort-functions +@findex gnus-article-sort-by-date +@findex gnus-article-sort-by-score +@findex gnus-article-sort-by-subject +@findex gnus-article-sort-by-author +@findex gnus-article-sort-by-random +@findex gnus-article-sort-by-number +$B2?$+4qL/$JM}M3$J$I$G%9%l%C%II=<($r;H$C$F$$$J$$$N$J$i!"JQ(B +$B?t(B @code{gnus-article-sort-functions} $B$r$$$8$/$kI,MW$,$"$j$^$9!#$3$l(B +$B$O(B @code{gnus-thread-sort-functions} $B$HHs>o$K;w$F$$$^$9$,!"5-;v$NHf3S$K(B +$B$O>/!90c$C$?4X?t$r;H$$$^$9!#;HMQ2DG=$JJB$SBX$(=R8l4X?t(B +$B$O(B @code{gnus-article-sort-by-number}, +@code{gnus-article-sort-by-author}, +@code{gnus-article-sort-by-subject}, @code{gnus-article-sort-by-date}, +@code{gnus-article-sort-by-random} $B$*$h(B +$B$S(B @code{gnus-article-sort-by-score} $B$G$9!#(B + +$B%9%l%C%I$r;H$C$F$$$J$$I=Bj$N35N,I=<($rJB$SBX$($?$$$N$G$"$l$P!"u67$rHr$1$k$?$a$K!"(BGnus $B$O%5!<%P!<$KFs$D$N(B ($B$=$l$O(B 2 $B$H?t$($F$/$@$5(B +$B$$(B) $B@\B3$rD%$k$3$H$,$G$-$^$9!#$3$l$O$"$^$j$7$FNI$$$3$H$G$O$J$$$H9M$($k?M(B +$B$b$$$k$G$7$g$&$,!";d$K$OJ,$J@\B3$r(B +$B$9$k$?$a$K$O2?$i$+$N;~4V$,$+$+$j$^$9$N$G!"(BGnus $B$N5/F0$OCY$/$J$j$^$9!#(B + +Gnus $B$O$"$J$?$,FI$`$G$"$m$&5-;v$h$j$b$?$/$5$s$N5-;v$rJ,$J5-;v$NMW5a$H!"M>J,$J@\B3$G!#(B + +$B$O$$!"$3$l$GK\Ev$O$3$N$h$&$J$3$H$r$9$Y$-$GL5$$;v$,J,$+$C$?$G$7$g(B +$B$&(B@dots{} $BK\Ev$K$=$&$7$?$$$H;W$o$J$$8B$j$O!#(B + +@vindex gnus-asynchronous +$B$3$l$,J}K!$G$9(B: @code{gnus-asynchronous} $B$r(B @code{t} $B$K@_Dj$7$F$/$@$5$$!#(B +$B;D$j$N$3$H$O<+F0E*$K5/$3$j$^$9!#(B + +@vindex gnus-use-article-prefetch +@code{gnus-use-article-prefetch} $B$r@_Dj$9$k$3$H$K$h$j!"$I$l$/$i$$$N5-;v(B +$B$,@h$Ko$K(B}$BCY$$(B @acronym{NNTP} $B@\B3$G$"$k$J$i$P!"5-;v%-%c%C%7%e$r(B +$B$9$k$3$H$r9M$($k$+$b$7$l$^$;$s!#$=$&$9$k$H!"$=$l$>$l$N5-;v$O$"$J$?$N%[!<(B +$B%`%G%#%l%/%H%j$N2<$K%m!<%+%k$KN/$a$i$^$9!#4{$K?dB,$5$l$F$$$k$+$bCN$l$^$;(B +$B$s$,!"$3$l$O(B @emph{$B5pBg$J(B}$B%G%#%9%/%9%Z!<%9$r?)$$!"(Bi$B%N!<%I$bHs>o$KB.$/?)(B +$B$$$D$V$92DG=@-$,$"$k$?$a!"$=$l$O$"$J$?$NF,$r1K$,$;$k;v$K$J$k$+$b$7$l$^$;(B +$B$s!#%&%)%C%+$NCf$G!#(B + +$B$G$bCm0U?<$/;H$o$l$l$P!"$=$l$O5-;v$rJ]B8$9$k4JC1$JJ}K!$K$J$jF@$^$9!#(B + +@vindex gnus-use-long-file-name +@vindex gnus-cache-directory +@vindex gnus-use-cache +$B%-%c%C%7%e$rl9g$O!"%5!<%P!<$NBe$o$j$K%-%c%C%7%e$+$iJ}$H$b%7%s%\%k$N%j%9%H$G$9!#A0/$J$/$9$k0l$D$NJ}K!$O!"M_$7$/$J$$5-;v$N%9%3%"$rDc$/$7!"4{FI$N0u$rIU$1(B +$B$k;v$G$9!#$=$&$7$?>l9g!"$=$l$i$O$3$NL?Na$G$O%@%&%s%m!<%I$5$l$^$;$s!#(B + +@vindex gnus-uncacheable-groups +@vindex gnus-cacheable-groups +$B$$$/$D$+$N%0%k!<%W$G$O%-%c%C%7%e$r$7$?$/$J$$$H$$$&$N$ONI$/$"$k;v$G$9!#Nc(B +$B$($P!"(B@code{nnml} $B%a!<%k%G%#%l%/%H%j!<$,%[!<%`%G%#%l%/%H%j!<$N2<$K$"$l$P!"(B +$B$=$l$r$"$J$?$N%[!<%`%G%#%l%/%H%j!<$N2<$NJL$N>l=j$K%-%c%C%7%e$9$k$N$O0UL#(B +$B$NL5$$;v$G$9!#$"$J$?$,FsG\$NMFNL$r;H$&;v$,NI$$$H46$8$J$$8B$j$O!#(B + +$B%-%c%C%7%e$r@)8B$9$k$?$a$K!"(B@code{gnus-cacheable-groups} $B$r%-%c%C%7%e$9(B +$B$k%0%k!<%W$NO"A[%j%9%H!"Nc$($P(B @samp{^nntp} $B$H$9$k$+!"@55,I=(B +$B8=(B @code{gnus-uncacheable-groups} $B$rNc$($P!"(B@samp{^nnml} $B$K@_Dj$7$F2<$5(B +$B$$!#N>J}$NJQ?t$N=i4|CM$O(B @code{nil} $B$G$9!#$b$7%0%k!<%W$,N>J}$N@55,I=8=$K(B +$B9gCW$9$k$H!"$=$N%0%k!<%W$O%-%c%C%7%e$5$l$^$;$s!#(B + +@findex gnus-cache-generate-nov-databases +@findex gnus-cache-generate-active +@vindex gnus-cache-active-file +$B%-%c%C%7%e$O$I$N5-;v$,4^$^$l$F$$$k$+$N>pJs$r%"%/%F%#%V%U%!%$(B +$B%k(B (@code{gnus-cache-active-file}) $B$KN/$a$^$9!#$3$N%U%!%$%k(B ($B$b$7$/$O%-%c%C(B +$B%7%e$NB>$NItJ,(B) $B$,2?$i$+$NM}M3$G$0$A$c$0$A$c$K$J$C$F$7$^$C$?>l9g!"(B +Gnus $B$OJ*;v$r@5$7$/$9$k$?$a$KFs$D$N4X?t$r$*4+$a$7$^$9!#(B +@kbd{M-x gnus-cache-generate-nov-databases} $B$O$9$Y$F$N(B @acronym{NOV} $B%U%!(B +$B%$%k$r(B ($B:F(B) $B:n@.$7!"(B@kbd{gnus-cache-generate-active} $B$O%"%/%F%#%V%U%!%$(B +$B%k$r(B ($B:F(B) $B:n@.$7$^$9!#(B + +@findex gnus-cache-move-cache +@code{gnus-cache-move-cache} $B$O$9$Y$F$N(B @code{gnus-cache-directory} $B$r$I(B +$B$3$+JL$N>l=j$K0\F0$7$^$9!#$"$J$?$O$I$3$K0\F0$5$;$k$+$r?R$M$i$l$^$9!#$=$l$C(B +$B$F$+$C$3$$$$$G$7$g(B? + +@node Persistent Articles +@section $B1JB35-;v(B +@cindex persistent articles +$B5-;v$N%-%c%C%7%e$H6a$$4X78$K$"$k$b$N$K!"(B@dfn{$B1JB35-;v(B}$B$,$"$j$^$9!#l=j$K1J1s$K;D$C$F$$$k(B +$B$Y$-$G$7$g$&!#%K%e!<%9%5!<%P!<$K$*$1$k4|8B:o=|$K$O1F6A$5$l$J$$$G!#(B + +$B$3$l$,(B@dfn{$B1JB35-;v(B}$B$G$9!=!=5-;v$O:o=|$5$l$^$;$s!#$=$l$OIaDL$N%-%c%C%7%e(B +$BL?Na$r;H$C$FJ}$H$b%W%m%;%9(B/$B@\F,0z?t$N=,47$rM}2r$7$^$9!#(B + +$B$b$71JB35-;v$K$@$16=L#$,$"$k$N$G$7$?$i!"2D;k5-;v(B ($B$d$=$NB>$N$b$N(B) $B$,%-%c%C(B +$B%7%e$KF~$k$N$rHr$1$k$?$a$K!"(B@code{gnus-use-cache} $B$r(B @code{passive} $B$K@_(B +$BDj$9$k$N$,NI$$$G$7$g$&(B: + +@lisp +(setq gnus-use-cache 'passive) +@end lisp + +@node Article Backlog +@section $B5-;v$N%P%C%/%m%0(B +@cindex backlog +@cindex article backlog +$B$b$7CY$$@\B3$7$+$J$$>l9g$G!"%-%c%C%7%e$r;H$&$H$$$&H/A[$O$"$^$jL%NOE*$G$O(B +$B$J$$$H$-(B ($Bu67$r2?$H$+$9$k$3$H$,$G$-$^$9!#$3$l$O4{$KFI$s$@5-;v$r:F/$7CY$/$7!"(B +$B%a%b%j!<$N;HMQNL$r$$$/$i$+A}$d$7$^$9!#(B + +@vindex gnus-keep-backlog +$B$b$7(B @code{gnus-keep-backlog} $B$r?t;z(B @var{n} $B$K@_Dj$9$k$H!"(BGnus $B$O:GBg(B +$B$G(B @var{n} $B$N8E$$5-;v$r8e$N:Fl9g!"(BGnus $B$O(B@emph{$BA4$F(B}$B$N4{FI5-(B +$B;v$r$?$/$o$($^$9!#$3$l$O$"$J$?$N(B Emacs $B$,!"K=H/$7$F$"$J$?$N%^%7%s$,Mn$A(B +$B$k$^$G@)8B$J$/KD$l>e$,$k$H$$$&$3$H$G$9!#;d$O$"$J$?J}A4$F$,855$$G$$$i$l$k(B +$B$h$&$K$3$3$K=q$-2C$($^$7$?!#(B + +$B%G%#%U%)%k%HCM$O(B 20 $B$G$9!#(B + +@node Saving Articles +@section $B5-;v$NJ]B8(B +@cindex saving articles + +Gnus $B$O$?$/$5$s$NJ}K!$G5-;v$rJ]B8$9$k;v$,$G$-$^$9!#0J2<$N$b$N$OHs>o$KN((B +$BD>$JJ}K!(B ($BNc$($P!"5-;v$,J]B8$9$kA0$K$[$H$s$I2?$b$J$5$l$J$$(B) $B$G5-;v$rJ]B8(B +$B$9$k$?$a$N@bL@$G$9!#0c$C$?]$,%U%!%$%k$G$9!#%0%k!<%W$KJ]B8$7$?$$>l9g(B +$B$O(B @kbd{B c} (@code{gnus-summary-copy-article}) $B%3%^%s%I$r;2>H$7$F2<$5(B +$B$$(B (@pxref{Mail Group Commands})$B!#(B + +@vindex gnus-save-all-headers +@code{gnus-save-all-headers} $B$,(B @code{nil} $B$G$J$$$H!"(BGnus $B$O5-;v$rJ]B8$9(B +$B$kA0$KK>$^$7$/$J$$%X%C%@!<$r>C5n$7$^$;$s!#(B + +@vindex gnus-saved-headers +$B$b$7>e$NJQ?t$,(B @code{nil} $B$G$"$k$H!"@55,I=(B +$B8=(B @code{gnus-saved-headers} $B$K9gCW$9$k$9$Y$F$N%X%C%@!<$O;D$5$l!";D$j$N(B +$B$b$N$OJ]B8$9$kA0$K:o=|$5$l$^$9!#(B + +@table @kbd +@item O o +@itemx o +@kindex O o ($B35N,(B) +@kindex o ($B35N,(B) +@findex gnus-summary-save-article +@c @icon{gnus-summary-save-article} +$B%G%#%U%)%k%H$N5-;vJ]B8$rMQ$$$F8=:_$N5-;v$rJ]B8$7$^(B +$B$9(B (@code{gnus-summary-save-article})$B!#(B + +@item O m +@kindex O m ($B35N,(B) +@findex gnus-summary-save-article-mail +$B8=:_$N5-;v$r%a!<%k$NMM<0$GJ]B8$7$^(B +$B$9(B (@code{gnus-summary-save-article-mail})$B!#(B + +@item O r +@kindex O r ($B35N,(B) +@findex gnus-summary-save-article-rmail +$B8=:_$N5-;v$r(B Rmail $B$NMM<0$GJ]B8$7$^(B +$B$9(B (@code{gnus-summary-save-article-rmail})$B!#(B + +@item O f +@kindex O f ($B35N,(B) +@findex gnus-summary-save-article-file +@c @icon{gnus-summary-save-article-file} +$B8=:_$N5-;v$rIaDL$N%U%!%$%k(B (plain file) $BMM<0$GJ]B8$7$^(B +$B$9(B (@code{gnus-summary-save-article-file})$B!#(B + +@item O F +@kindex O F ($B35N,(B) +@findex gnus-summary-write-article-file +$B8=:_$N5-;v$rIaDL$N%U%!%$%kMM<0$GJ]B8$7!"0JA0$N%U%!%$%k$NFbMF$r>e=q$-$7$^(B +$B$9(B (@code{gnus-summary-write-article-file})$B!#(B + +@item O b +@kindex O b ($B35N,(B) +@findex gnus-summary-save-article-body-file +$B8=:_$N5-;v$NK\J8(B (body) $B$rIaDL$N%U%!%$%kMM<0$GJ]B8$7$^(B +$B$9(B (@code{gnus-summary-save-article-body-file})$B!#(B + +@item O h +@kindex O h ($B35N,(B) +@findex gnus-summary-save-article-folder +$B8=:_$N5-;v$r(B mh $B$N%U%)%k%@!<$NMM<0$GJ]B8$7$^(B +$B$9(B (@code{gnus-summary-save-article-folder})$B!#(B + +@item O v +@kindex O v ($B35N,(B) +@findex gnus-summary-save-article-vm +$B8=:_$N5-;v$r(B VM $B%U%)%k%@!<$KJ]B8$7$^(B +$B$9(B (@code{gnus-summary-save-article-vm})$B!#(B + +@item O p +@itemx | +@kindex O p ($B35N,(B) +@kindex | ($B35N,(B) +@findex gnus-summary-pipe-output +$B8=:_$N5-;v$r%Q%$%W$KJ]B8$7$^$9!#$&!<$s$H!"$"$N$)!";d$,8@$*$&$H$7$F$$$k;v(B +$B$O!=!=8=:_$N5-;v$r%W%m%;%9$K%Q%$%W$9$k$H$$$&$3$H$G(B +$B$9(B (@code{gnus-summary-pipe-output})$B!#%7%s%\%k@\F,<-(B (@pxref{Symbolic +Prefixes}) $B$,M?$($i$l$k$H!"%Q%$%W$X$N=PNO$K40A4$J%X%C%@!<$r4^$a$^$9!#(B + +@item O P +@kindex O P ($B35N,(B) +@findex gnus-summary-muttprint +@vindex gnus-summary-muttprint-program +$B8=:_$N5-;v$r(B muttprint $B$KJ]B8$7$^$9!#$3$l$O30It%W%m%0%i(B +$B%`(B @uref{http://muttprint.sourceforge.net/, Muttprint} $B$r;H$C$F5-;v$r0u(B +$B:~$7$^$9!#%W%m%0%i%`L>$H;HMQ$9$k%*%W%7%g%s$O!"JQ(B +$B?t(B @code{gnus-summary-muttprint-program} $B$G;XDj$5$l$^$9!#(B +(@code{gnus-summary-muttprint})$B!#(B +@end table + +@vindex gnus-prompt-before-saving +$B$9$Y$F$N$3$l$i$NL?Na$O%W%m%;%9(B/$B@\F,0z?t$N=,47$r;H$$$^(B +$B$9(B (@pxref{Process/Prefix})$B!#$b$7$3$l$i$N4X?t$r;H$C$F$?$/$5$s$N5-;v$rJ](B +$BB8$7$?>l9g!"$=$l$>$l$N$9$Y$F$N5-;v$KBP$7$F%U%!%$%kL>$NF~NO$rMW5a$5$l$k;v(B +$B$KK0$-K0$-$9$k$G$7$g$&!#F~NOB%?JF0:n$OJQ(B +$B?t(B @code{gnus-prompt-before-saving} $B$K$h$C$F@)8f$5$l$^$9!#$3$l$O%G%#%U%)(B +$B%k%H$G$O(B @code{always} $B$G!"$"$J$?$,CN$C$F$$$F7y$,$C$F$$$k!"2a>j$JB%?JF0(B +$B:n$r$7$^$9!#Be$o$j$K$3$NJQ?t$r(B @code{t} $B$K@_Dj$9$k$H!"$"$J$?$,J]B8$9$k$=(B +$B$l$>$l$N0lO"$N5-;v$KBP$7$F0l2s$@$1B%$5$l$^$9!#K\Ev$K(B Gnus $B$K$9$Y$F$N;W9M(B +$B$r$5$;$?$$$N$G$"$l$P!"$3$NJQ?t$r(B @code{nil} $B$K$9$k$3$H$5$($G$-$^$9!#$=$7(B +$B$F!"5-;v$rJ]B8$9$k$?$a$N%U%!%$%k$rB%$5$l$k;v$O$"$j$^$;$s!#(BGnus $B$OC1=c$K(B +$B$9$Y$F$N5-;v$r%G%#%U%)%k%H$N%U%!%$%k$KJ]B8$7$^$9!#(B + +@vindex gnus-default-article-saver +Gnus $B$,$"$J$?$NK>$`$H$*$j$K$J$k$h$&$K!"JQ(B +$B?t(B @code{gnus-default-article-saver} $B$r%+%9%?%^%$%:$9$k;v$,$G$-$^$9!#2<(B +$B$NO;$D$N4{@=4X?t$r;H$&;v$,$G$-$^$9$7!"<+J,<+?H$N4X?t$r:n$k;v$b$G$-$^$9!#(B + +@table @code +@item gnus-summary-save-in-rmail +@findex gnus-summary-save-in-rmail +@vindex gnus-rmail-save-name +@findex gnus-plain-save-name +$B$3$l$O%G%#%U%)%k%H$NMM<0!"(B@dfn{Babyl} $B$G$9!#JQ(B +$B?t(B @code{gnus-ramil-save-name} $B$KF~$C$F$$$k4X?t$r!"5-;v$rJ]B8$9$k$?$a$N(B +$B%U%!%$%kL>$r$ro$N%U%!%$%k$N8e$KDI2C$7$^$9!#JQ?t(B @code{gnus-file-save-name} $B$K(B +$BF~$C$F$$$k4X?t$r!"5-;v$rJ]B8$9$k$?$a$N%U%!%$%kL>$ro$N%U%!%$%k$KJ]B8$7$^$9!#$=$N%U%!%$%k$,B8:_$7$F$$$?(B +$B$i>e=q$-$5$l$^$9!#JQ?t(B @code{gnus-file-save-name} $B$KF~$C$F$$$k4X?t$r!"5-(B +$B;v$rJ]B8$9$k$?$a$N%U%!%$%kL>$ro$N%U%!%$%k$N8e$KDI2C$7$^$9!#JQ(B +$B?t(B @code{gnus-file-save-name} $B$KF~$C$F$$$k4X?t$r!"5-;v$rJ]B8$9$k$?$a$N%U%!(B +$B%$%kL>$r$r.J8;z$K$J$C$?L>A0$r$D$/$j$^(B +$B$9!#(B + +@item gnus-summary-save-in-vm +@findex gnus-summary-save-in-vm +$B5-;v$r(B VM $B%U%)%k%@!<$KJ]B8$7$^$9!#$3$N@_Dj$r;H$&$?$a$K$O(B VM $B%a!<%k%j!<%@!<(B +$B$,I,MW$G$9!#(B +@end table + +@vindex gnus-article-save-directory +$B$3$l$i$NA4$F$N4X?t$O:G8e$N0l$D$r=|$$$F!"4D6-JQ?t(B @env{SAVEDIR} $B$K$h$C$F(B +$B=i4|2=$5$l$k(B @code{gnus-article-save-directory} $B$K5-;v$rJ]B8$7$^$9!#$3$l(B +$B$O%G%#%U%)%k%H$G$O(B @file{~/News/} $B$G$9!#(B + +$B>e$K$"$k$h$&$K!"5-;v$rJ]B8$9$k$?$a$N%U%!%$%k$NE,@Z$JL>A0$r8+$D$1$k$?$a$K!"(B +$B4X?t$O0c$C$?4X?t$rMQ$$$^$9!#0J2<$OL>A0$r@8@.$9$k$?$a$K;HMQ2DG=$J4X?t$N%j(B +$B%9%H$G$9(B: + +@table @code +@item gnus-Numeric-save-name +@findex gnus-Numeric-save-name +@file{~/News/Alt.andera-dworkin/45} $B$N$h$&$J%U%!%$%kL>!#(B + +@item gnus-numeric-save-name +@findex gnus-numeric-save-name +@file{~/News/alt.andera-dworkin/45} $B$N$h$&$J%U%!%$%kL>!#(B + +@item gnus-Plain-save-name +@findex gnus-Plain-save-name +@file{~/News/Alt.andera-dworkin} $B$N$h$&$J%U%!%$%kL>!#(B + +@item gnus-plain-save-name +@findex gnus-plain-save-name +@file{~/News/alt.andera-dworkin} $B$N$h$&$J%U%!%$%kL>!#(B + +@item gnus-sender-save-name +@findex gnus-sender-save-name +@file{~/News/larsi} $B$N$h$&$J%U%!%$%kL>!#(B +@end table + +@vindex gnus-split-methods +$BO"A[%j%9%H(B @code{gnus-split-methods} $B$K@55,I=8=$rJ|$j9~$`;v$K$h$C$F!"(B +Gnus $B$K5-;v$rJ]B8$9$k>l=j$rDs0F$9$k;v$,$G$-$^$9!#Nc$($P!"(BGnus $B$K4XO"$7$?(B +$B5-;v$r%U%!%$%k(B @file{gnus-stuff} $B$K!"(BVM $B$K4XO"$7$?5-;v(B +$B$r(B @file{vm-stuff} $BJ]B8$7$?$1$l$P!"$3$NJQ?t$r0J2<$N$h$&$K$9$k;v$,$G$-$^(B +$B$9(B: + +@lisp +(("^Subject:.*gnus\\|^Newsgroups:.*gnus" "gnus-stuff") + ("^Subject:.*vm\\|^Xref:.*vm" "vm-stuff") + (my-choosing-function "../other-dir/my-stuff") + ((equal gnus-newsgroup-name "mail.misc") "mail-stuff")) +@end lisp + +$B$3$l$O$=$l$>$l$NMWAG$,!"Fs$D$NMWAG!=!=(B@dfn{$B9gCW(B} $B$H(B @dfn{$B%U%!%$%k(B} $B$r;}(B +$B$D%j%9%H$G$"$k%j%9%H$G$"$k$H$$$&;v$,$o$+$j$^$9!#9gCW$OJ8;zNs(B ($B$3$N>l9g$O(B +$B5-;v$N%X%C%@!<$K9gCW$9$k@55,I=8=$H$7$F;H$o$l$^$9(B) $B$*$h$S!"%7%s%\%k(B ($B%0%k!<(B +$B%WL>$r0z?t$H$7$F!"4X?t$H$7$F8F$P$l$^$9(B) $B$*$h$S!"%j%9%H(B ($B$3$l$OI>(B +$B2A(B (@code{eval}) $B$5$l$^$9(B) $B$G$"$k$3$H$,$G$-$^$9!#$b$7$3$l$i$NF0:n$N0l$D(B +$B$G$b(B @code{nil} $B$G$J$$7k2L$rJV$9$H!"(B@dfn{$B%U%!%$%k(B}$B$,%G%#%U%)%k%H$NB%?J$H(B +$B$7$F;H$o$l$^$9!#2C$($F!"8F$P$l$?4X?t$+<0$,J8;zNs$+J8;zNs$N%j%9%H$rJV$7$?(B +$B$H$-$O!"1i;;$N7k2L<+BN$,;H$o$l$^$9!#(B + +$B4pK\E*$K$O!"8=:_$N5-;v$rJ]B8$9$k$N$K;H$o$l$k2DG=@-$N$"$k%U%!%$%kL>$N%j%9(B +$B%H$rA0$H$7$F;H$$$?$$$b$N$rB%$5$l!"$3$NJQ?t$rE,MQ$9$k;v$K$h$jF@$i$l$?7k(B +$B2L$+$i%U%!%$%kL>Jd40$r$7$FF~NO$7$^$9!#(B + +$B$3$NJQ?t$O%G%#%U%)%k%H$G$O(B @code{((gnus-article-archive-name))} $B$G!"(B +Gnus $B$,J]B8$9$k5-;v$N(B @code{Archive-name} $B9T$rD4$Y$F!"$=$l$r%U%!%$%kL>$N(B +$BDs0F$H$7$F;H$&$H$$$&;v$G$9!#(B + +$B$3$l$O%U%!%$%kL>$r>/$7$-$l$$$K$9$k4X?t$NNc$G$9!#(B +@samp{nnml:mail.whatever} $B$N$h$&$J%a!<%k%0%k!<%W$,$?$/$5$s$"$k$N$G$"$l$P!"(B +$BJ]B8$9$k$?$a$N%U%!%$%kL>$r:n$kA0$K$3$l$i$N%0%k!<%WL>$N:G=i$r@Z$jMn$H$9I,(B +$BMW$,$"$k$+$b$7$l$^$;$s!#e5-$N4X?t$O%0%k!<%WL>$N$9$Y$F$N%T%j%*(B +$B%I(B (@samp{.}) $B$r%9%i%C%7%e(B (@samp{/}) $B$GCV$-49$($^$9!=!=$3$l$O4X?t$O$9$Y(B +$B$F$N%U%!%$%k$r0lHV>e$N%G%#%l%/%H%j!<$KCV$/$N$G$O$J$/!"3,AXE*$J%G%#%l%/%H(B +$B%j!<$r:n$k$H$$$&;v$G$9(B (@file{~/News/alt.andrea-dworkin} $B$NBe$o$j(B +$B$K(B @file{~/News/alt/andrea-dworkin}$B!#(B) $B$3$NJQ?t$O$?$$$F$$$N%7%9%F%`$K$*(B +$B$$$F%G%#%U%)%k%H$G(B @code{t} $B$G$9!#$7$+$7!"Nr;KE*$JM}M3$+(B +$B$i(B Xenix $B$H(B usg-unix-v $B%^%7%s$G$O%G%#%U%)%k%H$G(B @code{nil} $B$G$9!#(B + +$B$3$N4X?t$O:o=|$H%9%3%"$N%U%!%$%kL>$K1F6A$7$^$9!#$3$NJQ?t$,%j%9%H$G!"%j%9(B +$B%H$KMWAG(B @code{not-score} $B$,$"$k$H!"D9$$%U%!%$%kL>$O%9%3%"%U%!%$%k$K$O;H(B +$B$o$l$:!"%j%9%H$KMWAG(B @code{not-save} $B$,$"$k$H!"D9$$%U%!%$%kL>$OJ]B8$K$O(B +$B;H$o$l$:!"MWAG(B @code{not-kill} $B$,$"$k$H!"D9$$%U%!%$%kL>$O:o=|%U%!%$%k$K(B +$B$O;H$o$l$^$;$s!#(B + +$B$b$75-;v$r%9%W!<%k$N$h$&$J3,AX$KJ]B8$7$?$$$N$G$"$l$P!"e$N%G%#%l%/%H%j!<$r0z?t(B (@file{~/News/}) $B$H$7$F(B +$BEO$7$^$9!#(B + +@node Decoding Articles +@section $B5-;v$NI|9f2=(B +@cindex decoding articles + +$B$H$-$I$-MxMQA0!"(B +@samp{[Cc][Ii][Nn][Dd][Yy][0-9]+.\\(gif\\|jpg\\)} $B$K%O!<%I%3!<%I$5$l$k!"(B +$B$r;}$D5-;v$rI|9f2=$7$h$&$H$7$?$H$-$O!"(B@code{gnus-uu} $B$OLdBj$N5-;v$r$A$g(B +$B$&$I1\Mw$7$?;v$rCN$i$;$k$?$a$K!"<+F0E*$K(B @samp{comp.unix.wizards} $B$K5-;v(B +$B$rEj9F$7$^$9!#$3$N5!G=$r;H$o$J$$$h$&$K$9$k;v$O$G$-$^$;$s!#(B + +@node Shell Archives +@subsection $B%7%'%k%"!<%+%$%V(B +@cindex unshar +@cindex shell archives +@cindex shared articles + +$B%7%'%k%"!<%+%$%V(B ($B!X(Bshar $B%U%!%$%k!Y(B) $B$O%=!<%9$rG[I[$9$k$?$a$N?M5$$N$"$k(B +$BJ}K!$G$7$?$,!":#F|$G$O$=$s$J$K;H$o$l$F$$$^$;$s!#$H$K$+$/$3$l$i$r07$&$?$a(B +$B$NL?Na$,$"$j$^$9(B: + +@table @kbd +@item X s +@kindex X s ($B35N,(B) +@findex gnus-uu-decode-unshar +$B8=:_$N72$r2rE`$7$^$9(B (@code{gnus-uu-decode-unshar})$B!#(B + +@item X S +@kindex X S ($B35N,(B) +@findex gnus-uu-decode-unshar-and-save +$B8=:_$N72$r2rE`$7J]B8$7$^$9(B (@code{gnus-uu-decode-unshar-and-save})$B!#(B + +@item X v s +@kindex X v s ($B35N,(B) +@findex gnus-uu-decode-unshar-view +$B8=:_$N72$r2rE`$7I=<($7$^$9(B (@code{gnus-uu-decode-unshar-view})$B!#(B + +@item X v S +@kindex X v S ($B35N,(B) +@findex gnus-uu-decode-unshar-and-save-view +$B8=:_$N72$r2rE`$7!"I=<($7$FJ]B8$7$^(B +$B$9(B (@code{gnus-uu-decode-unshar-and-save-view})$B!#(B +@end table + +@node PostScript Files +@subsection $B%]%9%H%9%/%j%W%H%U%!%$%k(B +@cindex PostScript + +@table @kbd +@item X p +@kindex X p ($B35N,(B) +@findex gnus-uu-decode-postscript +$B8=:_$N%]%9%H%9%/%j%W%H72$rE83+$7$^$9(B (@code{gnus-uu-decode-postscript})$B!#(B + +@item X P +@kindex X P ($B35N,(B) +@findex gnus-uu-decode-postscript-and-save +$B8=:_$N%]%9%H%9%/%j%W%H72$rE83+$7$FJ]B8$7$^(B +$B$9(B (@code{gnus-uu-decode-postscript-and-save})$B!#(B + +@item X v p +@kindex X v p ($B35N,(B) +@findex gnus-uu-decode-postscript-view +$B8=:_$N%]%9%H%9%/%j%W%H72$rI=<($7$^(B +$B$9(B (@code{gnus-uu-decode-postscript-view})$B!#(B + +@item X v P +@kindex X v P ($B35N,(B) +@findex gnus-uu-decode-ostscript-and-save-view +$B8=:_$N%]%9%H%9%/%j%W%H72$rI=<($7J]B8$7$^(B +$B$9(B (@code{gnus-uu-decode-postscript-and-save-view})$B!#(B +@end table + +@node Other Files +@subsection $BB>$N%U%!%$%k(B + +@table @kbd +@item X o +@kindex X o ($B35N,(B) +@findex gnus-uu-decode-save +$B8=:_$N72$rJ]B8$7$^$9(B (@code{gnus-uu-decode-save})$B!#(B + +@item X b +@kindex X b ($B35N,(B) +@findex gnus-uu-decode-binhex +$B8=:_$N5-;v$r(B binhex $B2rE`$7$^$9(B (@code{gnus-uu-decode-binhex})$B!#$3$l$OK\(B +$BEv$OF0:n$7$^$;$s!#(B +@end table + +@node Decoding Variables +@subsection $BI|9f2=$N$?$a$NJQ?t(B + +$B7AMF;l$G$9!#F0;l$G$O$"$j$^$;$s!#(B + +@menu +* Rule Variables:: $B%U%!%$%k$,$I$N$h$&$KI=<($5$l$k$+$r7h$a$kJQ?t(B +* Other Decode Variables:: $BB>$NI|9f2=$NJQ?t(B +* Uuencoding and Posting:: uuencode $B$9$k$N$r%+%9%?%^%$%:$9$kJQ?t(B +@end menu + +@node Rule Variables +@subsubsection $B5,B'JQ?t(B +@cindex rule variables + +Gnus $B$O%U%!%$%k$r1\Mw$9$k$N$r7hDj$9$k$N$K(B@dfn{$B5,B'JQ?t(B}$B$rMQ$$$^$9!#$3$l(B +$B$i$NJQ?t$O$9$Y$F0J2<$N$h$&$JMM<0$G$9!#(B + +@lisp + (list '(regexp1 command2) + '(regexp2 command2) + ...) +@end lisp + +@table @code +@item gnus-uu-user-view-rules +@vindex gnus-uu-user-view-rules +@cindex sox +$B$3$NJQ?t$O%U%!%$%k$r1\Mw$9$k$H$-$K:G=i$KD4$Y$i$l$^$9!#Nc$($P!"$b(B +$B$7(B @file{.au} $B2;%U%!%$%k$rJQ49$9$k$?$a$K(B @code{sox} $B$r;H$$$?$$$H$-$O!" /dev/audio"))) +@end lisp + +@item gnus-uu-user-view-rules-end +@vindex gnus-uu-user-view-rules-end +$B$3$NJQ?t$O(B Gnus $B$,MxMQ$NI|9f2=$NJQ?t(B + +@table @code +@vindex gnus-uu-grabbed-file-functions + +@item gnus-uu-grabbed-file-functions +$B$3$N%j%9%H$N$9$Y$F$N4X?t$O$=$l$>$l$N%U%!%$%k$,>e8e$K8F(B +$B$P$l$^$9!=!=$G$9$+$i!"$9$0$K%U%!%$%k$r0\F0$d1\Mw$7$?$j$9$k$3$H$,$G$-!"2?(B +$B$+$r$9$kA0$K$9$Y$F$N%U%!%$%k$,I|9f2=$5$l$k$N$rBT$DI,MW$O$"$j$^$;$s!#$3$N(B +$B%j%9%H$KF~$l$k;v$N$G$-$k4{@=4X?t$O(B: + +@table @code +@item gnus-uu-grab-view +@findex gnus-uu-grab-view +$B%U%!%$%k$r1\Mw$7$^$9!#(B + +@item gnus-uu-grab-move +@findex gnus-uu-grab-move +$B%U%!%$%k$r0\F0$7$^$9(B ($B$b$7J]B84X?t$r;H$C$F$$$k$N$G$"$l$P(B)$B!#(B +@end table + +@item gnus-uu-be-dangerous +@vindex gnus-uu-be-dangerous +$BI|9f2=$N:GCf$KJQ$J>u67$,5/$3$C$?$H$-$K2?$r$9$k$+$r;XDj$7$^$9!#$b(B +$B$7(B @code{nil} $B$G$"$k$H!"$G$-$k$@$1J]e=q$-$7$^$9!#$=$NB>$N>l(B +$B9g$O!"$=$l$>$l$N$H$-$K?R$M$^$9!#(B + +@item gnus-uu-ignore-files-by-name +@vindex gnus-uu-ignore-files-by-name +$B$3$N@55,I=8=$K9gCW$9$kL>A0$N%U%!%$%k$O1\Mw$5$l$^$;$s!#(B + +@item gnus-uu-ignore-files-by-type +@vindex gnus-uu-ignore-files-by-type +$B$3$NJQ?t$K9gCW$9$k(B @acronym{MIME} $B$N7?$r;}$D%U%!%$%k$O1\Mw$5$l$^$;$s!#(B +Gnus $B$O%U%!%$%kL>$K4p$E$$$F7?$r?dB,$7$F$$$k;v$KCm0U$7$F$/$@$5$$!#(B +@code{gnus-uu} $B$O(B ($B$^$@(B) @acronym{MIME} $B%Q%C%1!<%8$G$O$"$j$^$;$s$N$G!"$3(B +$B$l$O>/$7JQ$G$9!#(B + +@item gnus-uu-tmp-dir +@vindex gnus-uu-tmp-dir +@code{gnus-uu} $B$,$=$N;E;v$r$9$k>l=j$G$9!#(B + +@item gnus-uu-do-not-unpack-archives +@vindex gnus-uu-do-not-unpack-archives +@code{nil} $B$G$J$$$N$O!"(B@code{gnus-uu} $B$OI=<($9$k$?$a$N%U%!%$%k$rC5$9$?$a(B +$B$K%"!<%+%$%V$NCf$^$G$OF~$C$F$$$+$J$$$H$$$&;v$G$9!#(B + +@item gnus-uu-view-and-save +@vindex gnus-uu-view-and-save +@code{nil} $B$G$J$$$N$O!"MxMQo$KJ]B8$9$k$+$I$&(B +$B$+$r?R$M$i$l$k$H$$$&;v$G$9!#(B + +@item gnus-uu-ignore-default-view-rules +@vindex gnus-uu-ignore-default-view-rules +@code{nil} $B$G$J$$$N$O!"(B@code{gnus-uu} $B$O%G%#%U%)%k%H$N1\Mw5,B'$rL5;k$9$k(B +$B$H$$$&;v$G$9!#(B + +@item gnus-uu-ignore-default-archive-rules +@vindex gnus-uu-ignore-default-archive-rules +@code{nil} $B$G$J$$$N$O!"(B@code{gnus-uu} $B$O%G%#%U%)%k%H$N%"!<%+%$%VE83+L?Na(B +$B$rL5;k$9$k$H$$$&;v$G$9!#(B + +@item gnus-uu-kill-carriage-return +@vindex gnus-uu-kill-carriage-return +@code{nil} $B$G$J$$$N$O!"(B@code{gnus-uu} $B$O5-;v$+$i$9$Y$F$N%-%c%j%C%8%j%?!<(B +$B%s(B (carriage return) $B$r$K4p$E$$$?(B @acronym{MIME} $BFbMF$N7?$K~$j$r$7$J$$$GA4$F$r%U%!%$%k$KJ]B8$7$^$9!#MWLs(B +$B$O(B RFC1153 $B=`$8$F$$$^$9!=!=0UL#$N$"$kNL$r;XDj$7$F!"HV9f$rH/9T$9$k4JC1$J(B +$BJ}K!$,8+$D$+$i$J$+$C$?$N$G!"C1=c$K$=$l$i$O@Z$jMn$H$7$F$$$^$9!#(B +@end table + +@node Uuencoding and Posting +@subsubsection uuencode $B$HEj9F(B + +@table @code +@item gnus-uu-post-include-before-composing +@vindex gnus-uu-post-include-before-composing +@code{nil} $B$G$J$$$N$O!"(B@code{gnus-uu} $B$,5-;v$r:n@.$9$kA0$KId9f2=$9$k%U%!(B +$B%$%k$r?R$M$k$H$$$&;v$G$9!#$3$NJQ?t$,(B @code{t} $B$G$"$k$H!"(B@kbd{C-c C-i} $B$K(B +$B$h$C$FId9f2=$5$l$?%U%!%$%k$r$NI|9fAuCV$,B8:_$7$J$$$+$i$G$9!#(B($B$(!<$H!";d$O$=$l$r$9(B +$B$k0l$D$N%Q%C%1!<%8$r8+$?;v$,$"$j$^$9!=!=(B@code{gnus-uu} $B$G$9!#$7$+$7$J$<(B +$B$+!"$=$l$,?t$N$&$A$KF~$k$H$O;W$($J$$$N$G$9(B@dots{}) $B%G%#%U%)%k%H(B +$B$O(B @code{nil} $B$G$9!#(B + +@item gnus-uu-post-separate-description +@vindex gnus-uu-post-separate-description +@code{nil} $B$G$J$$$N$O!"5-=R$OJL$N5-;v$GEj9F$5$l$k$H$$$&;v$G$9!#:G=i$N5-(B +$B;v$OIaDL$O(B (0/x) $B$N$h$&$KHV9f$,IU$1$i$l$^$9!#$b$7$3$NJQ?t(B +$B$,(B @code{nil} $B$G$"$k$H!"MxMQl9g!"(BGnus $B$O%"!<%+%$%V(B +$B$rE83+$7$h$&$H;n$_!"%"!<%+%$%V$NCf$K1\Mw$G$-$k%U%!%$%k$,$"$k$+$rD4$Y$^$9!#(B +$BNc$($P!"(Bgzip $B$5$l$?(B tar $B%U%!%$%k(B @file{pics.tar.gz} $B$,$"$C$F!"%U%!%$(B +$B%k(B @file{pic1.jpg} $B$H(B @file{pic2.gif} $B$r4^$s$G$$$k>l9g!"(BGnus $B$O$l$NCj=P$5$l$?5-;v$4$H$K(B@dfn{$B5?;w5-;v(B}$B$r35N,(B +$B%P%C%U%!$KA^F~$7$^$9!#$3$l$i$N!X5-;v!Y$K0\F0$7$?>l9g$O!"$l$N%U%!%$%k$KBP$7$F:n@.$5$l$^$9!#(B@code{nil} $B$G$"$k(B +$B$H!"F1$81\MwL?Na$r;H$&$9$Y$F$NL?Na$,$=$NL?Na$N0z?t$N%j%9%H$H$7$FEO$5$l$^(B +$B$9!#(B + +@vindex gnus-insert-pseudo-articles +@code{gnus-insert-pseudo-articles} $B$,(B @code{nil} $B$G$J$$$H!"I|9f2=$N$H$-(B +$B$K5?;w5-;v$rA^F~$7$^$9!#%G%#%U%)%k%H$G$O(B @code{t}$B$G$9!#(B + +$B$=$l$G!"$=$N$h$&$J46$8$G$9!#(B@emph{$Bo$K6lpJs$O>C$75n$j$?$$$H$b;W$&(B +* Article Washing:: $B?M@8$r$b$C$H$h$/$9$k$?$/$5$s$N5$$NMx$$$?4X?t(B +* Article Header:: $B%X%C%@!<$r$$$m$$$mJQ7A$5$;$k(B +* Article Buttons:: URL $B$d(B Message-ID $B$d%"%I%l%9$J$I$r%/%j%C%/$9$k(B +* Article Button Levels:: $B%\%?%s$N8+$(J}$r@)8f$9$k(B +* Article Date:: $B$0$:$0$:8@$&$J!"@$3&;~$@(B! +* Article Display:: X-Face, Picons, Smileys $B$rI=<($9$k(B +* Article Signature:: $B=pL>$C$F2?(B? +* Article Miscellanea:: $BB>$N$$$m$$$m$J$b$N(B +@end menu + +@node Article Highlighting +@subsection $B5-;v$N%O%$%i%$%H(B +@cindex highlighting + +$B5-;v%P%C%U%!$r2LJ*%5%i%@$N$h$&$K$7$?$$$@$1$G$J$/!"2Z$d$+$J2LJ*%5%i%@$N$h(B +$B$&$K8+$($k$h$&$K$7$?$$$G$7$g$&!#(B + +@table @kbd +@item W H a +@kindex W H a ($B35N,(B) +@findex gnus-article-highlight +@findex gnus-article-maybe-highlight +$B8=:_$N5-;v$r$b$C$H%O%$%i%$%H(B (highlight) $B$7$^$9!#$3$N4X?t$O!"%X%C%@!$r%O%$%i%$%H$7!"K\BN(B (body) $B$HF,(B (head) $B$K%\%?%s$r2C$($^$9!#(B + +@item W H h +@kindex W H h ($B35N,(B) +@findex gnus-article-highlight-headers +@vindex gnus-header-face-alist +$B%X%C%@!<$r%O%$%i%$%H$7$^$9(B (@code{gnus-article-highlight-headers})$B!#%O%$(B +$B%i%$%H$OJQ?t(B @code{gnus-header-face-alist} $B$K$7$?$,$C$F$J$5$l!"$=$l$O$=(B +$B$l$>$l$NMWAG$,(B @code{(@var{$B@55,I=8=(B} @var{$BL>A0(B} @var{$BFbMF(B})} $B$H$$$&MM<0(B +$B$N%j%9%H$G$9!#(B +@var{$B@55,I=8=(B}$B$O%X%C%@!<$K9gCW$9$k@55,I=8=!"(B@var{$BL>A0(B}$B$O%X%C%@!<$NL>A0$r(B +$B%O%$%i%$%H$9$k$N$K;H$o$l$k%U%'%$%9(B (face) (@pxref{Faces and Fonts})$B!"(B +@var{$BFbMF(B}$B$O%X%C%@!<$NCM$r%O%$%i%$%H$9$k%U%'%$%9$G$9!#:G=i$K9gCW$7$?$b$N(B +$B$,;H$o$l$^$9!#(B@var{$B@55,I=8=(B}$B$O(B @samp{^} $B$,IU$1$i$l$k$Y$-$G$O$J$$;v$KCm0U(B +$B$7$F$/$@$5$$!=!=(BGnus $B$,$=$l$rIU$12C$($^$9!#(B + +@item W H c +@kindex W H c ($B35N,(B) +@findex gnus-article-highlight-citation +$B0zMQ$5$l$?J8$r%O%$%i%$%H$7$^$9(B (@code{gnus-article-highlight-citation})$B!#(B + +$B0zMQ%O%$%i%$%H$r%+%9%?%^%$%:$9$k$$$/$D$+$NJQ?t$O(B: + +@table @code +@vindex gnus-cite-parse-max-size + +@item gnus-cite-parse-max-size +$B5-;v$NBg$-$5$,$3$NJQ?t(B ($B%G%#%U%)%k%H$G$O(B 25000) $B$h$jBg$-$$5-;v$O!"0zMQ%O(B +$B%$%i%$%H$O9T$o$l$^$;$s!#(B + +@item gnus-cite-max-prefix +@vindex gnus-cite-max-prefix +$B0zMQ@\F,8l$N:GBg$ND9$5$G$9(B ($B%G%#%U%)%k%H$G$O(B 20 $B$G$9(B)$B!#(B + +@item gnus-cite-face-list +@vindex gnus-cite-face-list +$B0zMQ$r%O%$%i%$%H$9$k$?$a$K;H$o$l$k%U%'%$%9$N%j%9%H$G$9(B (@pxref{Faces and +Fonts})$B!#F1$8%a%C%;!<%8$NCf$KJ#?t$N5-;v$+$i$N0zMQ$,$"$k$H!"(BGnus $B$O$=$l$>(B +$B$l$N5-;v$+$i$N0zMQ$r$=$lMQ$N%U%'%$%9$GI=<($7$h$&$H$7$^$9!#$3$l$K$h$j!"C/(B +$B$,2?$r=q$$$?$+$,J,$+$j$d$9$/$J$k$G$7$g$&!#(B + +@item gnus-supercite-regexp +@vindex gnus-supercite-regexp +$BIaDL$N(B Supercite $BB0@-9T$K9gCW$9$k@55,I=8=$G$9!#(B + +@item gnus-supercite-secondary-regexp +@vindex gnus-supercite-secondary-regexp +$B0z$-Nv$+$l$?(B Supercite $BB0@-9T$K9gCW$9$k@55,I=8=$G$9!#(B + +@item gnus-cite-minimum-match-count +@vindex gnus-cite-minimum-match-count +$B$=$l$,0zMQ$G$"$k$H7hDj$9$kA0$KD4$Y$J$1$l$P$J$i$J$$:G>.$NF10l@\F,8l$G$9!#(B + +@item gnus-cite-attribution-prefix +@vindex gnus-cite-attribution-prefix +$BB0@-9T$N;O$^$j$K9gCW$9$k@55,I=8=$G$9!#(B + +@item gnus-cite-attribution-suffix +@vindex gnus-cite-attribution-suffix +$BB0@-9T$N:G8e$K9gCW$9$k@55,I=8=$G$9!#(B + +@item gnus-cite-attribution-face +@vindex gnus-cite-attribution-face +$BB0@-9T$K;H$o$l$k%U%'%$%9$G$9!#$=$NB0@-$KB0$9$kJ8$N$?$a$N%U%'%$%9$HM;9g$5(B +$B$l$^$9!#(B + +@item gnus-cite-ignore-quoted-from +@vindex gnus-cite-ignore-quoted-from +$BHs(B-@code{nil} $B$@$C$?$i!"(B@samp{>From } $B$G;O$^$k9T$G0zMQ%O%$%i%$%H$O9T$o$l(B +$B$^$;$s!#$=$l$i$N9T$O!"%(%s%Y%m!<%W(B From $B9T$H:.F1$7$J$$$h$&$K!"(BMTA $B$,%/%*!<(B +$B%H$7$?2DG=@-$,$"$j$^$9!#%G%#%U%)%k%HCM$O(B @code{t} $B$G$9!#(B +@end table + +@item W H s +@kindex W H s ($B35N,(B) +@vindex gnus-signature-separator +@vindex gnus-signature-face +@findex gnus-article-highlight-signature +$B=pL>(B (signature) $B$r%O%$%i%$%H$7$^(B +$B$9(B (@code{gnus-article-highlight-signature})$B!#(B +@code{gnus-signature-separator} (@pxref{Article Signature}) $B$N8e$NA4$F$N(B +$B$b$N$O=pL>$H9M$($i$l!"(B@code{gnus-signature-face} $B$G%O%$%i%$%H$5$l$^$9!#(B +$B$=$l$O%G%#%U%)%k%H$G$O(B @code{italic} $B$G$9!#5-;v$r<+F0E*$K%O%$%i%$%H$9$k(B +$BJ}K!$K$D$$$F$O(B @xref{Customizing Articles} $B$r;2>H$7$F2<$5$$!#(B +@end table + +@node Article Fontisizing +@subsection $B5-;v$N%U%)%s%HJQ99(B +@cindex emphasis +@cindex article emphasis + +@cindex gnus-article-emphasize +@kindex W e ($B35N,(B) +$B?M!9$O$h$/%K%e!<%9$N5-;v$G(B @samp{_$B$3$l(B_} $B$d(B @samp{*$B$3$l(B*} $B$^$?(B +$B$O(B @samp{/$B$3$l(B/} $B$N$h$&$J$b$N$r;H$C$FC18l$r6/D4$7$^$9!#(BGnus $B$O5-;v$rL?(B +$BNa(B @kbd{W e} (@code{gnus-article-emphasize}) $B$K$+$1$k;v$K$h$C$FAGE($K8+(B +$B$($k$h$&$K$G$-$^$9!#(B + +@vindex gnus-emphasis-alist +$B6/D4$,$I$N$h$&$K1i;;$5$l$k$+$OJQ?t(B @code{gnus-emphasis-alist} $B$K$h$C$F@)(B +$B8f$5$l$^$9!#$3$l$O:G=i$NMWAG$,9gCW$9$k$Y$-@55,I=8=$G$"$kO"A[%j%9%H$G$9!#(B +$BFsHVL\$NMWAG$O$I$N@55,I=8=$N%0%k!<%W$,6/D48lA4BN$r8+$D$1$k$?$a$K;H$o$l$k(B +$B$+$r<($9?t;z$G$9!#;0HVL\$O$I$N@55,I=8=$N%0%k!<%W$,I=<($5$l%O%$%i%$%H$5$l(B +$B$k$+$r7h$a$k?t;z$G$9!#(B +($B$3$NFs$D$N%0%k!<%W$N4V$N5-;v$O1#$5$l$^$9!#(B) $B;MHVL\$O%O%$%i%$%H$N%U%'%$(B +$B%9$G$9!#(B + +@lisp +(setq gnus-emphasis-alist + '(("_\\(\\w+\\)_" 0 1 gnus-emphasis-underline) + ("\\*\\(\\w+\\)\\*" 0 1 gnus-emphasis-bold))) +@end lisp + +@cindex slash +@cindex asterisk +@cindex underline +@cindex / +@cindex * + +@vindex gnus-emphasis-underline +@vindex gnus-emphasis-bold +@vindex gnus-emphasis-italic +@vindex gnus-emphasis-underline-bold +@vindex gnus-emphasis-underline-italic +@vindex gnus-emphasis-bold-italic +@vindex gnus-emphasis-underline-bold-italic +$B=i4|@_Dj$G$O<7$D$N5,B'$,$"$j!"$=$l$i$O0J2<$N%U%'%$%9$rMQ$$$^(B +$B$9(B: @code{gnus-emphasis-bold}, @code{gnus-emphasis-italic}, +@code{gnus-emphasis-underline}, @code{gnus-emphasis-bold-italic}, +@code{gnus-emphasis-underline-italic}, +@code{gnus-emphasis-underline-bold}, +@code{gnus-emphasis-underline-bold-italic}$B!#(B + +$B$3$l$i$N%U%'%$%9$rJQ99$7$?$$$N$G$"$l$P!"(B +@kbd{M-x customize} $B$+(B @code{copy-face} $B$r;H$&;v$,$G$-$^$9!#Nc$($P!"(B +@code{gnus-emphasis-italic} $B$KBe$o$j$K@V$N%U%'%$%9$r;H$&$h$&$K$7$?$$$H$-(B +$B$O!"H$7$F2<$5$$!#(B + +@node Article Hiding +@subsection $B5-;v$r1#$9(B +@cindex article hiding + +$B$b$7$/$O!"$=$l$>$l$N5-;v$NFCDj$N$b$N$r1#$7$?$$$+$b$7$l$^$;$s!#$?$$$F$$$N(B +$B5-;v$K$OIaDL$O$"$j$9$.$k$/$i$$:n$j$+$($k$b$N$,$"$j$^$9!#(B + +@table @kbd +@item W W a +@kindex W W a ($B35N,(B) +@findex gnus-article-hide +$B5-;v%P%C%U%!$G$?$/$5$s$N1#F?$r$7$^$9(B (@kbd{gnus-article-hide})$B!#FC$K!"$3(B +$B$N4X?t$O%X%C%@!$r1#$7$^$9!#(B + +@item W W h +@kindex W W h ($B35N,(B) +@findex gnus-article-hide-headers +$B%X%C%@!<$r1#$7$^$9(B (@code{gnus-article-hide-headers})$B!#(B +@xref{Hiding Headers}. + +@item W W b +@kindex W W b ($B35N,(B) +@findex gnus-article-hide-boring-headers +$B$"$^$j6=L#$N$b$F$J$$%X%C%@!<$r1#$7$^(B +$B$9(B (@code{gnus-article-hide-boring-headers})$B!#(B@xref{Hiding Headers}. + +@item W W s +@kindex W W s ($B35N,(B) +@findex gnus-article-hide-signature +$B=pL>$r1#$7$^$9(B (@code{gnus-article-hide-signature})$B!#(B +@xref{Article Signature}. + +@item W W l +@kindex W W l ($B35N,(B) +@findex gnus-article-hide-list-identifiers +@vindex gnus-list-identifiers +@code{gnus-list-identifiers} $B$G;XDj$5$l$F$$$k%a!<%j%s%0%j%9%H$NI8<1$r:o(B +$B=|$7$^$9!#$3$l$i$O$$$/$D$+$N%a!<%j%s%0%j%9%H$N%5!<%P!<$,A4$F(B +$B$N(B @code{Subject} $B%X%C%@!<$N:G=i$K$D$1$kJ8;zNs$G$9(B---$BNc$($P!"(B +@samp{[zebra 4711]}$B!#J8;zNs$N=i$a$K$"$k(B @samp{Re: } $B$O!":o=|$r9T$J$&A0$K(B +$BD7$S1[$5$l$^$9!#(B@code{gnus-list-identifiers} $B$K(B @code{\\(..\\)} $B$r4^$a$F(B +$B$O$$$1$^$;$s!#(B + +@table @code +@item gnus-list-identifiers +@vindex gnus-list-identifiers +$BI=Bj$+$i:o=|$5$l$k$Y$-I8<1$N%j%9%H$K9gCW$9$k@55,I=8=$G$9!#$3$l$O@55,I=8=(B +$B$N%j%9%H$G$"$k$3$H$b$G$-$^$9!#(B +@end table + +@item W W P +@kindex W W P ($B35N,(B) +@findex gnus-article-hide-pem +@acronym{PEM} (privacy enhanced messages ($B%W%i%$%P%7!<3HD%%a%C%;!<(B +$B%8(B)) $BItJ,$r1#$7$^$9(B (@code{gnus-article-hide-pem})$B!#(B + +@item W W B +@kindex W W B ($B35N,(B) +@findex gnus-article-strip-banner +@vindex gnus-article-banner-alist +@vindex gnus-article-address-banner-alist +@cindex banner +@cindex OneList +@cindex stripping advertisements +@cindex advertisements +@code{banner} $B%0%k!<%W%Q%i%a!<%?$G;XDj$5$l$?%P%J!<$r$r1#$9$?$a$K;HMQ$5$l$^$9!#$3$N4X?t$r;H$&J}K!(B +$B$O(B @code{banner} $B%0%k!<%W%Q%i%a!<%?(B (@pxref{Group Parameters}) $B$r%P%J!<(B +$B$rC5n$5$l$k%F%-%9%H$K9g(B +$BCW$9$k@55,I=8=$H$7$F2r$,>C5n$5$l$k$H$$$&(B +$B0UL#$G$"$k%7%s%\%k(B @code{signature} $B$^$?(B +$B$O(B @code{gnus-article-banner-alist} $B$N@55,I=8=$KBP1~$7$?%7%s%\%k$G$"$k$3(B +$B$H$,$G$-$^$9!#(B + +$B%0%k!<%W$K$+$+$o$i$:!"5-;v$NAw?.$l$NMWAG(B +$B$O(B @code{(@var{address} . @var{banner})} $B$N7A<0$r;}$A!"$3$3(B +$B$G(B @var{address} $B$O(B From $B%X%C%@!<$K$"$k%a!<%k%"%I%l%9$K%^%C%A$9$k@55,I=(B +$B8=!"(B@var{banner} $B$O%7%s%\%k(B @code{signature}$B!"(B +@code{gnus-article-banner-alist} $B$NMWAG!"@55,I=8=$^$?$O(B @code{nil} $B$N$&(B +$B$A$N0l$D$G$9!#(B@var{address} $B$,CxC$7$^$9!#Nc$($P!"Aw?.l9g!"0J2<$NMWAG$G$=$l$i$r>C$9$3$H$,$G$-$^(B +$B$9!#(B + +@lisp +("@@yoo-hoo\\.co\\.jp\\'" . "\n_+\nDo You Yoo-hoo!\\?\n.*\n.*\n") +@end lisp +@end table + +@item W W c +@kindex W W c ($B35N,(B) +@findex gnus-article-hide-citation +$B0zMQ$r1#$7$^$9(B (@code{gnus-article-hide-citation})$B!#1#JC$r%+%9%?%^%$%:$9(B +$B$k$$$/$D$+$NJQ?t$O(B: + +@table @code +@item gnus-cited-opend-text-button-line-format +@itemx gnus-cited-closed-text-button-line-format +@vindex gnus-cited-closed-text-button-line-format +@vindex gnus-cited-opend-text-button-line-format + +Gnus $B$O$I$3$N0zMQJ8$,1#$5$l$F$$$k$+$r<($9$?$a$K%\%?%s$rIU$12C$(!"J8>O$N(B +$B1#JC$r@Z$jBX$($i$l$k$h$&$K$7$^$9!#$3$NJQ?t$NMM<0$O$3$l$i$N%U%)!<%^%C%H$N(B +$B$h$&$JJQ?t$K$h$C$F;XDj$5$l$^$9(B (@pxref{Formatting Variables})$B!#/$J$/$H$b$3$ND9$5(B ($B=i4|CM(B 10) $B$G$J$1$l$P$J$j$^$;$s!#(B +@end table +@end table + +$B$3$l$i$NA4$F$N!X1#JC!YL?Na$O@Z$jBX$(L?Na$G$9$,!"$3$l$i$NL?Na$KIi$N@\F,0z(B +$B?t$rM?$($k$H!"$=$l$i$OA0$K1#$5$l$F$$$?$b$N$rI=<($7$^$9!#@5$N@\F,0z?t$rM?(B +$B$($l$P!"$=$l$i$O>o$K1#$7$^$9!#(B + +$B0zMQ%+%9%?%^%$%:$N$?$a$NB>$NJQ?t$N>pJs$N$?$a(B +$B$K(B @ref{Article Highlighting} $B$b;2>H$7$F$/$@$5$$!#(B + +$B<+F0E*$K5-;v$NMWAG$r1#$9$?$a$NJ}K!$O(B @ref{Customizing Articles} $B$r;2>H(B +$B$7$F2<$5$$!#(B + +@node Article Washing +@subsection $B5-;v@vBu(B +@cindex washing +@cindex article washing + +$B;d$?$A$O$3$l$r$b$C$H$b$JM}M3$N2<$G!X5-;v@vBu!Y(B(article washing) $B$H8F$s$G(B +$B$$$^$9!#$9$J$o$A!"%-!<(B @kbd{A} $B$O;H$o$l$F$$$k$N$G!"Be$o$j$K(B +$B%-!<(B @kbd{W} $B$r;H$&I,MW$,$"$k$N$G$9!#(B + +$B;d$?$A$O(B @dfn{$B@vBu(B} $B$r!X2?$+$N2?$+$r2?$+JL$N$b$N$KJQ49$9$k!Y$HDj5A$7$F$$(B +$B$^$9$,!"IaDL$O$b$C$HNI$/8+$($k2?$+$KMn$ACe$-$^$9!#$=$l$K$b$C$H$-$l$$$G$9!"(B +$B$?$V$s!#(B + +Gnus $B$,5-;v$rI=<($9$k4{Dj$N$d$jJ}$rJQ$($?$$$H$-(B +$B$O(B @ref{Customizing Articles} $B$r;2>H$7$F2<$5$$!#(B + +@table @kbd +@item C-u g +$B$3$l$O5-;v@vBu$G$O$J$/$F!"$=$N5U$G$9!#$3$l$r%?%$%W$9$k$H!"%G%#%9%/$d%5!<(B +$B%P!<$K$"$k$,$^$^$N5-;v$,8+$($^$9!#(B + +@item g +$B8=:_$N5-;v$N:FI=<($r6/@)$7$^$9(B (@code{gnus-summary-show-article})$B!#$3$l(B +$B$b$^$?K\Ev$N@vBu$G$O$"$j$^$;$s!#$3$l$r%?%$%W$9$k$H!"0JA0$KE,MQ$5$l$?BPOC(B +$BE*$J@vBu5!G=$O$4GK;;$K$5$l!"$9$Y$F$N%G%#%U%)%k%H$N07$$(B (treatments) $B$rH$7$F2<$5$$!#(B + +@item W r +@kindex W r ($B35N,(B) +@findex gnus-summary-caesar-message +@c @icon{gnus-summary-caesar-message} +$B5-;v%P%C%U%!$G%+%(%5%kJQ49(B (Caesar rotate) (rot13) $B$r$7$^(B +$B$9(B (@code{gnus-summary-caesar-message})$B!#%+%(%5%kJQ49$+(B rot13 $B$rMQ$$$FFI(B +$B$`;v$N$G$-$k!"H=FIIT2DG=$J5-;v$G$9(B ($BE57?E*$K$O!"967bE*$J>iCL$J$I$G$9!#(B) + +$BIaDL$O(B ``rot13'' $B$H8F$P$l$F$$$^$9!#$=$l$O%"%k%U%!%Y%C%H$N0LCV$,(B 13 $B8D2s(B +$BE>$9$k$+$i$G$9!#Nc$($P!"(B@samp{B} (2 $BHVL\$NJ8;z(B) $B"*(B @samp{O} (15 $BHVL\$NJ8(B +$B;z(B)$B!#$3$l$O;~!9!X%+%(%5%kJQ49!Y$H8F$P$l$k;v$b$"$j$^$9!#$H$$$&$N$O!"%+%((B +$B%5%k$,$3$N7A<0$N!"$(!<$H!"$A$g$C$H4JC1$J0E9f2=$r:NMQ$7$?$H$$$&1=$,$"$k$+(B +$B$i$G$9!#(B + +@item W m +@kindex W m ($B35N,(B) +@findex gnus-summary-morse-message +$B5-;v%P%C%U%!$r%b!<%k%9I|9f$7$^$9(B (@code{gnus-summary-morse-message})$B!#(B + +@item W i +@kindex W i ($B35N,(B) +@findex gnus-summary-idna-message +$B8=:_$N5-;v$K$"$k(B IDNA $B%(%s%3!<%I$5$l$?%I%a%$%sL>$r%G%3!<%I$7$^$9!#(B +IDNA $B%(%s%3!<%I$5$l$?%I%a%$%sL>$O(B @samp{xn--bar} $B$N$h$&$K8+$($^$9!#$3$l(B +$B$r!.$*$h$S:GBg$ND9$5$rI=(B +$B$9(B @code{gnus-outlook-deuglify-unwrap-min} $B$*$h(B +$B$S(B @code{gnus-outlook-deuglify-unwrap-max} $B$rD4@0$9$k$3$H$K$h$C$F!"$I$N(B +$B9T$N@^$jJV$7$,2r$+$l$k$+$r@)8f$9$k$3$H$,$G$-$^$9!#(B +(@code{gnus-article-outlook-unwrap-lines})$B!#(B + +@item W Y a +@kindex W Y a ($B35N,(B) +@findex gnus-article-outlook-repair-attribution +$B2u$l$?B0@-9T$r=$I|$7$^$9!#(B +(@code{gnus-article-outlook-repair-attribution})$B!#(B + +@item W Y c +@kindex W Y c ($B35N,(B) +@findex gnus-article-outlook-rearrange-citation +$B2u$l$?0zMQ$r!"%F%-%9%H$rJB$YD>$9$3$H$K$h$C$F=$I|$7$^$9!#(B +(@code{gnus-article-outlook-rearrange-citation})$B!#(B + +@item W w +@kindex W w ($B35N,(B) +@findex gnus-article-fill-cited-article +$B8l$N@^$jJV$7$r$7$^$9(B (@code{gnus-article-fill-cited-articles})$B!#(B + +$B@^$jJV$7$r$9$k$H$-$K!"I}$r;XDj$9$k$?$a$KL?Na$K?tCM@\F,0z?t$rM?$($k;v$,$G(B +$B$-$^$9!#(B + +@item W Q +@kindex W Q ($B35N,(B) +@findex gnus-article-fill-long-lines +$BD9$$9T$r@^$jJV$7$^$9(B (@code{gnus-article-fill-mode-lines})$B!#(B + +@item W C +@kindex W C ($B35N,(B) +@findex gnus-article-capitalize-sentences +$B$=$l$>$l$NJ,$N:G=i$N8l$rBgJ8;z$K$7$^(B +$B$9(B (@code{gnus-article-capitalize-sentences})$B!#(B + +@item W c +@kindex W c ($B35N,(B) +@findex gnus-article-remove-cr +CRLF $B$NAH(B ($B$9$J$o$A!"9T$N:G8e$N(B @samp{^M}) $B$r(B LF $B$KJQ49$7$^$9(B ($B$3$l(B +$B$O(B DOS $B$N9TKv$N@$OC$r$7$^$9(B)$B!"$=$7$F$=$l$+$i;D$j$N(B CR $B$r(B LF $B$KJQ49$7$^(B +$B$9(B ($B$3$l$O(B MAC $B$N9TKv$N@$OC$r$7$^$9(B) (@code{gnus-article-remove-cr})$B!#(B + +@kindex W q ($B35N,(B) +@findex gnus-article-de-quoted-unreadable +Quoted-printable $B$r=hM}$7$^$9(B (@code{gnus-article-de-quoted-unreadable})$B!#(B +Quoted-Printable $B$O(B $BHs(B-@acronym{ASCII} ($B$9$J$o$A(B 8-bit) $B$N5-;v$rAw$k$H$-(B +$B$K;H$o$l$k!"0l$D$N$"$j$U$l$?(B @acronym{MIME} $B%(%s%3!<%G%#%s%0$G$9!#$=$l$O(B +$B0lHL$K(B @samp{d,Ai(Bj,A`(B vu} $B$N$h$&$J$b$N$r(B @samp{d=E9j=E0 vu} $B$K8+$;$k$N$G!"$H(B +$B$F$bFI$_?I$/$J$j$^$9!#LdBj$N5-;v$,!"$=$N%(%s%3!<%G%#%s%0$,9T$J$o$l$?$3$H(B +$B$r<($9(B @code{Content-Transfer-Encoding} $B%X%C%@!<$r;}$C$F$$$l$P!"DL>o$=$l(B +$B$O(B Gnus $B$K$h$C$F<+F0E*$K9T$J$o$l$k$3$H$KCm0U$7$F2<$5$$!#@\F,<-$,M?$($i$l(B +$B$k$H!"J8;z%;%C%H$,?R$M$i$l$^$9!#(B + +@item W 6 +@kindex W 6 ($B35N,(B) +@findex gnus-article-de-base64-unreadable +Base64 $B$r%G%3!<%I$7$^$9(B (@code{gnus-article-de-base64-unreadable})$B!#(B +Base64 $B$OHs(B-@acronym{ASCII} ($B$9$J$o$A(B 8-bit) $B$N5-;v$rAw$k$H$-$K;H$o$l$k!"(B +$B0l$D$N$"$j$U$l$?(B @acronym{MIME} $B%(%s%3!<%G%#%s%0$G$9!#LdBj$N5-;v$,!"$=$N(B +$B%(%s%3!<%G%#%s%0$,9T$J$o$l$?$3$H$r<((B +$B$9(B @code{Content-Transfer-Encoding} $B%X%C%@!<$r;}$C$F$$$l$P!"DL>o$=$l$O(B +Gnus $B$K$h$C$F<+F0E*$K9T$J$o$l$k$3$H$KCm0U$7$F2<$5$$!#@\F,<-$,M?$($i$l$k(B +$B$H!"J8;z%;%C%H$,?R$M$i$l$^$9!#(B + +@item W Z +@kindex W Z ($B35N,(B) +@findex gnus-article-decode-HZ +HZ $B$^$?$O(B HZP $B$r=hM}$7$^$9!#(BHZ ($B$^$?$O(B HZP) $B$OCf9q8l$N5-;v$rEAAw$9$k$H$-(B +$B$K;H$o$l$k0lHLE*$JId9f$G$9!#$3$l$O(B @samp{~@{<:Ky2;S@{#,NpJ)l6HK!#~@}} $B$N(B +$B$h$&$JE57?E*$JJ8;zNs$r:n$j$^$9!#(B + +@item W A +@kindex W A ($B35N,(B) +@findex gnus-article-treat-ansi-sequences +@cindex @acronym{ANSI} control sequences +@acronym{ANSI} SGR $B%7!<%1%s%9$r(B overlay $B$^$?$O(B extent $B$KJQ49$7$^(B +$B$9(B (@code{gnus-article-treat-ansi-sequences})$B!#(B@acronym{ANSI} $B%7!<%1%s%9(B +$B$OCf9q8l$N%K%e!<%9%0%k!<%W$G6/D4I=<($K;H$o$l$F$$$^$9!#(B + +@item W u +@kindex W u ($B35N,(B) +@findex gnus-article-unsplit-urls +URL $B$K4^$^$l$k2~9T$r:o=|$7$^$9!#$$$/$D$+$N%a%$%i!<$O!"9T$rC;$/$9$k$?$a$K(B +$B=P$F$$$/%a!<%k$K2~9T$rA^F~$7$^$9$,!"$3$l$OD9$$(B URL $B$rJ#?t$N9T$KJ,3d$7$F(B +$B$7$^$$$^$9!#2~9T$r:o=|$9$k$3$H$K$h$C$F!"$=$l$i$N(B URL $B$rI|5l$5$;$^(B +$B$9(B (@code{gnus-article-unsplit-urls})$B!#(B + +@item W h +@kindex W h ($B35N,(B) +@findex gnus-article-wash-html +@acronym{HTML} $B$r=hM}$7$^$9!#Ev3:%a%C%;!<%8$,(B @acronym{HTML} $B$G$"$k$3$H(B +$B$r<($9(B @code{Content-Type} $B%X%C%@!<$r;}$C$F$$$?$J$i$P!"$=$l$O(B Gnus $B$K$h$C(B +$B$F<+F0E*$K9T$J$o$l$k$3$H$KCm0U$7$F2<$5$$!#(B + +$B@\F,<-$,M?$($i$l$k$H!"2?$NJ8;z=89g(B (charset) $B$H$7$F07$&$+$r?R$M$i$l$^$9!#(B + +@vindex gnus-article-wash-function +$B%G%#%U%)%k%H$G$O(B @acronym{HTML} $B$NJQ49$K(B @code{mm-text-html-renderer} +(@pxref{Display Customization, ,Display Customization, emacs-mime-ja, +The Emacs MIME Manual}) $B$G@_Dj$5$l$?4X?t$r;H$$$^$9$,!"$3$l$OJQ(B +$B?t(B @code{gnus-article-wash-function} $B$G@)8f$5$l$^$9!#;H$&$3$H$,$G$-$k!"(B +$B$"$i$+$8$aMQ0U$5$l$?4X?t$O0J2<$NDL$j$G$9!#(B + +@table @code +@item w3 +Emacs/W3 $B$r;H$$$^$9!#(B + +@item w3m +@uref{http://emacs-w3m.namazu.org/, emacs-w3m} $B$r;H$$$^$9!#(B + +@item links +@uref{http://links.sf.net/, Links} $B$r;H$$$^$9!#(B + +@item lynx +@uref{http://lynx.isc.org/, Lynx} $B$r;H$$$^$9!#(B + +@item html2text +html2text ($B%7%s%W%k$J(B @acronym{HTML} $B%3%s%P!<%?!IU$-%3%s%H%m!<%k%a%C%;!<%8$NG'>Z$r9T$J$$$^(B +$B$9(B (@code{gnus-article-verify-x-pgp-sig})$B!#(B +@code{newgroup} $B$d(B @code{checkgroups} $B$H$$$C$?%3%s%H%m!<%k%a%C%;!<%8$O!"(B +$BDL>o$=$N%K%e!<%9%0%k!<%W3,AX$N%a%$%s%F%$%J!<$K$h$C$F=pL>$5$l$F$$$^$9!#G'(B +$B>Z$r9T$J$&$?$a$K$O!"%a%$%s%F%$%J!<$N(B @acronym{PGP} $B8x3+80$r$"$J$?$N%-!<(B +$B%j%s%0$KDI2C$7$J$1$l$P$J$j$^$;$s!#(B@footnote{$BB?$/$N%K%e!<%9%0%k!<%W3,AX$N(B +$B%a%$%s%F%$%J!<$N(B @acronym{PGP} $B$N80(B +$B$O(B @uref{ftp://ftp.isc.org/pub/pgpcontrol/README.html} $B$+$iF~$5$l$?%a%C%;!<%8(B (@acronym{PGP}, @acronym{PGP/MIME} $B$^$?(B +$B$O(B @acronym{S/MIME} $B$K$h$C$F(B) $B$r8!>Z$7$^(B +$B$9(B (@code{gnus-summary-force-verify-and-decrypt})$B!#(B@xref{Security}. + +@item W a +@kindex W a ($B35N,(B) +@findex gnus-article-strip-headers-in-body +$B5-;v$NK\BN$N@hF,$+$i(B @code{X-No-Archive} $B%X%C%@!<$N$h$&$J%X%C%@!<$re$N;0$D$NL?Na$r$9$Y$F9T$$$^$9(B (@code{gnus-article-strip-blank-lines})$B!#(B + +@item W E A +@kindex W E A ($B35N,(B) +@findex gnus-article-strip-all-blank-lines +$B$9$Y$F$N6uGr9T$rC5n$7$^(B +$B$9(B (@code{gnus-article-strip-trailing-space})$B!#(B +@end table + +$B5-;v$N@vBu$r<+F0E*$K$9$k$?$a$NJ}K!$O(B @ref{Customizing Articles} $B$r;2>H$7(B +$B$F2<$5$$!#(B + +@node Article Header +@subsection $B5-;v%X%C%@!<(B + +$B$3$l$i$N%3%^%s%I$O5-;v%X%C%@!<$r$$$m$$$mJQ7A$5$;$^$9!#(B + +@table @kbd +@item W G u +@kindex W G u ($B35N,(B) +@findex gnus-article-treat-unfold-headers +$B@^$jJV$5$l$?%X%C%@!<9T$r0l9T$K$7$^(B +$B$9(B (@code{gnus-article-treat-unfold-headers})$B!#(B + +@item W G n +@kindex W G n ($B35N,(B) +@findex gnus-article-treat-fold-newsgroups +@code{Newsgroups} $B$H(B @code{Followup-To} $B%X%C%@!<$r@^$jJV$7$^(B +$B$9(B (@code{gnus-article-treat-fold-newsgroups})$B!#(B + +@item W G f +@kindex W G f ($B35N,(B) +@findex gnus-article-treat-fold-headers +$B$9$Y$F$N%a%C%;!<%8%X%C%@!<$r@^$jJV$7$^(B +$B$9(B (@code{gnus-article-treat-fold-headers})$B!#(B + +@item W E w +@kindex W E w ($B35N,(B) +@findex gnus-article-remove-leading-whitespace +$B$9$Y$F$N%X%C%@!<$+$iM>7W$J6uGr$r$N$b$N$X$N;2>H$,F~$l$i$l$k;v$,$"$j$^$9!#$=$7$F!"(BGnus $B$,(B +$B$=$l$K4X$9$k;v$r!"$=$l$i$N;2>H$N>e$G(B @kbd{RET} $B$rBG$D$+!"%^%&%9$N??Cf$N(B +$B%\%?%s$r;H$&;v$K$h$C$F!":G>.8B$NEXNO$GH$K(B@dfn{$B%\%?%s(B}$B$rIU$1$^$9(B: $B$A$c$s$H(B +$B$7$?(B URL$B!"%a!<%k%"%I%l%9!"(BMessage-ID$B!"(BInfo $B$X$N%j%s%/!"(Bman $B%Z!<%8!"$=$l(B +$B$K4XO"$9$k(B Emacs $B$^$?$O(B Gnus $B$N;29MJ88%$G$9!#$3$l$OFs$D$NJQ?t$K$h$C$F@)(B +$B8f$5$l$F$$$F!"$=$N0l$D$O5-;v$NK\BN$r07$$!"$b$&0l$D$O5-;v$N%X%C%@!<$r07$$(B +$B$^$9!#(B + +@table @code +@item gnus-button-alist +@vindex gnus-button-alist +$B$=$l$>$l$NF~NOMWAG$,.J8;z$O6hJL$5$l$J$$(B) $B$K9gCW$9$k$9$Y$F$NJ8$O30It;2(B +$B>H$G$"$k$H$_$J$5$l$^$9!#$3$l$OKd$a9~$^$l$?(B URL $B$K9gCW$9$kE57?E*$J@55,I=(B +$B8=$G$9(B @samp{]*\\)>}$B!#$3$l$O$^$?@55,I=8=$NCM$r;}$DJQ?t$G(B +$B$"$C$F$b$h$/!"M-MQ$JJQ?t$H$7$F(B @code{gnus-button-url-regexp} $B$*$h(B +$B$S(B @code{gnus-button-mid-or-mail-regexp} $B$,$"$j$^$9!#(B + +@item button-par +Gnus $B$O9gCW$7$?$b$N$N$I$NItJ,$,%O%$%i%$%H$5$l$k$N$+$rCN$i$J$1$l$P$J$j$^(B +$B$;$s!#$3$l$O@55,I=8=$N$I$NI{I=8=$,%O%$%i%$%H$5$l$k$+$r;XDj$9$kHV9f$G$9!#(B +$BA4$F$r%O%$%i%$%H$7$?$$$N$J$i!"$3$3$G(B 0 $B$r;H$C$F$/$@$5$$!#(B + +@item use-p +$B$3$N<0$O(B @code{$BI>2A(B} $B$5$l!"7k2L$,(B @code{nil} $B$G$J$1$l$P!"$3$l$O9gCW$G$"(B +$B$k$H$_$J$5$l$^$9!#$3$l$O4V0c$C$?9gCW$rHr$1$k$?$a$KFCJL$JA*JL$r$7$?$$$H$-(B +$B$KLr$KN)$A$^$9!#$3$3$G$O$7$P$7$P(B @code{gnus-button-@var{*}-level} $B$N$h$&(B +$B$JL>A0$NJQ?t$,;H$o$l$^$9$,!"B>$N$I$s$J7A<0$G$b;H$&$3$H$,$G$-$^$9!#(B + +@c @code{use-p} is @code{eval}ed only if @code{regexp} matches. + +@item function +$B$3$N4X?t(B (function) $B$O$3$N%\%?%s$r%/%j%C%/$7$?$H$-$K8F$P$l$^$9!#(B + +@item data-par +@var{button-par} $B$N$h$&$K!"$3$l$OItJ,I=8=$NHV9f$G$9$,!"$3$l$O9gCW$N$I$N(B +$BItJ,$,(B @var{function} $B$K%G!<%?$H$7$FAw$i$l$k$+$r;XDj$7$^$9!#(B +@end table + +$B$G$9$+$i!"(BURL $B$r%\%?%s$K$9$k40A4$JF~NOMWAG$O(B + +@lisp +("]*\\)>" 0 t gnus-button-url 1) +@end lisp + +@item gnus-header-button-alist +@vindex gnus-header-button-alist +$B$=$l$,5-;v$N%X%C%@!<$@$1$KE,MQ$5$l!"$=$l$>$l$NF~NOMWAG$,$I$N%X%C%@!<$K%\(B +$B%?%s2=$rE,MQ$9$k$+$r<($9DI2C$NMWAG$,$"$k;v$r=|$-!"$3$l$OB>$NO"A[%j%9%H$H(B +$BF1$8$h$&$J$b$N$G$9(B: + +@lisp +(@var{header} @var{regexp} @var{button-par} @var{use-p} @var{function} @var{data-par}) +@end lisp + +@var{header} $B$O@55,I=8=$G$9!#(B + +@subsubsection $B4XO"$9$kJQ?t$H4X?t(B + +@item gnus-button-@var{*}-level +@xref{Article Button Levels}. + +@c Stuff related to gnus-button-browse-level + +@item gnus-button-url-regexp +@vindex gnus-button-url-regexp +$BKd$a9~$^$l$?(B URL $B$K9gCW$9$k@55,I=8=$G$9!#$=$l$O>e$NJQ?t$N%G%#%U%)%k%H$N(B +$BCM$G;H$o$l$^$9!#(B + +@c Stuff related to gnus-button-man-level + +@item gnus-button-man-handler +@vindex gnus-button-man-handler +Man $B%Z!<%8$NI=<($K;H$&4X?t$G$9!#(BMan $B%Z!<%8$NL>A0$NJ8;zNs$G!">/$J$/$H$b0l(B +$B$D$N0z?t$ro$K$=$l$>$lJ8;zNs$,(B Message-ID $B$^$?$O%a!<(B +$B%k%"%I%l%9$G$"$k$H2>Dj$7$^$9!#$3$NJQ?t$,(B @code{ask} $B$K@_Dj$5$l$k$H!"(B +Gnus $B$O$$$D$b%f!<%6$,2?$r$7$?$$$+$r?R$M$^$9!#$=$l$,4X?t$@$C$?>l9g!"$?$C(B +$B$?0l$D$N0z?t$G$"$kJ8;zNs$,M?$($i$l$F8F$P$l$^$9!#$=$N4X?t$O(B @code{mid}$B!"(B +@code{mail}$B!"(B@code{invalid} $B$^$?$O(B @code{ask} $B$rJV$5$J$1$l$P$J$j$^$;$s!#(B +$B%G%#%U%)%k%HCM$O4X?t(B @code{gnus-button-mid-or-mail-heuristic} $B$G$9!#(B + +@item gnus-button-mid-or-mail-heuristic +@findex gnus-button-mid-or-mail-heuristic +$B$=$N0z?t$,(B Message-ID $B$+%a!<%k%"%I%l%9$G$"$k$+$r?dDj$9$k4X?t$G$9!#(B +Message-ID $B$@$C$?$i(B @code{mid} $B$r!"%a!<%k%"%I%l%9$@$C$?$i(B @code{mail} $B$r!"(B +$BIT3N$+$@$C$?$i(B @code{ask} $B$r!"$=$7$FL58z$JJ8;zNs$@$C$?(B +$B$i(B @code{invalid} $B$rJV$7$^$9!#(B + +@item gnus-button-mid-or-mail-heuristic-alist +@vindex gnus-button-mid-or-mail-heuristic-alist +$B4X?t(B @code{gnus-button-mid-or-mail-heuristic} $B$G;H$o$l$k(B @code{(RATE +. REGEXP)} $BBP$NO"A[%j%9%H$G$9!#(B + +@c Stuff related to gnus-button-tex-level + +@item gnus-button-ctan-handler +@findex gnus-button-ctan-handler +CTAN $B%j%s%/$NI=<($K;H$&4X?t$G$9!#(BURL $BL>$NJ8;zNs$r0z?t$H$7$F!"0l$De$K$"$k$H$-$K;H$o$l$k%U%'%$%9$G$9!#(B +@end table + +$B5-;v$r<+F0E*$K%\%?%s2=$9$kJ}K!$O(B @ref{Customizing Articles} $B$r;2>H$7$F2<(B +$B$5$$!#(B + +@node Article Button Levels +@subsection Article button levels +@cindex button levels +$BJQ?t(B @code{gnus-button-@var{*}-level} $B$N9b$$CM$K$h$C$F!"$h$jB?$/$N%\%?%s(B +$B$,8=$l$^$9!#%l%Y%k$,%<%m$@$C$?$i%\%?%s$OI=<($5$l$^$;$s!#%G%#%U%)%k%H(B +$BCM(B ($B$=$l$O(B 5) $B$G$O!"$H$F$b$?$/$5$s$N%\%?%s$r$9$G$K8+$F$$$k$O$:$G$9!#9b$$(B +$B%l%Y%k$G$O$h$jB?$/$N%\%?%s$r8+$k$3$H$K$J$j$^$9$,!"B?$/$NMW$i$J$$$b$N$b$"(B +$B$k$+$b$7$l$^$;$s!#$=$l$i$rHr$1$k$?$a$K!"FCDj$N%0%k!<%W$KBP$7$FJQ(B +$B?t(B @code{gnus-button-@var{*}-level} $B$r@_Dj$7$F$bNI$$$G$7$g(B +$B$&(B (@pxref{Group Parameters})$B!#JQ?t(B @code{gnus-parameters} $B$NNc$G$9(B: + +@lisp +;; @r{$B$$$/$D$+$N%0%k!<%W$G(B @code{gnus-button-*-level} $B$rA}$d$9(B:} +(setq gnus-parameters + '(("\\<\\(emacs\\|gnus\\)\\>" (gnus-button-emacs-level 10)) + ("\\" (gnus-button-man-level 10)) + ("\\" (gnus-button-tex-level 10)))) +@end lisp + +@table @code +@item gnus-button-browse-level +@vindex gnus-button-browse-level +Message-ID$B!"%a!<%k%"%I%l%9$*$h$S%K%e!<%9$N(B URL $B$K4X$9$k;29MJ88%$NI=<($r(B +$B@)8f$7$^$9!#4XO"$9$kJQ?t$H4X?t$K$O(B @code{gnus-button-url-regexp}$B!"(B +@code{browse-url} $B$*$h$S(B @code{browse-url-browser-function} $B$,$"$j$^$9!#(B + +@item gnus-button-emacs-level +@vindex gnus-button-emacs-level +Emacs $B$^$?$O(B Gnus $B$N;29MJ88%$NI=<($r@)8f$7$^$9!#4XO"$9$k4X?t$O!"(B +@code{gnus-button-handle-custom}, +@code{gnus-button-handle-describe-function}, +@code{gnus-button-handle-describe-variable}, +@code{gnus-button-handle-symbol}, +@code{gnus-button-handle-describe-key}, +@code{gnus-button-handle-apropos}, +@code{gnus-button-handle-apropos-command}, +@code{gnus-button-handle-apropos-variable}, +@code{gnus-button-handle-apropos-documentation} $B$*$h(B +$B$S(B @code{gnus-button-handle-library} $B$G$9!#(B + +@item gnus-button-man-level +@vindex gnus-button-man-level +(Unix $B$N(B) man $B%Z!<%8$NI=<($r@)8f$7$^$9!#(B +@code{gnus-button-man-handler} $B$r;2>H$7$F2<$5$$!#(B + +@item gnus-button-message-level +@vindex gnus-button-message-level +Message-ID$B!"%a!<%k%"%I%l%9$*$h$S%K%e!<%9$N(B URL $B$NI=<($r@)8f$7$^$9!#4XO"(B +$B$9$kJQ?t$H4X?t$K(B +$B$O(B @code{gnus-button-mid-or-mail-regexp}, +@code{gnus-button-prefer-mid-or-mail}, +@code{gnus-button-mid-or-mail-heuristic} $B$*$h(B +$B$S(B @code{gnus-button-mid-or-mail-heuristic-alist} $B$,$"$j$^$9!#(B + +@item gnus-button-tex-level +@vindex gnus-button-tex-level +@TeX{} $B$^$?$O(B LaTex $B$K4X$9$k;29MJ88%!"Nc$($P(B CTAN $B$N(B URL$B!"$NI=<($r@)8f$7(B +$B$^$9!#JQ?t(B @code{gnus-ctan-url}, +@code{gnus-button-ctan-handler}, +@code{gnus-button-ctan-directory-regexp} $B$*$h$S(B +@code{gnus-button-handle-ctan-bogus-regexp} $B$r;2>H$7$F2<$5$$!#(B +@end table + +@node Article Date +@subsection $B5-;v$NF|IU(B + +$BF|IU$OJ9$$$?;v$NL5$$2?$+JUnA$J;~4VBS(B (timezone) $B$G:n@.$5$l$F$$$k;v$,NI$/(B +$B$"$k$N$G!"5-;v$,Aw$i$l$?$H$-$K2?;~$G$"$C$?$+$rCN$k;v$,$G$-$k$N$OHs>o$KNI(B +$B$$;v$G$7$g$&!#(B + +@table @kbd +@item W T u +@kindex W T u ($B35N,(B) +@findex gnus-article-date-ut +UT ($BJLL>(B GMT, ZULU) $B$GF|IU$rI=<($7$^$9(B (@code{gnus-article-date-ut})$B!#(B + +@item W T i +@kindex W T i ($B35N,(B) +@findex gnus-article-date-iso-8601 +@cindex ISO 8601 +$BF|IU$r9q:]E*$J7A<0!"(BISO 8601 $B$GI=<($7$^(B +$B$9(B (@code{gnus-article-date-iso8601})$B!#(B + +@item W T l +@kindex W T l ($B35N,(B) +@findex gnus-article-date-local +$BF|IU$rMxMQrM}$KCV$-(B +$B49$($k$3$H$G$9!#(B + +$B$3$N9T$,O"B3$7$F99?7$5$l$k$h$&$K$7$?$$$N$G$"$l$P!"(B + +@lisp +(gnus-start-date-timer) +@end lisp + +$B$r$"$J$?$N(B @file{~/.gnus.el} $B%U%!%$%k$KF~$l$k$+!"2?$+$N%U%C%/$G$NJQ494X?t$r;H$C$F$$$F!"$=$l$,40A4$K4V0c$C$?;v$r$7$F$$$k$N$G$O(B +$B$J$$$+$H?4G[$7$F$$$k$H$-$KLr$KN)$A$^$9!#Nc$($P!"5-;v$,(B 1854$BG/$KEj9F$5$l(B +$B$?$H$J$C$F$$$k$H$7$^$7$g$&!#$7$+$7!"$=$N$h$&$J;v$O(B @emph{$B40A4$K(B }$BIT2DG=(B +$B$G$9!#;d$,?.MQ$G$-$^$;$s$+(B? *$B$/$9$/$9(B($B>P(B)* +@end table + +$B<+F0E*$K9%$`=q<0$GF|IU$rI=<($9$kJ}K!$O(B @ref{Customizing Articles} $B$r;2>H(B +$B$7$F2<$5$$!#(B + +@node Article Display +@subsection Article Display +@cindex picons +@cindex x-face +@cindex smileys + +$B$3$l$i$N%3%^%s%I$O!"$$$m$s$J.$5$JGr9u2hA|$G!"%a%C%;!<%8%X%C%@!<$+$i6!5k$5$l(B +$B$^$9(B (@pxref{X-Face})$B!#(B + +@code{Face} $B%X%C%@!<$O>.$5$J%+%i!<2hA|$G!"%a%C%;!<%8%X%C%@!<$+$i6!5k$5$l(B +$B$^$9(B (@pxref{Face})$B!#(B + +$B%9%^%$%j!<$O!"?M!9$,%a%C%;!<%8$K;6$i$+$7$?$,$k>.$5$J(B @samp{:-)} $B%7%s%\%k(B +$B$G$9!#(B + +$B0lJ}(B Picon $B$O$"$J$?<+?H$N%7%9%F%`$K0MB8$7!"(BGnus $B$O%X%C%@!<$K%^%C%A$9$k$"(B +$B$J$?$N;}$AJ*$rC5$7$F$_$^$9(B (@pxref{Picons})$B!#(B + +$B$3$l$i$9$Y$F$N5!G=$O%H%0%k$G$9!#$b$7$9$G$K$=$l$i$,B8:_$7$F$$$?$J$i$P!"$=(B +$B$l$i$O:o=|$5$l$^$9!#(B + +@table @kbd +@item W D x +@kindex W D x ($B35N,(B) +@findex gnus-article-display-x-face +@code{X-Face} $B$r(B @code{From} $B%X%C%@!<$KI=<($7$^(B +$B$9(B (@code{gnus-article-display-x-face})$B!#(B + +@item W D d +@kindex W D d ($B35N,(B) +@findex gnus-article-display-face +@code{Face} $B$r(B @code{From} $B%X%C%@!<$KI=<($7$^(B +$B$9(B (@code{gnus-article-display-face})$B!#(B + +@item W D s +@kindex W D s ($B35N,(B) +@findex gnus-treat-smiley +$B%9%^%$%j!<$rI=<($7$^$9(B (@code{gnus-treat-smiley})$B!#(B + +@item W D f +@kindex W D f ($B35N,(B) +@findex gnus-treat-from-picon +@code{From} $B%X%C%@!<$r(B Picon $B2=$7$^$9(B (@code{gnus-treat-from-picon})$B!#(B + +@item W D m +@kindex W D m ($B35N,(B) +@findex gnus-treat-mail-picon +$B$9$Y$F$N%a!<%k%X%C%@!<(B ($B$9$J$o$A(B @code{Cc}$B!"(B@code{To}) $B$r(B Picon $B2=$7$^(B +$B$9(B (@code{gnus-treat-mail-picon})$B!#(B + +@item W D n +@kindex W D n ($B35N,(B) +@findex gnus-treat-newsgroups-picon +$B$9$Y$F$N%K%e!<%9%X%C%@!<(B ($B$9$J$o(B +$B$A(B @code{Newsgroups} $B$H(B @code{Followup-To}) $B$r(B Picon $B2=$7$^(B +$B$9(B (@code{gnus-treat-newsgroups-picon})$B!#(B + +@item W D D +@kindex W D D ($B35N,(B) +@findex gnus-article-remove-images +$B5-;v%P%C%U%!$+$i$9$Y$F$N2hA|$r:o=|$7$^(B +$B$9(B (@code{gnus-article-remove-images})$B!#(B +@end table + +@node Article Signature +@subsection $B5-;v$N=pL>(B +@cindex signatures +@cindex article signature + +@vindex gnus-signature-separator +$B$=$l$>$l$N5-;v$OFs$D$NItJ,$KJ,$1$i$l$^$9!=!=8+=P$7(B (header) $B$HK\(B +$BBN(B (body) $B$G$9!#K\BN$O=pL>ItJ,$HJ8>OItJ,$KJ,$1$i$l$^$9!#$I$l$,=pL>$H$_$J(B +$B$5$l$k$+$r7h$a$kJQ?t$O(B @code{gnus-signature-separator} $B$G$9!#$3$l$OIaDL(B +$B$O(B son-of-RFC 1036 $B$G;X<($5$l$F$$$kI8=`$N(B @samp{^-- $} $B$G$9!#$7$+$7!"B?(B +$B$/$N?M$,I8=`$G$J$$=pL>J,N%$rMQ$$$^$9$N$G!"$3$NJQ?t$O0l$D0l$D;n$5$l$k!"@5(B +$B5,I=8=$N%j%9%H$G$"$k$3$H$b$G$-$^$9!#(B($BC5:w$OK\BN$N:G8e$+$i;O$a$X$H$J$5$l(B +$B$^$9!#(B) $B$h$/$"$j$=$&$JCM$O(B: + +@lisp +(setq gnus-signature-separator + '("^-- $" ; @r{$BI8=`(B} + "^-- *$" ; @r{$BIaDL$N2u$7J}(B} + "^-------*$" ; @r{$BB?$/$N?M$OD9!$H$_$J$5$l$k(B +$B$+$X$N@)8B$rDs6!$7$^$9!#(B + +@enumerate +@item +$B$3$l$,@0?t$G$"$l$P!"=pL>$O$3$N@0?t$h$j(B ($BJ8;z$G(B) $BD9$/$J$C$F$$$F$O$$$1$^$;(B +$B$s!#(B +@item +$B$3$l$,IbF0>.?tE@?t$G$"$l$P!"=pL>$O$=$N?t;z$h$j(B ($B9T$G(B) $BD9$/$J$C$F$$$F$O$$(B +$B$1$^$;$s!#(B +@item +$B$3$l$,4X?t$G$"$l$P!"$=$N4X?t$O0z?t$J$7$G8F$P$l!"$=$l$,(B @code{nil} $B$rJV$;(B +$B$P!"%P%C%U%!$K$O=pL>$,$"$j$^$;$s!#(B +@item +$B$3$l$,J8;zNs$G$"$l$P!"$=$l$O@55,I=8=$H$7$F;H$o$l$^$9!#$b$7$=$l$,9gCW$9$l(B +$B$P!"$=$NEv$NJ8;zNs$O=pL>$G$O$"$j$^$;$s!#(B +@end enumerate + +$B$3$NJQ?t$OMWAG$,>e$K5s$2$i$l$?7?$N%j%9%H$G$"$k;v$b$G$-$^$9!#$3$l$ONc$G$9(B: + +@lisp +(setq gnus-signature-limit + '(200.0 "^---*Forwarded article")) +@end lisp + +$B$3$l$O=pL>J,N%J*$N8e$K(B 200 $B$rD6$($k9T$+!"=pL>J,N%J*$N8e$NJ8>O$,@55,I=(B +$B8=(B @samp{^---*Forwarded article} $B$K9gCW$9$l$P!"7k6I$=$l$O=pL>$G$O$J$$$H(B +$B$$$&;v$G$9!#(B + +@node Article Miscellanea +@subsection $B5-;v$$$m$$$m(B + +@table @kbd +@item A t +@kindex A t ($B35N,(B) +@findex gnus-article-babel +$B5-;v$r$"$k8@8l$+$iJL$N$b$N$XJQ49$7$^(B +$B$9(B (@code{gnus-article-babel})$B!#(B +@end table + +@node MIME Commands +@section MIME $B%3%^%s%I(B +@cindex MIME decoding +@cindex attachments +@cindex viewing attachments + +$B0J2<$N%3%^%s%I$O$9$Y$F?t;z@\F,0z?t$rM}2r$7$^$9!#Nc$($P(B @kbd{3 b} $B$O!V;0(B +$BHVL\$N(B @acronym{MIME} $B%Q!<%H$rI=<($9$k!W$H$$$&0UL#$G$9!#(B + +@table @kbd +@item b +@itemx K v +@kindex b ($B35N,(B) +@kindex K v ($B35N,(B) +@acronym{MIME} $B%Q!<%H$rI=<($7$^$9!#(B + +@item K o +@kindex K o ($B35N,(B) +@acronym{MIME} $B%Q!<%H$r%;!<%V$7$^$9!#(B + +@item K c +@kindex K c ($B35N,(B) +@acronym{MIME} $B%Q!<%H$r%3%T!<$7$^$9!#(B + +@item K e +@kindex K e ($B35N,(B) +@acronym{MIME} $B%Q!<%H$r30It%3%^%s%I$GI=<($7$^$9!#(B + +@item K i +@kindex K i ($B35N,(B) +@acronym{MIME} $B%Q!<%H$r%P%C%U%!Fb$KI=<($7$^$9!#(B + +@item K | +@kindex K | ($B35N,(B) +@acronym{MIME} $B%Q!<%H$r30It%3%^%s%I$K%Q%$%W$7$^$9!#(B +@end table + +$B0J9_$N;D$j$N(B @acronym{MIME} $B%3%^%s%I$O!"?t;z@\F,0z?t$rM}2r$7$^$;$s(B: + +@table @kbd +@item K b +@kindex K b ($B35N,(B) +$B$9$Y$F$N(B @acronym{MIME} $B%Q!<%H$N@hF,$K%\%?%s$rIU2C$7$^$9!#Kd$a9~$^$l$?%Q!<(B +$B%H$r%;!<%V(B ($B$^$?$OB>$NF0:n$rl9g$G$b!"@\F,<-$rM?$($k$3$H$K$h$C$F!"(B +$B%G%3!<%I$9$k$?$a$NJ8;z%;%C%H$rF~NO$9$k$3$H$O2DG=$G$9!#$"$k6&DL$N%(%s%3!<(B +$B%G%#%s%0$r;H$C$F(B ($B$G$b(B @acronym{MIME} $B%X%C%@!<$O4^$a$:$K(B) $B?M!9$,5-;v$rEj(B +$B9F$9$kCO0hE*$J%0%k!<%W$G$O!"(B@code{charset} $B%0%k!<%W(B/$B%H%T%C%/!&%Q%i%a!<%?(B +$B$KI,MW$JJ8;z%;%C%H$r@_Dj$9$k$3$H$,$G$-$^$9(B (@pxref{Group Parameters})$B!#(B + +@item W M v +@kindex W M v ($B35N,(B) +@findex gnus-mime-view-all-parts +$B8=:_$N5-;v$K$"$k!"$9$Y$F$N(B @acronym{MIME} $B%Q!<%H$rI=<($7$^(B +$B$9(B (@code{gnus-mime-view-all-parts})$B!#(B + +@end table + +$B4XO"$9$kJQ?t(B: + +@table @code +@item gnus-ignored-mime-types +@vindex gnus-ignored-mime-types +$B$3$l$O@55,I=8=$N%j%9%H$G!"$3$l$K4^$^$l$F$$$k@55,I=8=$K9gCW$9(B +$B$k(B @acronym{MIME} $B%?%$%W$O!"(BGnus $B$K$h$C$F40A4$KL5;k$5$l$^$9!#=i4|CM(B +$B$O(B @code{nil} $B$G$9!#(B + +$B$9$Y$F$N(B Vcard $B$rL5;k$5$;$k$K$O!"$3$s$J$U$&$K$7$F2<$5$$(B: + +@lisp +(setq gnus-ignored-mime-types + '("text/x-vcard")) +@end lisp + +@item gnus-article-loose-mime +@vindex gnus-article-loose-mime +$BHs(B-@code{nil} $B$@$C$?$i!"(BGnus $B$O5-;v$r(B @acronym{MIME} $B%a%C%;!<%8$H$7$F2r(B +$BFI$9$kA0$K!"(B@samp{MIME-Version} $B$,$"$k$3$H$rI,MW$H$7$^$;$s!#$3$l$O!"$H$"(B +$B$k2u$l$?%a!<%k!&%f!<%6!e=q$-$5$l(B +$B$k>l9g$r=|$$$F!"$G$9$,!#=i4|CM$O(B @code{(".*/.*")} $B$G$9!#$3$NJQ?t$O!"(B +@code{gnus-inhibit-mime-unbuttonizing} $B$,(B @code{nil} $B$N$H$-$@$1;H$o$l$^(B +$B$9!#(B + +@item gnus-buttonized-mime-types +@vindex gnus-buttonized-mime-types +$B$3$l$O@55,I=8=$N%j%9%H$G!"$3$l$K4^$^$l$F$$$k@55,I=8=$K9gCW$9(B +$B$k(B @acronym{MIME} $B%?%$%W$K$O!"$=$l$i$,I=<($5$l$J$$>l9g$r=|$$$F!"%\%?%s$,(B +$BIU2C$5$l$^$9!#$3$NJQ?t$O(B @code{gnus-unbuttonized-mime-types} $B$r>e=q$-$7(B +$B$^$9!#=i4|CM$O(B @code{nil} $B$G$9!#$3$NJQ?t$O!"(B +@code{gnus-inhibit-mime-unbuttonizing} $B$,(B @code{nil} $B$N$H$-$@$1;H$o$l$^(B +$B$9!#(B + +$BNc$($P!"%;%-%e%j%F%#!<$N%\%?%s$@$1$rI=<($7$F!"B>$N%\%?%s$rI=<($7$J$$$h$&(B +$B$K$9$k$K$O!"$3$NJQ?t$r(B @code{("multipart/signed")} $B$K@_Dj$7$F!"(B +@code{gnus-unbuttonized-mime-types} $B$O=i4|CM$N$^$^$K$7$F$*$$$F2<$5$$!#(B + +@item gnus-inhibit-mime-unbuttonizing +@vindex gnus-inhibit-mime-unbuttonizing +$B$3$l$,Hs(B-@code{nil} $B$@$H!"$9$Y$F$N(B @acronym{MIME} $B%Q!<%H$K%\%?%s$rIU2C$7(B +$B$^$9!#=i4|CM$O(B @code{nil} $B$G$9!#(B + +@item gnus-article-mime-part-function +@vindex gnus-article-mime-part-function +$B$=$l$>$l$N(B @acronym{MIME} $B%Q!<%H$KBP$7$F!"$3$N4X?t$,(B @acronym{MIME} $B%O%s(B +$B%I%k(B ($BLuCm(B: $B%Q!<%H$N%?%$%W$dFbMFJ*$rI=8=$9$k$?$a$K!"(BGnus $B$NFbIt$G;H$o$l(B +$B$k%G!<%?$N9=B$BN(B) $B$r0z?t$K$7$F8F$P$l$^$9!#$3$N4X?t$O!"%f!<%6$,5-;v$+$i>p(B +$BJs$r=8$a(B ($BNc$($P(B Vcard $B$N>pJs$r(B bbdb $B$N%G!<%?%Y!<%9$K2C$((B) $B$?$j!"%Q!<%H(B +$B$K4p$E$$$F2?$+$r5/F0(B ($BNc$($P!"$9$Y$F$N(B jpeg $B$r$"$k%G%#%l%/%H%j$K%;!<(B +$B%V(B) $B$9$k$?$a$K;H$o$l$k$3$H$,0U?^$5$l$F$$$^$9!#(B + +$B8eH$7$F2<$5$$!#$?$@(B +$B$7!"$3$NJQ?t$,(B @code{nil} $B$@$H!"(B"multipart/related" $B%Q!<%H$NCf$K$"$k2hA|(B +$B$dB>$N;qNA$r8+F($7$F$7$^$&$+$b$7$l$^$;$s!#(B + +@vindex gnus-mime-display-multipart-as-mixed +@item gnus-mime-display-multipart-as-mixed +"multipart" $B$N%Q!<%H$r(B "multipart/mixed" $B$G$"$k$b$N$H$7$FI=<($7$^$9!#$b(B +$B$7(B @code{t} $B$@$H!"(B@code{nil} $B$K$J$C$F$$(B +$B$k(B @code{gnus-mime-display-multipart-alternative-as-mixed} $B$*$h(B +$B$S(B @code{gnus-mime-display-multipart-related-as-mixed} $B$r>e=q$-$7$^$9!#(B + +@vindex mm-file-name-rewrite-functions +@item mm-file-name-rewrite-functions +@acronym{MIME} $B%Q!<%H$N%U%!%$%kL>$r=q$-49$($k$?$a$K;H$o$l$k4X?t$N%j%9%H(B +$B$G$9!#$=$l$>$l$N4X?t$O%U%!%$%kL>$r$rJV$7$^$9!#(B + +$B=PMh9g$$$N4X?t$O(B@* +@code{mm-file-name-delete-whitespace}, +@code{mm-file-name-trim-whitespace}, +@code{mm-file-name-collapse-whitespace} $B$*$h(B +$B$S(B @code{mm-file-name-replace-whitespace} $B$G$9!#:G8e$N$b$N$O%U%!%$%kL>$K(B +$B4^$^$l$k$=$l$>$l$N6uGrJ8;z$r!"JQ(B +$B?t(B @code{mm-file-name-replace-whitespace} $B$NCM$GCV$-49$($^$9!#=i4|CM(B +$B$O(B @code{"_"} ($BC10l$N2<@~(B) $B$G$9!#(B +@findex mm-file-name-delete-whitespace +@findex mm-file-name-trim-whitespace +@findex mm-file-name-collapse-whitespace +@findex mm-file-name-replace-whitespace +@vindex mm-file-name-replace-whitespace + +$BI8=`$N4X?t$G$"$k(B @code{capitalize}, @code{downcase}, @code{upcase} $B$*$h(B +$B$S(B @code{upcase-initials} $B$b!"Lr$KN)$D$G$7$g$&!#(B + +$B%U%!%$%kL>$K4^$^$l$k6uGrJ8;z$,32$r$b$?$i$9$3$H$O!"$_$s$J$,CN$C$F$$$^$9!#(B +$B$?$@$7!"5$$K$+$1$J$$?M$?$A$r=|$$$F!"$G$9$,!#$=$s$JLXKf$N?M$?$A$+$i!"$?$/(B +$B$5$s$NE:IU%U%!%$%k$r/$7$P$+$j5_:Q$9(B +$B$k$?$a$K!"$$$/$D$+$NCO0hE*$J%K%e!<%93,AX$K$O!"2?$NJ8;z%;%C%H$,%G%#%U%)%k(B +$B%H$G$"$k$+$r@k8@$9$kpJs$O(B @code{gnus-group-charset-alist} $BJQ?t$K%(%s%3!<%I$5$l$F$$$^$9!#(B +$B$3$l$O@55,I=8=(B ($B%0%k!<%W$N%U%k%M!<%`$K9gCW$7$?:G=i$N9`L\$r;H$$$^$9(B) $B$H!"(B +$B$=$l$i$N%0%k!<%W$r9VFI$9$k$H$-$K;H$o$l$k%G%#%U%)%k%H$NJ8;z%;%C%H$N!"O"A[(B +$B%j%9%H$G$9!#(B + +@vindex gnus-newsgroup-ignored-charsets +$B2C$($F!"?M!9$N$$$/$i$+$O(B @acronym{MIME} $B$r0U<1$7$F$$$k$H<+(B +$B>N(B (soi-disant) $B$7$F$$$k$/$;$K!"l9g$K$O!"(B@acronym{MIME} $B$G%(%s%3!<%I$7$F$O$$$1$J$$J8;z%;%C%H$r(B +$B8BDj$9$k$?$a$K!"(B@code{gnus-group-posting-charset-alist} $B$,;H$o$l$^$9!#(B +$BNc$($P$$$/$D$+$N3,AX$G$O!"(Bquoted-printable $B$G%X%C%@!<$r%(%s%3!<%I$9$k$3(B +$B$H$O7y$o$l$^$9!#(B + +$B$3$NJQ?t$O!"Ej9F$K:]$7$F%(%s%3!<%I$7$J$$$3$H$,G'$a$i$l$?J8;z%;%C%H$H!"@5(B +$B5,I=8=$NO"A[%j%9%H$G$9!#$=$l$>$l$NMWAG$O(B @code{(}@var{test header +body-list}@code{)} $B$N7A<0$G$"$j!"$=$l$i$Oo(B +$B$K(B quoted-printable $B$G%(%s%3!<%I$9$k(B)$B!"$^$?$O(B @code{t} ($B>o(B +$B$K!V(BContent-Transfer-Encoding: 8bit$B!W$r;H$&(B) $B$G$9!#(B +@end table + +@cindex Russian +@cindex koi8-r +@cindex koi8-u +@cindex iso-8859-5 +@cindex coding system aliases +@cindex preferred charset + +$B%a%C%;!<%8$rAw?.$9$k$H$-$K;H$o$l$kJ8;z%;%C%H$r@)8f$9$kIU2CE*$JJQ?t$K$D$$(B +$B$F$O!"(B@pxref{Encoding Customization, , Encoding Customization, +emacs-mime-ja, The Emacs MIME Manual} $B$r;2>H$7$F2<$5$$!#(B + +Gnus $B8GM-$G$O$J$$$1$l$I!"Lr$KN)$D$+$b$7$l$J$$J8;z%;%C%H$K4X$9$kB>$NHk7m(B: + +$B$b$7!"F10l$N(B Emacs $B$NJ8;z%;%C%H$r%(%s%3!<%I$9$k(B @acronym{MIME} $B$NJ8;z%;%C(B +$B%H$,J#?t$"$k$N$J$i$P!"0J2<$N@k8@$r;H$&$3$H$G!";H$&J8;z%;%C%H$rA*Br$9$k$3(B +$B$H$,$G$-$^$9(B: + +@lisp +(put-charset-property 'cyrillic-iso8859-5 + 'preferred-coding-system 'koi8-r) +@end lisp + +$B$3$l$O!"%m%7%"8l$,%G%#%U%)%k%H$N(B @code{iso-8859-5} @acronym{MIME} $BJ8;z%;%C(B +$B%H$NBe$o$j$K!"(B@code{koi8-r} $B$G%(%s%3!<%I$5$l$k$3$H$r0UL#$7$^$9!#(B + +$B%a%C%;!<%8$r(B @code{koi8-u} $B$GFI$_$?$$$N$G$"$l$P!"0J2<$N$h$&$KqY$9$3$H$,(B +$B$G$-$^$9!#(B + +@lisp +(define-coding-system-alias 'koi8-u 'koi8-r) +@end lisp + +$B$3$l$O!"$[$H$s$I@5$7$$$3$H$r$9$k$G$7$g$&!#(B + +$B$=$7$F:G8e$K!"(B@code{windows-1251} $B$N$h$&$JJ8;z%;%C%H$rFI$`$K$O!"A0$K$K!"(BMuttprint $B$r;H$C$F0u:~$9$k(B +$B$3$H$b$G$-$^$9(B (@pxref{Saving Articles})$B!#(B +@end table + +@node Summary Sorting +@section $B35N,$NJB$SBX$((B +@cindex summary sorting + +$B;d$O$I$&$7$F$"$J$?$,$=$&$7$?$$$N$+$O$o$+$i$J$$$N$G$9$,!"$=$l$G$b$"$J$?$O(B +$B$?$/$5$s$NJ}K!$G35N,%P%C%U%!$rJB$SBX$($k;v$,$G$-$^$9!#(B + +@table @kbd +@item C-c C-s C-n +@kindex C-c C-s C-n ($B35N,(B) +@findex gnus-summary-sort-by-number +$B5-;vHV9f$K$h$C$FJB$SBX$($^$9(B (@code{gnus-summary-sort-by-number})$B!#(B + +@item C-c C-s C-a +@kindex C-c C-s C-a ($B35N,(B) +@findex gnus-summary-sort-by-author +$BCxJ}$GF0:n$7$^(B +$B$9!#8el9g$O!"$9$Y$F$N35N,9T$,0l9T0l9TJB$SBX$($i$l$^$9!#A0l9g$O!"(B +$B:,K\$H:,K\$r4pK\$H$7$FJB$SBX$($i$l!"$=$l$O$"$J$?$,5a$a$F$$$k;v$H$O0[(B +$B$J$C$F$$$k$+$b$7$l$^$;$s!#%9%l%C%I$r;H$&;v$r@Z$jBX$($k$K$O(B @kbd{T T} $B$r(B +$BBG$C$F$/$@$5$$(B (@pxref{Thread Commands})$B!#(B + +@node Finding the Parent +@section $B?F5-;v$rC5$9(B +@cindex parent articles +@cindex referring articles + +@table @kbd +@item ^ +@kindex ^ ($B35N,(B) +@findex gnus-summary-refer-parent-article +$B8=:_$N5-;v$N?F5-;v$rFI$_$?$/$F!"$=$l$,35N,%P%C%U%!$KI=<($5$l$F$$$J$/$F$b!"(B +$B$*$=$i$/$=$l$O2DG=$G$7$g$&!#$H$$$&$N$O!"8=:_$N%0%k!<%W(B +$B$,(B @acronym{NNTP} $B$GC5n$5$l$F$$$J$$>e!"8=:_(B +$B$N5-;v$N(B @code{References} $B$,$V$A2u$5$l$F$$$J$1$l$P!"$?$@!"(B +@kbd{^} $B$+(B @kbd{A r} $B$r2!$;$PNI$$$@$1$G(B +$B$9(B (@code{gnus-summary-refer-parent-article})$B!#$b$7A4$F$,>e/$7;~4V$,(B +$B$+$+$j$^$9!#$b$7!"$3$l$r$7$P$7$P9T$&$N$G$"$l$P!"(B +@code{gnus-fetch-old-headers} $B$r(B @code{invisible} $B$K@_Dj$9$k$3$H$r9M$($?(B +$B$[$&$,NI$$$G$7$g$&(B (@pxref{Filling In Threads})$B!#$3$l$OIaDL$O;k3PE*$J8z(B +$B2L$O$"$j$^$;$s$,!"$3$NL?Na$NF0:n$r$+$J$jB.$/$9$k$G$7$g$&!#$b$A$m$s!"%0%k!<(B +$B%W$KF~$k$N$O>/$7CY$/$J$j$^$9!#(B + +@vindex gnus-refer-thread-limit +$BJQ?t(B @code{gnus-refer-thread-limit} $B$O$3$NL?Na$re=q$-$9$k;v$,$G$-$^$9!#(B + +@item M-^ ($B35N,(B) +@findex gnus-summary-refer-article +@kindex M-^ ($B35N,(B) +@cindex Message-ID +@cindex fetching by Message-ID +$B$I$N%0%k!<%W$KB0$7$F$$$k$+$K4X$o$i$:!"G$0U$N5-;v$r(B @acronym{NNTP} $B%5!<%P!<(B +$B$K?R$M$k;v$,$G$-$^$9!#(B +@kbd{M-^} (@code{gnus-summary-refer-article}) $B$O(B @code{Message-ID}$B!"$=$l(B +$B$O$"$ND9$/!"$J$+$J$+FI$`;v$N$G$-$J(B +$B$$(B @samp{<38o6up$6f2@@hymir.ifi.uio.no>} $B$N$h$&$J;2>H$r$"$J$?$K?R$M$^$9!#(B +$B$"$J$?$O$9$Y$F$r@53N$KBG$A9~$^$J$1$l$P$J$j$^$;$s!#;DG0$J$,$i!"$"$$$^$$$J(B +$B8!:w$O$G$-$J$$$N$G$9!#(B +@end table + +$B%K%e!<%9$G$J$$A*BrJ}K!$+$i(B @code{Message-ID} $B$Ge=q$-$9$k;v$,(B +$B$G$-$^$9!#(B + +@vindex gnus-refer-article-method +$B$b$7$"$J$?$NFI$s$G$$$k%0%k!<%W$,(B @code{Message-ID} $B$G$Nl9g!"(B +@code{gnus-refer-article-method} $B$r(B @acronym{NNTP} $B$K@_Dj$9$k;v$,$G$-$^(B +$B$9!#$*$=$i$/!"$"$J$?$,2qOC$7$F$$$k(B @acronym{NNTP} $B%5!<%P!<$,$"$J$?$NFI$s(B +$B$G$$$k%9%W!<%k$r99?7$7$F$$$k$HHs>o$KNI$$$G$7$g$&!#$7$+$7!"$=$l$O$I$&$7$F(B +$B$bI,MW$J$o$1$G$O$"$j$^$;$s!#(B + +$B$=$l$OA*BrJ}K!$N%j%9%H$G$"$k$3$H$b$G$-!"FCJL$J%7%s%\%k(B @code{current} $B$G(B +$B$"$k$3$H$b$G$-$^$9!#8el9g$O!"(BGnus $B$O9g$&$b$N$rH/8+$9$k$^$G%j%9%H$NA4$F$NJ}K!$r;n$7$^$9!#(B + +$B$3$l$O8=:_$NJ}K!$r;n$7$F!"$=$l$,<:GT$7$?>l9g$K$O(B Google $B$K?V$/@_Dj$NNc$G(B +$B$9(B: + +@lisp +(setq gnus-refer-article-method + '(current + (nnweb "google" (nnweb-type google)))) +@end lisp + +$B$[$H$s$I$N%a!<%k%P%C%/%(%s%I$O(B @code{Message-ID} $B$G$N$N$b$N$O(B +$B;~4V$,$+$+$j$9$.$^$9!#(B) @code{nnmh} $B$G$OA4$/IT2DG=$G$9!#(B + +@node Alternative Approaches +@section $BBeBX/$7$NA*Br;h$rM?$($F$"$j$^$9!#(B + +@menu +* Pick and Read:: $B$^$:!"5-;v$K0u$rIU$1$F!"$=$l$+$iFI$`(B +* Binary Groups:: $B$9$Y$F$N5-;v$r<+F0(B-$BI|9f2=$9$k(B +@end menu + +@node Pick and Read +@subsection $BA*$s$GFI$`(B +@cindex pick and read + +$B$$$/$D$+$N%K%e!<%9%j!<%@!<(B (@code{nn} $B$d!"$"$N$)!"(BVM/CMS $B$G(B +$B$N(B @code{Netnews} $B$J$I(B) $B$OFsAj$NFI$`$?$a$N3&LL$r;H$$$^$9!#MxMQ/(B +$B$7$N%W%m%;%90uL?Na$,0lBG80L?Na$K$J$j!"35N,%P%C%U%!$X@Z$jBX$($k$?$a$NDI2C(B +$BL?Na$r0l$DDs6!$7$^$9!#(B + +$B$3$l$,(B pick mode $B$r;H$C$?$H$-$K;HMQ2DG=$J%-!<$G$9(B: + +@table @kbd +@item . +@kindex . ($BA*Br(B) +@findex gnus-pick-article-or-thread +$B8=:_$N9T$N5-;v$+%9%l%C%I$rA*Br$7$^(B +$B$9(B (@code{gnus-pickd-article-or-thread})$B!#$b$7JQ(B +$B?t(B @code{gnus-thread-hide-subtree} $B$,(B true $B$G$"$l$P!"$3$N%-!<$O%9%l%C%I(B +$B$N:G=i$N5-;v$G;H$o$l$?$H$-$O%9%l%C%IA4BN$rA*Br$7$^$9!#$=$&$G$J$1$l$P!"$=(B +$B$l$O$=$N5-;v$@$1$rA*Br$7$^$9!#$b$7?tCM@\F,0z?t$rM?$($i$l$l$P$=$N%9%l%C%I(B +$B$+5-;v$X$H@8$s$G$$$-!"$=$l$rA*Br$7$^$9!#(B($B9T?t$OIaDL$O35N,A*Br9T$N:G=i$K(B +$BI=<($5$l$F$$$^$9!#(B) + +@item SPACE +@kindex SPACE ($BA*Br(B) +@findex gnus-pick-next-page +$B35N,%P%C%U%!$r0l%Z!<%8l9g$O$=$l$O5-;v$@(B +$B$1$rL$A*Br$K$7$^$9!#$=$N9T$K$"$k%9%l%C%I$+5-;v$rL$A*Br$K$9$k$?$a$K$3$N%-!<(B +$B$K?tCM@\F,0z?t$rM?$($k;v$,$G$-$^$9!#(B + +@item RET +@kindex RET ($BA*Br(B) +@findex gnus-pick-start-reading +@vindex gnus-pick-display-summary +$BA*Br$5$l$?5-;v$rFI$_;O$a$^$9(B (@code{gnus-pick-start-reading})$B!#@\F,0z?t(B +$B$rM?$($i$l$l$P!"$^$:$9$Y$F$NL$A*Br5-;v$K4{FI$N0u$rIU$1$^$9!#(B +@code{gnus-pick-display-summary} $B$,(B @code{nil} $B$G$J$$$H!"35N,%P%C%U%!$O(B +$BFI$s$G$$$k4V$bI=<($5$l$^$9!#(B +@end table + +$BA4$F$NIaDL$N35N,%b!<%IL?Na$OA*Br%b!<%I(B (pick-mode)$B$G$b;HMQ2DG=$G$9$,!"(B +@kbd{u} $B$ONc30$G$9!#$7$+$7!"F1$84X(B +$B?t(B @code{gnus-summary-tick-article-forward} $B$K3d$jEv$F$i$l$F$$(B +$B$k(B @kbd{!} $B$r;H$&;v$,$G$-$^$9!#(B + +$B$3$l$,NI$$9M$($@$H;W$&$N$G$"$l$P!"/$70c$$$^$9!#$=$l$>$l$N9T$N(B +$B:G=i$K9T?t$,I=<($5$l$^$9!#(BPick $B%b!<%I$N9T$NMM<0$OJQ(B +$B?t(B @code{gnus-summary-pick-line-format} $B$G@)8f$5$l$^(B +$B$9(B (@pxref{Formatting Variables})$B!#$3$l(B +$B$O(B @code{gnus-summary-line-format} $B$HF1$8MM<0;XDj$r/$7$"$j$^$9(B: + +@table @code +@item gnus-tree-mode-hook +@vindex gnus-tree-mode-hook +$B$9$Y$F$NLZ%b!<%I%P%C%U%!$GH$7$F$/$@$5$$!#(B + +@item gnus-selected-tree-face +@vindex gnus-selected-tree-face +$BLZ%P%C%U%!$GA*Br$5$l$?5-;v$r%O%$%i%$%H$9$k$?$a$K;H$o$l$k%U%'%$%9$G$9!#%G%#(B +$B%U%)%k%H$G$O(B @code{modeline} $B$G$9!#(B + +@item gnus-tree-line-format +@vindex gnus-tree-line-format +$BLZ$N@a$N$?$a$N%U%)!<%^%C%HJ8;zNs$G$9!#$G$b$3$NL>A0$O>/$78m$C$?L>>N$G(B +$B$9!=!=$=$l$O9T$G$O$J$/!"$?$@@a$rDj5A$9$k$@$1$G$9!#%G%#%U%)%k%H$NCM(B +$B$O(B @samp{%(%[%3,3n%]%)} $B$G!"$=$l$OEj9FA0$N:G=i$N;0J8;z$rI=<($7$^$9!#(B +$B$9$Y$F$N@a$,F1$8D9$5$G$"$k$N$O=EMW$G$9$N$G!"(B@samp{%4,4n} $B$N$h$&$J;XDj(B +$B$r(B @emph{$B;H$o$J$1$l$P$J$i$J$$(B} $B$N$G$9!#(B + +$BM-8z$J;XDj$O(B: + +@table @samp +@item n +$BEj9FA0!#(B +@item f +@code{From} $BMs!#(B +@item N +$B5-;v$NHV9f!#(B +@item [ +$B3+$-3g8L!#(B +@item ] +$BJD$83g8L!#(B +@item s +$BI=Bj!#(B +@end table + +@xref{Formatting Variables}. + +$BI=<($K4XO"$7$?JQ?t$O(B: + +@table @code +@item gnus-tree-brackets +@vindex gnus-tree-brackets +$B$3$l$O!XK\Ev$N!Y5-;v$H!X$^$P$i5-;v!Y$K0c$$$rIU$1$k$?$a$K;H$o$l$^$9!#MM<0(B +$B$O(B @code{((@var{$BK\Ev$N3+(B} . @var{$BK\Ev$NJD(B}) (@var{$B$^$P$i3+(B} . @var{$B$^$P(B +$B$iJD(B}) (@var{$B56$N3+(B} . @var{$B56$NJD(B}))} $B$H$J$C$F$$$F!"%G%#%U%)%k%H(B +$B$O(B @code{((?[ . ?]) (?( . ?)) (?@{ . ?@}) (?< . ?>))} $B$G$9!#(B + +@item gnus-tree-parent-child-edges +@vindex gnus-tree-parent-child-edges +$B$3$l$O?F$N@a$r;R$K@\B3$9$k$?$a$K;H$o$l$kJ8;z$r4^$s$@%j%9%H$G$9!#%G%#%U%)(B +$B%k%H$O(B @code{(?- ?\\ ?|)} $B$G$9!#(B +@end table + +@item gnus-tree-minimize-window +@vindex gnus-tree-minimize-winodw +$B$b$7$3$NJQ?t$,(B @code{nil} $B$G$J$$$H!"B>$N(B Gnus $B%&%#%s%I%&$,$b$C$H>l=j$r.$5$/$7$^$9!#$b$7$3$NJQ?t$,?t;z(B +$B$G$"$k$H!"LZ%P%C%U%!$O$=$N?t;z$h$jBg$-$/$J$k;v$O$"$j$^$;$s!#%G%#%U%)%k%H(B +$B$O(B @code{t} $B$G$9!#%U%l!<%`$G$$$/$D$+$N%&%#%s%I%&$,2#$KJB$s$GI=<($5$l$F$$(B +$B$F!"LZ%P%C%U%!$,$=$N$&$A$N0l$D$G$"$k>l9g!"LZ%&%#%s%I%&$r:G>.2=$9$k$3$H$O(B +$B$=$NNY$KI=<($5$l$F$$$k$9$Y$F$N%&%#%s%I%&$NBg$-$5$rJQ99$9$k;v$KCm0U$7$F$/(B +$B$@$5$$!#(B + +$B0J2<$N%U%C%/$rDI2C$7$F!"$$$D$G$bLZ%&%#%s%I%&$r:G>.2=$7$F$bNI$$$G$7$g$&!#(B + +@lisp +(add-hook 'gnus-configure-windows-hook + 'gnus-tree-perhaps-minimize) +@end lisp + +@item gnus-generate-tree-function +@vindex gnus-generate-tree-function +@findex gnus-generate-horizontal-tree +@findex gnus-generate-vertical-tree +$BLZ%P%C%U%!(B (vertical tree buffer) $B$GI=<($5$l$?$b$N$G$9(B: + +@example +@{***@} + |--------------------------\-----\-----\ +(***) [Bjo] [Gun] [Gun] + |--\-----\-----\ | +[odd] [Jan] [odd] (***) [Jor] + | | |--\ +[Gun] [Eri] [Eri] [odd] + | + [Paa] +@end example + +$B$b$7?eJ?LZ$r;H$C$F$$$k$N$J$i!"35N,%P%C%U%!$GLZ$rNY$j9g$o$;$GI=<($G$-$l$P(B +$B4r$7$$$G$7$g$&!#C5n$9$k$H$$$&$3(B +$B$H$G$9!#(B(@pxref{Expiring Mail})$B!#(B + +@item B C-M-e +@kindex B C-M-e ($B35N,(B) +@findex gnus-summary-expire-articles-now +$B%0%k!<%W$N$9$Y$F$N4|8B:o=|2DG=$J5-;v$r:o=|$7$^(B +$B$9(B (@code{gnus-summay-expire-articles-now})$B!#$3$l$O8=:_$N%0%k!<%W$N3:Ev(B +$B$9$k(B @strong{$BA4$F(B}$B$N4|8B:o=|5-;v$O1J1s$K6u$NBg$-$J(B @file{/dev/null} $B$X>C(B +$B$(5n$k$H$$$&;v$G$9!#(B + +@item B DEL +@kindex B DEL ($B35N,(B) +@findex gnus-summary-delete-article +@c @icon{gnus-summary-mail-delete} +$B%a!<%k5-;v$r:o=|$7$^$9!#$3$l$O!X$"$J$?$N%G%#%9%/$+$i:#$+$i1J1s$K:o=|$7$F!"(B +$BFsEY$HLa$i$J$$!Y$N!X:o=|!Y$G$9!#Cm0U$7$F;H$C$F$/$@$5(B +$B$$(B (@code{gnus-summary-delete-article})$B!#(B + +@item B m +@kindex B m ($B35N,(B) +@cindex move mail +@findex gnus-summary-move-article +@vindex gnus-preserve-marks +$B$"$k%a!<%k%0%k!<%W$+$iJL$N$H$3$m$X5-;v$r0\F0$7$^(B +$B$9(B (@code{gnus-summary-move-article})$B!#(B@code{gnus-preserve-marks} $B$NCM(B +$B$,(B @code{nil} $B$G$O$J$$$J$i$P(B ($B$3$l$,=i4|CM$G$9$,(B)$B!"%^!<%/$OJ]B8$5$l$^$9!#(B + +@item B c +@kindex B c ($B35N,(B) +@cindex copy mail +@findex gnus-summary-copy-article +@c @icon{gnus-summary-mail-copy} +$B$"$k%0%k!<%W(B ($B%a!<%k%0%k!<%W$dB>$N$b$N(B) $B$+$i%a!<%k%0%k!<%W$K5-;v$rJ#@=$7(B +$B$^$9(B (@code{gnus-summary-copy-article})$B!#(B@code{gnus-preserve-marks} $B$NCM(B +$B$,(B @code{nil} $B$G$O$J$$$J$i$P(B ($B$3$l$,=i4|CM$G$9$,(B)$B!"%^!<%/$OJ]B8$5$l$^$9!#(B + +@item B B +@kindex B B ($B35N,(B) +@cindex crosspost mail +@findex gnus-summary-crosspost-article +$B8=:_$N5-;v$rB>$N%0%k!<%W$K%/%m%9%]%9%H$7$^(B +$B$9(B (@code{gnus-summary-crosspost-article})$B!#$3$l$OB>$N%0%k!<%W5-;v$N?7$7(B +$B$$J#@=$r:n@.$7!"5-;v$N(B Xref $BMs$bE,@Z$K99?7$5$l$^$9!#(B + +@item B i +@kindex B i ($B35N,(B) +@findex gnus-summary-import-article +$BG$0U$N%U%!%$%k$r8=:_$N%a!<%k%0%k!<%W$K$H!"(B +@code{From} $BMs$H(B @code{Subject} $BMs$NF~NO$rB%$5$l$^$9!#(B + +@item B I +@kindex B I ($B35N,(B) +@findex gnus-summary-create-article +$B6u$N5-;v$r8=:_$N%a!<%k%0%k!<%W$K:n$j$^(B +$B$9(B (@code{gnus-summary-create-article})$B!#(B@code{From} $B%X%C%@!<(B +$B$H(B @code{Subject} $B%X%C%@!<$NFbMF$r?R$M$i$l$^$9!#(B + +@item B r +@kindex B r ($B35N,(B) +@findex gnus-summary-respool-article +@vindex gnus-summary-respool-default-method +$B%a!<%k5-;v$r%9%W!<%k$7D>$7$^$9(B (@code{gnus-summary-move-article})$B!#(B +@code{gnus-summary-respool-default-method} $B$,:F%9%W!<%k$9$k$H$-$N%G%#%U%)(B +$B%k%H$NA*BrJ}K!$H$7$F;HMQ$5$l$^$9!#$3$NJQ?t$O%G%#%U%)%k%H$G(B @code{nil} $B$G!"(B +$B$3$l$O8=:_$N%0%k!<%W$NA*BrJ}K!$,Be$o$j$K;H$o$l$k$H$$$&;v$G$9!#(B +@code{gnus-preserve-marks} $B$NCM$,(B @code{nil} $B$G$O$J$$$J$i$P(B ($B$3$l$,=i4|(B +$BCM$G$9$,(B)$B!"%^!<%/$OJ]B8$5$l$^$9!#(B + +@item B w +@itemx e +@kindex B w ($B35N,(B) +@kindex e ($B35N,(B) +@findex gnus-summary-edit-article +@kindex C-c C-c ($B5-;v(B) +@findex gnus-summary-edit-article-done +$B8=:_$N5-;v$rJT=8$7$^$9(B (@code{gnus-summary-edit-article})$B!#JT=8$r=*N;$7(B +$B$FJQ99$r1J1s$K$9$k$?$a(B +$B$K(B @kbd{C-c C-c} (@code{gnus-summary-edit-article-done}) $B$rBG$A$^$9!#$b(B +$B$7L?Na(B @kbd{C-c C-c} $B$K?tCM@\F,0z?t$rM?$($k$H!"(BGnus $B$O5-;v$r:F%O%$%i%$%H(B +$B$7$^$;$s!#(B + +@item B q +@kindex B q ($B35N,(B) +@findex gnus-summary-respool-query +$B$b$75-;v$r:F%9%W!<%k$7$?$$$H$-$O!":F%9%W!<%k$r$9$kA0$K$I$N%0%k!<%W$K5-;v(B +$B$,0\$k$+$K6=L#$,$"$k$G$7$g$&!#$3$NL?Na$G$=$l$,$o$+$j$^(B +$B$9(B (@code{gnus-summary-respool-query})$B!#(B + +@item B t +@kindex B t ($B35N,(B) +@findex gnus-summary-respool-trace +$BF1MM$K!"$3$NL?Na$O:FN/$a9~$_$r$9$k$H$-$K;H$o$l$?A4$F$NFC5iJ,3dJ}<0$r!"$b(B +$B$7$=$l$,$"$l$PI=<($7$^$9(B (@code{gnus-summary-respool-trace})$B!#(B + +@item B p +@kindex B p ($B35N,(B) +@findex gnus-summary-article-posted-p +$B0lIt$N?M$O$"$J$?$NEj9F$X$N%U%)%m!<%"%C%W$r$9$k$H$-$K!"(B``$B?F@Z$J(B'' $BJ#@=$r(B +$BAw$k798~$,$"$j$^$9!#$3$l$i$OIaDL$O$=$3$K(B @code{Newsgroups} $BMs$,IU$$$F$$(B +$B$k$N$G$9$,!"$$$D$b$=$&$G$"$k$H$O8B$j$^$;$s!#$3$NL?(B +$BNa(B (@code{gnus-summary-article-posted-p}) $B$O8=:_$N5-;v$r$"$J$?$N%K%e!<%9(B +$B%5!<%P!<$+$i(B ($B$H$$$&$h$j$O!"$`$7(B +$B$m(B @code{gnus-refer-article-method} $B$d(B @code{gnus-select-method} $B$+(B +$B$i(B) $B$r;H$&$N$KBP$7(B +$B$F(B @code{gnus-move-split-methods} $B$O%0%k!<%WL>$r;H$&$3$H$KCm0U$7$F2<$5(B +$B$$!#(B) + +@lisp +(setq gnus-move-split-methods + '(("^From:.*Lars Magne" "nnml:junk") + ("^Subject:.*gnus" "nnfolder:important") + (".*" "nnml:misc"))) +@end lisp + +@node Various Summary Stuff +@section $B$$$m$$$m$J35N,$NJ*7o(B + +@menu +* Summary Group Information:: $B>pJs;X8~$NL?Na(B +* Searching for Articles:: $BJ#?t5-;vL?Na(B +* Summary Generation Commands:: +* Really Various Summary Commands:: $B$"$N$d$C$+$$$JB>$KE,9g$7$J$$L?Na(B +@end menu + +@table @code +@vindex gnus-summary-display-while-building +@item gnus-summary-display-while-building +$BHs(B-@code{nil} $B$@$C$?$i!"9=C[Cf$N35N,%P%C%U%!$r99?7$7$J$,$iI=<($7$^$9!#(B +@code{t} $B$@$C$?>l9g$O!"9T$,A^F~$5$l$kEY$KKh2s%P%C%U%!$r99?7$7$^$9!#CM$,(B +$B@0?t(B @var{n} $B$G$"$C$?>l9g$O!"(B@var{n} $B9TKh$KI=<($r99?7$7$^$9!#%G%#%U%)%k(B +$B%H$O(B @code{nil} $B$G$9!#(B + +@vindex gnus-summary-display-arrow +@item gnus-summary-display-arrow +$BHs(B-@code{nil} $B$@$C$?$i!"8=:_$N5-;v$r;X$7<($9$?$a$K%U%j%s%8$KLp0u$rI=<($7(B +$B$^$9!#(B + +@vindex gnus-summary-mode-hook +@item gnus-summary-mode-hook +$B35N,%b!<%I%P%C%U%!$r:n@.$9$k$H$-$K$3$N%U%C%/$,8F$P$l$^$9!#(B + +@vindex gnus-summary-generate-hook +@item gnus-summary-generate-hook +$B$3$l$O%9%l%C%I:n@.$H35N,%P%C%U%!:n@.$NA0$Ko$KJXMx$G$9!#$3$N%U%C%/$O$[$H$s$I$N35N,%P%C%U%!(B +$BJQ?t$,@_Dj$5$l$?8e$K8F$P$l$^$9!#(B + +@vindex gnus-summary-prepare-hook +@item gnus-summary-prepare-hook +$B$=$l$O35N,%P%C%U%!$,:n@.$5$l$?8e$K8F$P$l$^$9!#Nc$($P!"$=$l$O2?$+B>$N$N5-;v$HF1$8$h$&$KI=<($7$^$9!#$3$NJQ?t$,(B @code{t} $B$G$"$k$H!"(B +$B$=$l$O5-;v$rI=<($7$^$;$s(B---$B:G=i$+$iB8:_$7$J$+$C$?$+$N$h$&$K!#(B + +@vindex gnus-alter-articles-to-read-function +@item gnus-alter-articles-to-read-function +$B$3$NJQ?t$K@_Dj$7$?4X?t$G!"A*Br$9$k5-;v$N%j%9%H$rJQ99$9$k$3$H$,$G$-$^$9!#(B +$B4X?t$OFs$D$N0z?t(B ($B%0%k!<%WL>$HA*Br$9$k5-;v$N%j%9%H(B) $B$r2A$5$l$k%G%#%U%)%k%H$NI=8=(B ($B%G%#%U%)%k%HCM$,(B @code{nil} $B$G$J$$>l(B +$B9g(B) $B$N(B cons $B%;%k$N%j%9%H$G!"$=$N35N,%P%C%U%!$,3h$-$F$$$k4V$O%0%m!<%P%kJQ(B +$B?t$K$J$j$^$9!#(B + +$BCm(B: $B%G%#%U%)%k%H$NI=8=$OC1$K%m!<%+%kJQ?t$K@_Dj$5$l$k$N$G$O$J$/!"$=$NA0(B +$B$K(B (@code{eval} $B4X?t$r;H$C$F(B) $BI>2A$5$l$^$9!#%G%#%U%)%k%H$NI=8=(B +$B$,(B @code{global} $B$H$$$&%7%s%\%k$@$C$?>l9g$OI>2A$5$l$:!"Be$o$j$K$=$N%m!<(B +$B%+%kJQ?t$N%0%m!<%P%kCM$,;H$o$l$^$9!#(B + +$B$3$l$i%0%k!<%W%Q%i%a!<%?$NCM$,B>$N%P%C%U%!!<$G9T$J$o$l$k=hM}$K1F6A$9$k$h(B +$B$&$K$J$C$F$$$F$b!"(B($BLuCm(B: $B$=$N35N,%P%C%U%!$N(B) $B%0%k!<%W%Q%i%a!<%?$r@_Dj$9(B +$B$k$?$a$K;H$&$3$H$,$G$-$^$9!#Nc$G$9(B: + +@lisp +(setq gnus-newsgroup-variables + '(message-use-followup-to + (gnus-visible-headers . + "^From:\\|^Newsgroups:\\|^Subject:\\|^Date:\\|^To:"))) +@end lisp + +@pxref{Group Parameters} $B$b;2>H$7$F2<$5$$!#(B +@end table + +@node Summary Group Information +@subsection $B35N,%0%k!<%W>pJs(B + +@table @kbd +@item H f +@kindex H f ($B35N,(B) +@findex gnus-summary-fetch-faq +@vindex gnus-group-faq-directory +$B8=:_$N%0%k!<%W$N(B @acronym{FAQ} (frequently asked questions ($BIQHK$K$5$l$k(B +$Bl9g$O!"$3$N(B +$BL?Na$K@\F,0z?t$rM?$($k;v$G$$$m$$$m$J%5%$%H(B (site) $B$+$iA*$V;v$,$G$-$^$9!#(B +$B$*$=$i$/(B @code{ange-ftp} $B$b$7$/$O(B @code{efs} $B$,%U%!%$%k$No$KC;$$5-=R$rM?$($^(B +$B$9(B (@code{gnus-summary-describe-briefly})$B!#(B + +@item H i +@kindex H i ($B35N,(B) +@findex gnus-info-find-node +Gnus $B$N(B info $B$N@a(B (node) $B$K0\F0$7$^$9(B (@code{gnus-info-find-node})$B!#(B +@end table + +@node Searching for Articles +@subsection $B5-;v$rC5$9(B + +@table @kbd +@item M-s +@kindex M-s ($B35N,(B) +@findex gnus-summary-search-article-forward +$BD>8e$K$"$kA4$F$N(B ($B@8$N(B) $B5-;v$r@55,I=8=$G8!:w$7$^(B +$B$9(B (@code{gnus-summary-search-article-forward})$B!#(B + +@item M-r +@kindex M-r ($B35N,(B) +@findex gnus-summary-search-article-backward +$BA0$K$"$kA4$F$N(B ($B@8$N(B) $B5-;v$r@55,I=8=$G8!:w$7$^(B +$B$9(B (@code{gnus-summary-search-article-backward})$B!#(B + +@item & +@kindex & ($B35N,(B) +@findex gnus-summary-execute-command +$B$3$NL?Na$O$"$J$?$K%X%C%@!l9g(B +$B$K$N5-;v$N=8$^$j$G$"$k$J$i$P(B ($BNc$($P!"E&MW(B (digest))$B!"(B +$B$=$N$h$&$J5-;v$G$G$-$F$$$k%0%k!<%W$KF~$k$?$a$K$3$NL?Na$r;H$&$+$b$7$l$^$;(B +$B$s(B(@code{gnus-summary-enter-digest-group})$B!#(BGnus $B$O$3$NL?Na$K@\F,0z?t$r(B +$BM?$($J$$8B$j!"$I$N$h$&$J7?$N5-;v$,8=:_I=<($5$l$F$$$k$+$r?dB,$7$h$&$H$7!"(B +$B$=$l$O6/@)E*$K!XE&MW!Y$H$$$&2r$NMM<0$+$i$J$kB>(B +$B$N%a%C%;!<%8$N=89g$G$"$C$?$H$-$O!"(B@kbd{C-d} $B$H$9$k$3$H$K$h$j$b$C$HJXMx$J(B +$BJ}K!$G$=$l$i$N%a%C%;!<%8$rFI$`;v$,$G$-$k$h$&$K$J$j$^$9!#(B + +@item C-M-d +@kindex C-M-d ($B35N,(B) +@findex gnus-summary-read-document +$B$3$NL?Na$O>e$N$b$N$KHs>o$K;w$F$$$^$9$,!"$$$/$D$+$NJ8=q$r0l$D$NBg!<$-$$%0(B +$B%k!<%W$K=8$a$^$9(B (@code{gnus-summary-read-read-document})$B!#$=$l$O$$$/$D(B +$B$+$N(B @code{nndoc} $B%0%k!<%W$r$=$l$>$l$NJ8=q$N$?$a$K3+$-!"$=$l$+$i$3$l$i(B +$B$N(B @code{nndoc} $B%0%k!<%W$N>e$K(B @code{nnvirtual} $B%0%k!<%W$r3+$/;v$K$h$C$F(B +$B$3$N;v$r2DG=$K$7$F$$$^$9!#$3$NL?Na$O%W%m%;%9(B/$B@\F,0z?t$N=,47$rM}2r$7$^(B +$B$9(B (@pxref{Process/Prefix})$B!#(B + +@item C-t +@kindex C-t ($B35N,(B) +@findex gnus-summary-togle-truncation +$B35N,9T$N@ZCG$r@Z$jBX$($^$9(B (@code{gnus-summary-toggle-truncation})$B!#$3$l(B +$B$O$*$=$i$/35N,%P%C%U%!$N9TCf1{I=<(4X?t$r:.Mp$5$;$^$9$N$G!"5-;v$rFI$s$G$$(B +$B$k4V$K@ZCG$r@Z$C$F$$$k$N$ONI$$9M$($G$O$J$$$G$7$g$&!#(B + +@item = +@kindex = ($B35N,(B) +@findex gnus-summary-expand-window +$B35N,%P%C%U%!$N%&%#%s%I%&$r3HBg$7$^(B +$B$9(B (@code{gnus-summary-expand-window})$B!#@\F,0z?t$rM?$($i$l$l$P!"(B +@code{$B5-;v(B} $B%&%#%s%I%&$r3HBg$7$^$9!#(B + +@item C-M-e +@kindex C-M-e ($B35N,(B) +@findex gnus-summary-edit-parameters +$B8=:_$N%0%k!<%W$N%0%k!<%W$NG^2pJQ?t(B (parameter) (@pxref{Group +Parameters}) $B$rJT=8$7$^$9(B (@code{gnus-summary-edit-parameters})$B!#(B + +@item C-M-a +@kindex C-M-a ($B35N,(B) +@findex gnus-summary-customize-parameters +$B8=:_$N%0%k!<%W$N%0%k!<%W%Q%i%a!<%?(B (@pxref{Group Parameters}) $B$r%+%9%?%^(B +$B%$%:$7$^$9(B (@code{gnus-summary-customize-parameters})$B!#(B +@end table + +@node Exiting the Summary Buffer +@section $B35N,%P%C%U%!$rH4$1$k(B +@cindex summary exit +@cindex exiting groups + +$BIaDL$O35N,%P%C%U%!$+$iH4$1$k$H!"%0%k!<%W$NA4$F$N>pJs$r99?7$7$F%0%k!<%W%P%C(B +$B%U%!$KLa$j$^$9!#(B + +@table @kbd +@item Z Z +@itemx Z Q +@itemx q +@kindex Z Z ($B35N,(B) +@kindex Z Q ($B35N,(B) +@findex q ($B35N,(B) +@findex gnus-summary-exit +@vindex gnus-summary-exit-hook +@vindex gnus-summary-prepare-exit-hook +@vindex gnus-group-no-more-groups-hook +@c @icon{gnus-summary-exit} +$B8=:_$N%0%k!<%W$r=P$F!"%0%k!<%W$NA4$F$N>pJs$r99?7$7$^(B +$B$9(B (@code{gnus-summary-exit})$B!#H4$1=P$k$?$a$N$?$$$F$$$N;v$r$9$kA0(B +$B$K(B @code{gnus-summary-prepare-exit-hook} $B$,8F$P$l!"$=$l$O%G%#%U%)%k%H(B +$B$G(B @code{gnus-summary-expire-articles} $B$r8F$S$^$9!#H4$1=P$k2aDx$rDI$($?(B +$B8e$K(B @code{gnus-summary-exit-hook} $B$,8F$P$l$^$9!#(B($BL$FI$N(B) $B%0%k!<%W$,;D$C(B +$B$F$$$J$$$H$-$K%0%k!<%W%b!<%I$KLa$k$H$-(B +$B$K(B @code{gnus-group-no-more-groups-hook} $B$,pJs$b99?7$;$:$K8=:_$N%0%k!<%W$rH4$1=P$^(B +$B$9(B (@code{gnus-summary-exit-no-update})$B!#(B + +@item Z c +@itemx c +@kindex Z c ($B35N,(B) +@kindex c ($B35N,(B) +@findex gnus-summary-catchup-and-exit +@c @icon{gnus-summary-catchup-and-exit} +$B%0%k!<%W$NA4$F$NJ]N1$G$J$$5-;v(B (unticked article) $B$K4{FI$N0u$rIU$1$F!"$=(B +$B$l$+$iH4$1$^$9(B (@code{gnus-summary-catchup-and-exit})$B!#(B + +@item Z C +@kindex Z C ($B35N,(B) +@findex gnus-summary-catchup-all-and-exit +$BJ]N15-;v$b4^$a$F!"A4$F$N5-;v$K4{FI$N0u$rIU$1$F!"$=$l$+$iH4$1$^(B +$B$9(B (@code{gnus-summary-catchup-all-and-exit})$B!#(B + +@item Z n +@kindex Z n ($B35N,(B) +@findex gnus-summary-catchup-and-goto-next-group +$BA4$F$N5-;v$K4{FI$N0u$rIU$1$F$7$^(B +$B$9(B (@code{gnus-summary-reselect-current-group})$B!#$b$7@\F,0z?t$rM?$($i$l(B +$B$l$P!"4{FI$HL$FI$NN>J}$NA4$F$N5-;v$rA*Br$7$^$9!#(B + +@item Z G +@itemx M-g +@kindex Z G ($B35N,(B) +@kindex M-g ($B35N,(B) +@findex gnus-summary-rescan-group +@c @icon{gnus-summary-mail-get} +$B%0%k!<%W$rH4$1!"%0%k!<%W$N?7$7$$5-;v$rD4$Y!"%0%k!<%W$rA*Br$7$^(B +$B$9(B (@code{gnus-summary-rescan-group})$B!#$b$7@\F,0z?t$rM?$($i$l$l$P!"4{FI(B +$B$HL$FI$NN>J}$NA4$F$N5-;v$rA*Br$7$^$9!#(B + +@item Z N +@kindex Z N ($B35N,(B) +@findex gnus-summary-next-group +$B%0%k!<%W$rH4$1$F!"pJs$r99?7$7$FH4$1$k$H$-(B +$B$K(B @code{gnus-exit-group-hook} $B$,8F$P$l$^$9!#(B +@kbd{Q} $BL?Na(B (@code{gnus-summary-exit-no-update}) $B$G$O!"$3$N%U%C%/$r8F$S(B +$B$^$;$s!#(B + +@findex gnus-summary-wake-up-the-dead +@findex gnus-dead-summary-mode +@vindex gnus-kill-summary-on-exit +$B$"$J$?$K%0%k!<%W$rH4$1$F!"$=$l$+$i9M$($rJQ$($kJJ$,$"$k$N$G$"$l$P!"(B +@code{gnus-kill-summary-on-exit} $B$r(B @code{nil} $B$K@_Dj$9$k$N$,NI$$$+$b$7(B +$B$l$^$;$s!#$b$7$=$&$9$l$P!"(BGnus $B$O$=$l$+$iH4$1=P$k$H$-$K35N,%P%C%U%!$r:o(B +$B=|$7$^$;$s!#(B($B2?$H$$$&6C$-(B!) $B$=$NBe$o$j$K!"$=$l$O%P%C%U%!$NL>A0(B +$B$r(B @samp{*Dead Summary ... *} $B$N$h$&$J$b$N$KJQ99$7!"(B +@code{gnus-dead-summary-mode} $B$H8F$P$l$k%^%$%J!<%b!<%I$rF3F~$7$^$9!#:#$d!"(B +$B$=$N%P%C%U%!$K@Z$jBX$($l$P!"A4$F$N%-!<$,4X(B +$B?t(B @code{gnus-summary-wake-up-the-dead} $B$K3d$jEv$F$i$l$F$$$k$3$H$K5$IU$/(B +$B$G$7$g$&!#;`$s$@35N,%P%C%U%!(B (dead summary buffer) $B$G$I$l$+$N%-!<$rC!$/(B +$B;v$H!"@8$-$?IaDL$N35N,%P%C%U%!$K$J$k$G$7$g$&!#(B + +$B;`$s$@35N,%P%C%U%!$OF1;~$K0l$D$7$+B8:_$9$k;v$O$G$-$^$;$s!#(B + +@vindex gnus-use-cross-reference +$B35N,%P%C%U%!$rH4$1=P$k$H!"8=:_$N%0%k!<%W$N%G!<%?$O99?7$5$l$^$9(B ($B$I$N5-;v(B +$B$rFI$s$G!"$I$N5-;v$KJVEz$7$?$+!"$J$I$J$I!#(B) $B$b$7JQ(B +$B?t(B @code{gnus-use-cross-reference} $B$,(B @code{t} $B$G$"$k$H(B ($B$=$l$,%G%#%U%)(B +$B%k%H$G$9(B)$B!"$=$N%0%k!<%W$KAj8_;2>H$5$l$?(B (cross referenced) $B5-;v$O4{FI$N(B +$B0u$,IU$-!"$=$l$,Aj8_Ej9F(B (cross post) $B$5$l$?B>$N9XFI$7$F$$$k%0%k!<%W$G$b(B +$B4{FI$N0u$,IU$-$^$9!#$3$NJQ?t$,(B @code{nil} $B$G$b(B @code{t} $B$G$J$1$l$P!"5-;v(B +$B$O9XFI$HL$9XFI$NN>J}$N%0%k!<%W$G4{FI$N0u$,IU$-$^(B +$B$9(B (@pxref{Crosspost Handling})$B!#(B + +@node Crosspost Handling +@section $BAj8_Ej9F$N07$$(B + +@cindex velveeta +@cindex spamming +$BAj8_Ej9F(B (cross post) $B$5$l$?5-;v$K4{FI$N0u$rIU$1$k;v$O!"F1$85-;v$rFs2s0J(B +$B>eFI$^$J$$$G$9$`$H$$$&;v$rJ]>Z$7$^$9!#$b$A$m$s!"$@$l$+$,$=$l$r$$$/$D$+$N(B +$B%0%k!<%W$KJL!9$KEj9F$7$J$$8B$j$O!#F1$85-;v$r$$$/$D$+$N%0%k!<%W$KEj9F$9$k(B +$B;v(B ($BAj8_Ej9F$G$J$/$F(B) $B$O(B @dfn{spamming} $B$H8F$P$l!"$"$J$?$O$=$N$h$&$JA~$`(B +$B$Y$-HH:a$r9T$J$&$b$N$KBP$7$F!"K!N'$K$h$C$FIT2w$J5-;v$rAw$k$3$H$,5AL3$E$1(B +$B$i$l$F$$$^$9!#(Bspam $B$rA*JL$9$k$?$a$K$O!"(BNoCeM $B$NjAj8_Ej9F$KBP$7$FITK~$r8@$&$?$a$KL?(B +$BNa(B @code{gnus-summary-mail-crosspost-complaint} $B$r;H$&$3$H$5$($G$-$^$9!#(B + +@cindex cross-posting +@cindex Xref +@cindex @acronym{NOV} +$BAj8_Ej9F$r(B Gnus $B$,@5$7$/07$($J$$$h$&$K$J$k860x$N0l$D$O!"(B@acronym{NOV} $B9T(B +$B$K(B @code{Xref} $BMs$r4^$^$J$$!"(B@sc{xover} ($B$3$l$OHs>o$KNI$$$G$9!"$H$$$&$N(B +$B$O$=$l$OB.EY$r$H$F$bB.$/$9$k$+$i$G$9(B) $B$N;HMQ2DG=$J(B @acronym{NNTP} $B%5!<%P!<(B +$B$r;H$C$F$$$k$3$H$G$9!#$3$l$O320-$J$N$G$9$,!"$"$!!"Ha$7$$$+$J!"Hs>o$KNI$/(B +$B$"$k;v$G$9!#(BGnus $B$O$"$J$?$,FI$s$@A4$F$N5-;v$K(B @code{Xref} $B9T$rEPO?$9$k;v(B +$B$G!"@5$7$$;v$r$7$h$&$H$7$^$9$,!"5-;v$r:o=|$9$k$+!"FI$^$J$$$G4{FI$N0u$rIU(B +$B$1$k$H!"(BGnus $B$O$3$l$i$N5-;v$K(B @code{Xref} $B$N9T$r$N$>$-$^$o$k5!2q$rF@$k;v(B +$B$,L5$/!"Aj8_;2>H5!9=$rMQ$$$k;v$,$G$-$^$;$s!#(B + +@cindex LIST overview.fmt +@cindex overview.fmt +$B$"$J$?$N(B @acronym{NNTP} $B%5!<%P!<$,$=$N354Q%U%!%$(B +$B%k(B (overview file) $B$K(B @code{Xref} $BMs$r4^$s$G$$$k$+$rD4$Y$k$K$O!"(B +@samp{telnet your.nntp.server nntp} $B$H$7$F!"(B@code{inn} $B%5!<%P!<(B +$B$G(B @samp{More READER} $B$H$7!"$=$l$+$i(B @samp{LIST overview.fmt} $B$H$9$k;v$r(B +$B;n$7$F$/$@$5$$!#$3$l$OF0:n$7$J$$$G$7$g$&$,!"$b$7F0:n$7$F!"o$KB.EY$r(B +$BCY$/$7$^$9!#(B + +$B$^!"?M@8$O$=$N$h$&$J$b$N$G$9!#(B + +$BBeBXH$7$F$/$@$5$$!#(B + +@node Duplicate Suppression +@section $B=EJ#$NM^@)(B + +$B%G%#%U%)%k%H$G$O(B Gnus $B$OAj8_Ej9F5!9=$rMxMQ$9$k;v$K$h$C$F!"F1$85-;v(B +$B$rFs2s0J>eFI$^$J$$$h$&$K$7$h$&$H$7$^$9(B (@pxref{Crosspost Handling})$B!#$7(B +$B$+$7!"$=$NC1=c$G8z2LE*$JJ}K!$O!"$$$m$$$m$JM}M3$K$h$j!"K~B-$9$k7k2L$r$b$?(B +$B$i$5$J$$$+$bCN$l$^$;$s!#(B + +@enumerate +@item +@acronym{NNTP} $B%5!<%P!<$O(B @code{Xref} $BMs$N@8@.$K<:GT$9$k$+$bCN$l$^$;$s!#(B +$B$3$l$O0-$$;v$G!"$"$^$j5/$3$j$^$;$s!#(B + +@item +@acronym{NNTP} $B%5!<%P!<$O(B @file{.overview} $B%G!<%?%Y!<%9$K(B @code{Xref} $BMs(B +$B$r4^$a$k$N$K<:GT$9$k$+$bCN$l$^$;$s!#$3$l$O0-$$;v$G!"Hs>o$KNI$/$"$k;v$G$9!"(B +$B$"$!Ha$7$$!#(B + +@item +$BF1$8%0%k!<%W(B ($B$b$7$/$O$$$/$D$+$N4XO"$7$?%0%k!<%W(B) $B$r0c$C(B +$B$?(B @acronym{NNTP} $B%5!<%P!<$+$iFI$s$G$$$k$+$b$7$l$^$;$s!#(B + +@item +$B%0%k!<%W$KEj9F$5$l$?5-;v$H=EJ#$9$k%a!<%k$ru67$OB>$K$b$"$j$^$9$,!"$3$l$i;M$D$,$H$F$bNI(B +$B$/$"$k>u67$G$9!#(B + +$B$b$7!"K\Ev$K$b$7$b(B @code{Xref} $B$N07$$$K<:GT$7$?$i!"(B@dfn{$B=EJ#M^@)(B}$B$K@Z$j(B +$BBX$($k;v$r9M$($k$+$b$7$l$^$;$s!#$=$&$9$l$P!"(BGnus $B$O$"$J$?$,FI$s$@A4$F$N(B +$B5-;v$+$=$&$G$J$1$l$P!"4{FI$N0u$,IU$$$?A4$F$N5-;v$N(B @code{Message-ID} $B$r(B +$B5-21$7!"$=$l$+$i!"KbK!$N$h$&$K!"$=$N8e$N$=$l$i$H=P2q$C$?A4$F$N>l9g$K!"4{(B +$BFI$N0u$rIU$1$^$9!=!=(B@emph{$BA4$F(B}$B$N%0%k!<%W$G!#$3$N5!9=$r;H$&$N$OHs>o$KHs(B +$B8zN(E*$G$9$,!"2aEY$KHs8zN($J$o$1$G$O$"$j$^$;$s!#$b$A$m$sF1$85-;v$r0l2s0J(B +$B>eFI$`$[$&$,9%$^$7$$$G$9!#(B + +$B=EJ#M^@)$O$"$^$jA!:Y$J$b$N$G$O$"$j$^$;$s!#$I$A$i$+$H$$$&$H!"BgDH$N$h$&$J(B +$B$b$N$G$9!#$=$l$OHs>o$KC1=c$JJ}K!$GF0:n$7$F$$$^$9!=!=$b$75-;v$K4{FI$N0u$r(B +$BIU$1$l$P!"$=$l$O$3$N(B Message-ID $B$r%-%c%C%7%e$K2C$($^$9!#uBV$G$O(B @code{nil} $B$G$9!#$7$+$7!"$3$l$O(B +$BC10l$N(B Gnus $B$NA0$G$9!#%G%#%U%)%k%H(B +$B$O(B @file{~/News/suppression} $B$G$9!#(B +@end table + +$B2?EY$b(B Gnus $B$r=*N;$7$F5/F0$9$k798~$,$"$k$N$G$"$l$P!"$*$=$i(B +$B$/(B @code{gnus-save-duplicate-list} $B$r(B @code{t} $B$K$9$k$N$ONI$$9M$($G$7$g(B +$B$&!#$b$7(B Gnus $B$rB3$1$F2?=54V$bAv$i$;$F$*$/$N$G$"$l$P!"$=$l(B +$B$r(B @code{nil} $B$K$9$k$+$b$7$l$^$;$s!#0lJ}$G!"%j%9%H$rJ]B8$9$k;v$O5/F0$H=*(B +$BN;$r$:$C$HCY$/$7$^$9$N$G!"$h$/(B Gnus $B$r=*N;$7$F5/F0$9$k$N$G$"$l$P!"(B +@code{gnus-save-duplicate-list} $B$r(B @code{nil} $B$K@_Dj$9$k$Y$-$G$"$k$H$$$&(B +$B;v$K$J$j$^$9!#$&!<$`!#;d$O$"$J$?$,$I$&$9$k$+$KG$$;$?$$!"$H;W$$$^$9!#(B + +@c TRANSLATEME +@node Security +@section Security + +Gnus is able to verify signed messages or decrypt encrypted messages. +The formats that are supported are @acronym{PGP}, @acronym{PGP/MIME} +and @acronym{S/MIME}, however you need some external programs to get +things to work: + +@enumerate +@item +To handle @acronym{PGP} and @acronym{PGP/MIME} messages, you have to +install an OpenPGP implementation such as GnuPG. The Lisp interface +to GnuPG included with Gnus is called PGG (@pxref{Top, ,PGG, pgg-ja, PGG +Manual}), but Mailcrypt and gpg.el are also supported. + +@item +To handle @acronym{S/MIME} message, you need to install OpenSSL. OpenSSL 0.9.6 +or newer is recommended. + +@end enumerate + +More information on how to set things up can be found in the message +manual (@pxref{Security, ,Security, message-ja, Message Manual}). + +@table @code +@item mm-verify-option +@vindex mm-verify-option +Option of verifying signed parts. @code{never}, not verify; +@code{always}, always verify; @code{known}, only verify known +protocols. Otherwise, ask user. + +@item mm-decrypt-option +@vindex mm-decrypt-option +Option of decrypting encrypted parts. @code{never}, no decryption; +@code{always}, always decrypt; @code{known}, only decrypt known +protocols. Otherwise, ask user. + +@item mml1991-use +@vindex mml1991-use +Symbol indicating elisp interface to OpenPGP implementation for +@acronym{PGP} messages. The default is @code{pgg}, but +@code{mailcrypt} and @code{gpg} are also supported although +deprecated. + +@item mml2015-use +@vindex mml2015-use +Symbol indicating elisp interface to OpenPGP implementation for +@acronym{PGP/MIME} messages. The default is @code{pgg}, but +@code{mailcrypt} and @code{gpg} are also supported although +deprecated. + +@end table + +@cindex snarfing keys +@cindex importing PGP keys +@cindex PGP key ring import +Snarfing OpenPGP keys (i.e., importing keys from articles into your +key ring) is not supported explicitly through a menu item or command, +rather Gnus do detect and label keys as @samp{application/pgp-keys}, +allowing you to specify whatever action you think is appropriate +through the usual @acronym{MIME} infrastructure. You can use a +@file{~/.mailcap} entry (@pxref{mailcap, , mailcap, emacs-mime-ja, The +Emacs MIME Manual}) such as the following to import keys using GNU +Privacy Guard when you click on the @acronym{MIME} button +(@pxref{Using MIME}). + +@example +application/pgp-keys; gpg --import --interactive --verbose; needsterminal +@end example + +This happens to also be the default action defined in +@code{mailcap-mime-data}. + +@node Mailing List +@section $B%a!<%j%s%0%j%9%H(B +@cindex mailing list +@cindex RFC 2396 + +@kindex A M ($B35N,(B) +@findex gnus-mailing-list-insinuate +Gnus $B$O(B RFC 2369 $B$G4{Dj$5$l$?3F(B +@end menu + +@node Hiding Headers +@section $BM>J,$J%X%C%@!<$r1#$9(B +@cindex hiding headers +@cindex deleting headers + +$B3F5-;v$NF,$NItJ,$O%X%C%@!<(B(@dfn{head})$B$H8F$P$l$^$9(B ($B;D$j$NItJ,$O%\(B +$B%G%#(B (@dfn{body})$B$G$9!#$9$G$K$*5$$E$-$G$7$g$&$,(B)$B!#(B + +@vindex gnus-show-all-headers +$B%X%C%@!<$K$O$?$/$5$s$NJXMx$J>pJs$,4^$^$l$F$$$^$9!#5-;v$r=q$$$??M$NL>A0!"(B +$B$=$l$,=q$+$l$?F|IU!"5-;v$NI=Bj$J$I$G$9!#$3$l$O$H$F$bNI$$$s$G$9$,!"%X%C%@!<(B +$B$K$OBgItJ,$N?M$K$O8+$?$/$b$J$$>pJs!=!=5-;v$,$"$J$?$N$H$3$m$KCe$/$^$G$I$s(B +$B$J%7%9%F%`$r7PM3$7$F$-$?$+!"(B@code{Message-ID}, @code{References} $B$J$I$J(B +$B$I!D$b$&$d$s$J$C$A$c$&$/$i$$!=!=$b$?$/$5$s4^$^$l$F$$$^$9!#$?$V$s$"$J$?$O(B +$B$3$l$i$N9T$O$$$/$D$+A0$HI=Bj$N$_$r8+$?$1$l$P!"$3$&;XDj$7$^$9!#(B + +@lisp +(setq gnus-visible-headers "^From:\\|^Subject:") +@end lisp + +$B$3$NJQ?t$O!"I=<($5$;$?$$%X%C%@!<$K%^%C%A$9$k@55,I=8=$r%j%9%H$G;X(B +$BDj$9$k$3$H$b$G$-$^$9!#(B + +@item gnus-ignored-headers +@vindex gnus-ignored-headers +$B$3$NJQ?t$O(B @code{gnus-visible-headers} $B$NH?BP$G$9!#$3$NJQ?t$,@_Dj$5$l$F(B +$B$$$l$P(B ($B$+$D(B @code{gnus-visible-headers} $B$,(B @code{nil} $B$G$"$l$P(B)$B!"$3$l$O(B +$B1#$7$?$$%X%C%@!<9TA4$F$K%^%C%A$9$k@55,I=8=$G$"$k$H$_$J$5$l$^$9!#$3$NJQ?t(B +$B$K%^%C%A$7$J$$A4$F$N%X%C%@!<9T$OI=<($5$l$^$9!#(B + +$BNc$($P!"C1$K(B @code{References} $BMs$H(B @code{Xref} $BMs$N$_$r>C$75n$j$?$1$l$P!"(B +$B0J2<$N$h$&$K$7$^$9(B: + +@lisp +(setq gnus-ignored-headers "^References:\\|^Xref:") +@end lisp + +$B$3$NJQ?t$O>C$7$?$$%X%C%@!<$K%^%C%A$9$k@55,I=8=$N%j%9%H$G$b9=$$$^(B +$B$;$s!#(B + +$B$J$*!"(B@code{gnus-visible-headers} $B$,(B @code{nil} $B0J30$N>l9g$O!"$3(B +$B$NJQ?t$K$O8z2L$,L5$$$3$H$KCm0U$7$F$/$@$5$$!#(B +@end table + +@vindex gnus-sorted-header-list +Gnus $B$O%X%C%@!<$NJB$YBX$((B (sort) $B$b9T$$$^$9(B ($B$3$l$O%G%#%U%)%k%H$G9T$o$l(B +$B$^$9(B)$B!#$3$NJB$YBX$($O(B @code{gnus-sorted-header-list} $BJQ?t$r@_Dj$9$k$3$H(B +$B$G@)8f$9$k$3$H$,$G$-$^$9!#$3$l$O%X%C%@!<$r$I$&$$$&=g=x$GI=<($9$k$+$r;XDj(B +$B$9$k@55,I=8=$N%j%9%H$G$9!#(B + +$BNc$($P!"5-;v$NCx$r:G=i$K!"A0$,F~$k$N$G$O$"$j$^$;$s!#Be$o$j(B +$B$K(B Gnus $B$,%A%'%C%/$7$F;k3&$+$i>C$75n$k$?$a$N$5$^$6$^$J!V$D$^$i$J$$>r7o!W(B +@dfn{boring conditions} $B$N%j%9%H$r;XDj$7$^$9!#(B + +$B$3$N>r7o$K$O0J2<$N$h$&$J$b$N$,$"$j$^$9!#(B + +@table @code +@item empty +$B6u$N%X%C%@!<$rA4$F>C5n$7$^$9!#(B +@item followup-to +@code{Followup-To} $BMs$,(B @code{Newsgroups} $BMs$HF10l$G$"$k>l9g$K$O>C5n$7$^(B +$B$9!#(B +@item reply-to +@code{Reply-To} $BMs$,(B @code{From} $BMs$HF1$8%"%I%l%9$r<($7$F$$$k$+!"(B +@code{broken-reply-to} $B%0%k!<%W%Q%i%a!<%?$,@_Dj$5$l$F$$$k>l9g$K$O>C5n$7(B +$B$^$9!#(B +@item newsgroups +@code{Newsgroups} $BMs$,8=:_$N%0%k!<%WL>$7$+4^$s$G$$$J$$>l9g$K$O>C5n$7$^$9!#(B +@item to-address +@code{To} $BMs$,8=:_$N%0%k!<%W$N(B @code{to-address} $B%Q%i%a!<%?$HF1$8$b$N$7(B +$B$+4^$s$G$$$J$$>l9g$K$O>C5n$7$^$9!#(B +@item to-list +@code{To} $BMs$,8=:_$N%0%k!<%W$N(B @code{to-list} $B%Q%i%a!<%?$HF1$8$b$N$7$+4^(B +$B$s$G$$$J$$>l9g$K$O>C5n$7$^$9!#(B +@item cc-list +@code{CC} $BMs$,8=:_$N%0%k!<%W$N(B @code{to-list} $B%Q%i%a!<%?$HF1$8$b$N$7$+4^(B +$B$s$G$$$J$$>l9g$K$O>C5n$7$^$9!#(B +@item date +$B$=$N5-;v$,2a5n;0F|0JFb$N$b$N$G$"$l$P!"(B@code{Date} $BMs$r>C5n$7$^$9!#(B +@item long-to +@code{To} $BMs$,$"$^$j$K$bD9$$>l9g$K$O>C5n$7$^$9!#(B +@item many-to +@code{To} $BMs$,0l$D$h$j$bB?$1$l$P!"$=$l$i$rA4$F>C5n$7$^$9!#(B +@end table + +$B$3$l$i$N;0$D$NMWAG$rF~$l$?$1$l$P!"$3$s$JIw$K$J$j$^$9(B: + +@lisp +(setq gnus-boring-article-headers + '(empty followup-to reply-to)) +@end lisp + +$B$3$l$O$3$NJQ?t$N%G%#%U%)%k%HCM$G$b$"$j$^$9!#(B + +@node Using MIME +@section MIME $B$r;H$&(B +@cindex @acronym{MIME} + +$B%Q%s%H%^%$%`(B (mime) $B$H$O!"0UL#$bL5$/6uCf$G$N$_$@$i$J$b$N(B +$B$rL5\$7$$>pJs$O!"%^%K%e%"%k$r;2>H$7$F$/$@(B +$B$5$$(B ($B$^$@$J$$$1$I(B (;_;))$B!#(B + +@acronym{MIME} $B$r>o$K;HMQ$7$?$1$l$P!"(B +@code{gnus-show-mime} $B$r(B @code{t} $B$K@_Dj$7$F$/$@$5$$!#(B +@code{gnus-show-mime} $B$r@_Dj$7$F$$$k$H!"1?$,0-$$$H5-;v%P%C%U%!$K$O8N>c$7(B +$B$?$h$&$J2hLL$,8+$($k$3$H$b$"$k$G$7$g$&!#$3$l$OHr$1$h$&$,$"$j$^$;$s!#(B + +GNUS $B$d(B Gnus $B$G$O!"$3$N$?$A$N0-$$LdBj$G6C$+$5$l$J$$$h$&$K$9$k$K$O!"35N,(B +$B%P%C%U%!$K$*$$$F@Z$jBX$(5!G=$r;H$&$H$$$&$N$,:GA1$+$bCN$l$^$;$s(B ($BNc$($P!"(B +@samp{alt.sing-a-long} $B%0%k!<%W$KF~$k$H!"$"$J$?$N5$$E$+$J$$$&$A(B +$B$K(B @acronym{MIME} $B$O5-;vCf$N%5%&%s%I%U%!%$%k$rI|9f$7$F!"2?$d$i2x$7$2$JD9(B +$B$$D9$$2N$,$"$J$?$N%9%T!<%+!<$+$iBg2;6A$GN.$l=P$7!"$"$J$?$O%\%j%e!<%`%\%?(B +$B%s$r8+$D$1$i$l$:!"$H$$$&$N$O$=$s$J$b$N$O$b$H$b$H$D$$$F$J$$$+$i$G!"$_$s$J(B +$B$O$"$J$?$NJ}$rbK$_$O$8$a!"$"$J$?$O%W%m%0%i%`$r;_$a$h$&$H$9$k$1$I$G$-$J$/(B +$B$F!"%\%j%e!<%`$r@)8f$9$k%W%m%0%i%`$b8+$D$1$i$l$J$/$F!"$=$7$FIt20Cf$NA40w(B +$B$OFMA3$"$J$?$N$3$H$r7ZJN$N4c:9$7$G8+$k$h$&$K$J$C$F$7$^$$!"$"$J$?$O$A$g$C(B +$B$HLLGr$/$J$$;W$$$r$9$k!"$H$+(B)$B!#(B + +$B8=o$K(B @code{gnus-show-mime} $B$r(B @code{nil} $B0J30(B +$B$K$7$F$*$-!"<~$j$K?M$,$$$J$$;~$r8+7W$i$C$F5-;v%P%C%U%!$K8=$o$l$k%\%?%s$r(B +$B2!$7$^$7$g$&!#(B + +@ref{MIME Commands} $B$b;2>H$7$F2<$5$$!#(B + +@node Customizing Articles +@section $B5-;v$N%+%9%?%^%$%:(B +@cindex article customization + +$B5-;v$,$I$N$h$&$KB8:_$7$F$$$k$+$r%+%9%?%^%$%:$9$k$?$a$N$?$/$5$s$N4X?t$G$9!#(B +$B$3$l$i$N4X?t$rBPOCE*$K8F$V$3$H$b$G$-$^$9$7(B (@pxref{Article Washing})$B!"5-(B +$B;v$rA*Br$7$?$H$-$K<+F0E*$KA*Br$9$k$3$H$b$G$-$^$9!#(B + +$B<+F0E*$K8F$P$l$k$h$&$K$9$k$?$a$K$O!"BP1~$9$k(B ``treatment'' $BJQ?t$r@_Dj$7(B +$B$^$9!#Nc$($P!"%X%C%@!<$r1#$9$?$a$K$O!"(B@code{gnus-treat-hide-headers} $B$r(B +$B@_Dj$7$^$9!#0J2<$O@_Dj$G$-$kJQ?t$N0lMw$G$9$,!"$^$:$3$l$i$NJQ?t$NA0$N%0%k!<%W$GFI$^(B +$B$l$?5-;v$NA4$F$NK\J8$NItJ,$G$3$N07$$$r9T$$$^$9!#(B + +@item +$B:G=i$NMWAG$,J8;zNs$G$J$$%j%9%H$G$9(B: + +$B%j%9%H$O:F5"E*$KI>2A$5$l$^$9!#%j%9%H$N:G=i$NMWAG$O=R8l$G$9!#0J2<$N=R8l$,(B +$BG'<1$5$l$^$9(B: @code{or}, @code{and}, @code{not}, @code{typep}$B!#$3$l$,Nc(B +$B$G$9(B: + +@lisp +(or last + (typep "text/x-vcard")) +@end lisp + +@end enumerate + +$B$3$3$G(B @dfn{$B0lItJ,(B} $B$H$$$&8l$,;H$o$l$F$$$k$3$H$K5$IU$$$?$H;W$$$^$9!#$3$l(B +$B$O%a%C%;!<%8$K$O(B @acronym{MIME} $B%^%k%A%Q!<%H5-;v$,$"$j!"$$$/$D$+$NItJ,$K(B +$BJ,3d$5$l$F$$$k$+$b$7$l$J$$$H$$$&;ve$G@bL@$5$l$F(B +$B$$$k$h$&$K=R8l$N%j%9%H$G$"$k$H$-$O!"$3$NJQ?t$OL5;k$5$l$^$9!#(B + +$B0J2<$N07$$$N%*%W%7%g%s$,;HMQ2DG=$G$9!#$3$l$r%+%9%?%^%$%:$9$k$?$a$N:G$b4J(B +$BC1$JJ}K!$O(B @code{gnus-article-treat} $B%+%9%?%^%$%:%0%k!<%W$rD4::$9$k$3$H(B +$B$G$9!#4]3g8L$NCf$NCM$ODs0F$5$l$F$$$k0UL#$N$"$kCM$G$9!#B>$N$b$N$b2DG=$G$9(B +$B$,!"$[$H$s$I$N?M$O$*$=$i$/$3$3$K0lMwI=<($5$l$F$$$k$b$N$G==J,$G$7$g$&!#(B + +@table @code +@item gnus-treat-buttonize (t, integer) +@item gnus-treat-buttonize-head (head) + +@xref{Article Buttons}. + +@item gnus-treat-capitalize-sentences (t, integer) +@item gnus-treat-overstrike (t, integer) +@item gnus-treat-strip-cr (t, integer) +@item gnus-treat-strip-headers-in-body (t, integer) +@item gnus-treat-strip-leading-blank-lines (t, integer) +@item gnus-treat-strip-multiple-blank-lines (t, integer) +@item gnus-treat-strip-pem (t, last, integer) +@item gnus-treat-strip-trailing-blank-lines (t, last, integer) +@item gnus-treat-unsplit-urls (t, integer) +@item gnus-treat-wash-html (t, integer) +@item gnus-treat-decode-article-as-default-mime-charset (t, integer) + +@xref{Article Washing}. + +@item gnus-treat-date-english (head) +@item gnus-treat-date-iso8601 (head) +@item gnus-treat-date-lapsed (head) +@item gnus-treat-date-local (head) +@item gnus-treat-date-original (head) +@item gnus-treat-date-user-defined (head) +@item gnus-treat-date-ut (head) + +@xref{Article Date}. + +@item gnus-treat-from-picon (head) +@item gnus-treat-mail-picon (head) +@item gnus-treat-newsgroups-picon (head) + +@xref{Picons}. + +@item gnus-treat-display-smileys (t, integer) + +@item gnus-treat-body-boundary (head) + +@vindex gnus-body-boundary-delimiter +$B%X%C%@!<$HK\J8$N4V$K6-3&@~$rDI2C$7$^$9!#6-3&@~$K(B +$B$O(B @code{gnus-body-boundary-delimiter} $B$K@_Dj$5$l$?J8;zNs$,;H$o$l$^$9!#(B + +@xref{Smileys}. + +@item gnus-treat-display-x-face (head) + +@xref{X-Face}. + +@item gnus-treat-display-face (head) + +@xref{Face}. + +@item gnus-treat-emphasize (t, head, integer) +@item gnus-treat-fill-article (t, integer) +@item gnus-treat-fill-long-lines (t, integer) +@item gnus-treat-hide-boring-headers (head) +@item gnus-treat-hide-citation (t, integer) +@item gnus-treat-hide-citation-maybe (t, integer) +@item gnus-treat-hide-headers (head) +@item gnus-treat-hide-signature (t, last) +@item gnus-treat-strip-banner (t, last) +@item gnus-treat-strip-list-identifiers (head) + +@xref{Article Hiding}. + +@item gnus-treat-highlight-citation (t, integer) +@item gnus-treat-highlight-headers (head) +@item gnus-treat-highlight-signature (t, last, integer) + +@xref{Article Highlighting}. + +@item gnus-treat-play-sounds +@item gnus-treat-translate +@item gnus-treat-ansi-sequences (t) +@item gnus-treat-x-pgp-sig (head) + +@item gnus-treat-unfold-headers (head) +@item gnus-treat-fold-headers (head) +@item gnus-treat-fold-newsgroups (head) +@item gnus-treat-leading-whitespace (head) + +@xref{Article Header}. +@end table + +@vindex gnus-part-display-hook +$B$b$A$m$s!"(B@code{gnus-part-display-hook} $B$+$i8F$P$l$k<+J,<+?H$N4X?t$r=q$/(B +$B$3$H$b$G$-$^$9!#4X?t$O$=$NItJ,$KHO0O$,69$a$i$l$?>uBV$G8F$P$l!"$[$H$s$I$J(B +$B$s$G$b9%$-$J$3$H$r$G$-$^$9!#%P%C%U%!$KJ]B8$7$F$*$+$J$1$l$P$J$i$J$$>pJs$O(B +$B$"$j$^$;$s(B---$B2?$G$bJQ$($k$3$H$,$G$-$^$9!#$7$+$7!"%X%C%@!<$r>C$7$F$O$$$1(B +$B$^$;$s!#(B + +@node Article Keymap +@section $B5-;v$N%-!(B + +@table @code +@item gnus-single-article-buffer +@vindex gnus-single-article-buffer +@code{nil} $B0J30$G$"$l$P!"A4$F$N%0%k!<%W$KBP$7$FF1$85-;v%P%C%U%!$r;HMQ$7(B +$B$^$9(B ($B$3$l$O%G%#%U%)%k%H$G$9(B)$B!#(B@code{nil} $B$G$"$l$P!"3F%0%k!<%WKh$N8GM-$N(B +$B5-;v%P%C%U%!$r;}$D$h$&$K$J$j$^$9!#(B + +@vindex gnus-article-decode-hook +@item gnus-article-decode-hook +@cindex @acronym{MIME} +@acronym{MIME} $B5-;v$rI|9f2=$9$k$H$-$K;HMQ$5$l$k%U%C%/$G$9!#=i4|CM(B +$B$O(B @code{(article-decode-charset article-decode-encoded-words)} $B$G$9!#(B + +@vindex gnus-article-prepare-hook +@item gnus-article-prepare-hook +$B$3$N%U%C%/$O5-;v$,5-;v%P%C%U%!$K=q$-9~$^$l$?D>8e$K8F$S=P$5$l$^$9!#$3$l$O(B +$Be%9%/%m!<%k$9$k?7$7$$%F%-%9%H$,(B +$BL5$/$F$b5-;v%P%C%U%!$r%9%/%m!<%k$9$k$3$H$r2DG=$K$7$^$9!#%G%#%U%)%k%H(B +$B$O(B @code{nil} $B$G$9!#(B($BLuCm(B: $B5-;v$N:G2<9T$,8+$($F$$$k$H$-$K!"(B@code{nil} $B$G(B +$B$O(B @kbd{RET} $B$G$=$l0J>e%9%/%m!<%k$7$J$$$,!"Hs(B-@code{nil} $B$K$9$k$H5-;v$,(B +$B8+$($J$/$J$k$^$G%9%/%m!<%k$9$k!#(B) + +@vindex gnus-article-mode-line-format +@item gnus-article-mode-line-format +$B$3$NJQ?t$O(B @code{gnus-summary-mode-line-format} $B$HF1$89T$K=>$C$?MM<0J8;z(B +$BNs$G$9(B (@pxref{Summary Buffer Mode Line})$B!#$3$l$O0J2<$NFs$D$N3HD%$r=|$$(B +$B$F!"$=$NJQ?t$HF1$8MM<0;XDj$ruBV!W(B@dfn{wash status}$B!#$3$l$O5-;v$KBP$7$F9T$o$l$?$G$"$m$&(B +$B@vBuA`:n$r<($90lJ8;z$+$i$J$kC;$$J8;zNs$K$J$j$^$9!#J8;z$H$=$l$i$N0UL#$O(B: + +@table @samp +@item c +$B5-;v%P%C%U%!$K$*$$$F!"0zMQ$5$l$?J8$,1#$5$l$F$$$k$+$b$7$l$J$$>l9g$KI=<($5(B +$B$l$^$9!#(B + +@item h +$B5-;v%P%C%U%!$K$*$$$F!"%X%C%@!<$,1#$5$l$F$$$k>l9g$KI=<($5$l$^$9!#(B + +@item p +$B5-;v$,EE;R=pL>$^$?$O0E9f2=$5$l$F$$$k$HI=<($5$l!"(BGnus $B$O%;%-%e%j%F%#!<$N(B +$B$?$a$N%X%C%@!<$r1#$7$^$9!#(B($BCm(B: $B=pL>$,@5$7$$$+4V0c$C$F$$$k$+$rI=$9$b$N$G(B +$B$O$"$j$^$;$s!#(B) + +@item s +$B5-;v%P%C%U%!$K$*$$$F!"=pL>$,1#$5$l$F$$$k>l9g$KI=<($5$l$^$9!#(B + +@item o +$B5-;v%P%C%U%!$K=E$MBG$AJ8;z$,$"$k>l9g$KI=<($5$l$^$9!#(B + +@item e +$B5-;v%P%C%U%!$K6/D4$5$l$?J8;zNs$,$"$k>l9g$KI=<($5$l$^$9!#(B +@end table + +@item m +$B5-;v$N(B @acronym{MIME} $BItJ,$N?t$G$9!#(B +@end table + +@vindex gnus-break-pages + +@item gnus-break-pages +$B2~JG(B @dfn{page breaking} $B$r9T$&$+$I$&$+$r@)8f$7$^$9!#$3$NJQ?t(B +$B$,(B @code{nil} $B0J30$G$"$l$P!"5-;vCf$KJG6h@Z$jJ8;z$,8=$l$?>l=j$4$H$KJGJ,3d(B +$B$7$^$9!#$3$NJQ?t$,(B @code{nil} $B$G$"$l$PJGJ,$1$O9T$o$l$^$;$s!#(B + +@item gnus-page-delimiter +@vindex gnus-page-delimiter +$B$3$l$,>e$G?($l$?6h@Z$jJ8;z$G$9!#%G%#%U%)%k%H$G$O(B @samp{^L} ($B%U%)!<%`(B +$B%U%#!<%I!"2~JG(B) $B$G$9!#(B + +@cindex IDNA +@cindex $B9q:]2=%I%a%$%sL>(B +@vindex gnus-use-idna +@item gnus-use-idna +$B$3$NJQ?t$O(B @samp{From:}$B!"(B@samp{To:} $B$*$h$S(B @samp{Cc:} $B%X%C%@!<$K$"$k9q:](B +$B2=%I%a%$%sL>$r!"(BGnus $B$,(B IDNA $B%G%3!<%I$9$k$+$I$&$+$r@)8f$7$^$9!#$=$N$h$&(B +$B$J%a%C%;!<%8$N:n$jJ}$K$D$$$F(B +$B$O(B @xref{IDNA, ,IDNA,message-ja, The Message Manual} $B$r;2>H$7$F2<$5$$!#(B +$B$3$l$K$O(B @uref{http://www.gnu.org/software/libidn/, GNU Libidn} $B$,I,MW$G!"(B +$B$3$NJQ?t$O$=$l$r%$%s%9%H!<%k$7$F$"$k>l9g$@$1M-8z$K$J$j$^$9!#(B +@end table + +@node Composing Messages +@chapter $B%a%C%;!<%8$N:n@.(B +@cindex composing messages +@cindex messages +@cindex mail +@cindex sending mail +@cindex reply +@cindex followup +@cindex post +@cindex using gpg +@cindex using s/mime +@cindex using smime + +@kindex C-c C-c ($BEj9F(B) +$BEj9F$N$?$a$NL?Na$r$9$k$H!"$"$J$?$O%a%C%;!<%8%P%C%U%!$K0\F0$7$^$9!#(B +$B$=$3$G$O!"5-;v$r9%$-$J$h$&$KJT=8$9$k;v$,$G$-$^$9!#(B +$B$=$N8e$G(B @kbd{C-c C-c} $B$r2!$9;v$K$h$C$F!"5-;v$rAw?.$7$^(B +$B$9(B (@pxref{Top, , Overview, message-ja, Message Manual})$B!#5-;v$O$"$J$?$N(B +$B@_Dj$K4p$E$$$FAw?.$5$l$^$9(B (@pxref{Posting Server})$B!#(B + +@menu +* Mail:: $B%a!<%k$HJVEz(B +* Posting Server:: $B$I$N%5!<%P!<$rDL$7$F%K%e!<%9$rEj9F$^$?$O%a!<%k$rAw?.$9$k$Y$-$+(B? +* POP before SMTP:: $B%a!<%k$rFI$^$J$$$H%a!<%k$rAw?.$G$-$J$$(B +* Mail and Post:: $BF1;~$K%a!<%k$r=P$7JVEz$9$k(B +* Archived Messages:: $BAw$C$?%a%C%;!<%8$r(B Gnus $B$,Cy$a$F$*$/$H$3$m(B +* Posting Styles:: $B$"$J$?$,C/$G$"$k$+$r;XDj$9$k$h$j4JC1$JJ}K!(B +* Drafts:: $B%a%C%;!<%8$N1d4|$H5qH]$5$l$?%a%C%;!<%8(B +* Rejected Articles:: $B%5!<%P!<$,$"$J$?$N5-;v$r9%$-$G$J$$$H$-$K2?$,5/$3$k(B? +* Signing and encrypting:: $B0BA4$J%a%C%;!<%8$r:n$k$K$O(B? +@end menu + +$BEj9F$9$k$Y$-$G$J$+$C$?5-;v$r:o=|$9$k$?$a$N>pJs$K$D$$$F(B @ref{Canceling +and Superseding} $B$b;2>H$7$F2<$5$$!#(B + +@node Mail +@section $B%a!<%k(B + +$B=P$F9T$/%a!<%k$r%+%9%?%^%$%:$9$kJQ?t$G$9(B: + +@table @code +@item gnus-uu-digest-headers +@vindex gnus-uu-digest-headers +$BMWLs%a%C%;!<%8(B (digested message) $B$K4^$^$l$k%X%C%@!<$K9gCW$9$k@55,I=8=$N(B +$B%j%9%H$G$9!#%X%C%@!<$O9gCW$7$?=g$Kl9g$KHs(B-@code{nil} $B$rJV$9!"M#0l$N%Q%i%a!<%?$H$7(B +$B$F%0%k!<%WL>$r$K9gCW$9$k@55,I=8=$G$9!#(B + +$B%a!<%k$GJV?.$9$k5$$OL5$$$N$K;~$?$^$>$s$6$$$K(B R $B$r2!$7$F$7$^$&JJ$,$"$k$J(B +$B$i$P!"$3$NJQ?t$O$=$s$J$"$J$?$N$?$a$K$"$j$^$9!#(B + +@item gnus-confirm-treat-mail-like-news +@vindex gnus-confirm-treat-mail-like-news +$BHs(B-@code{nil} $B$@$C$?$i!"(BGnus $B$O%a!<%k$X$NJV?.;~$K(B +$B$b(B @code{gnus-confirm-mail-reply-to-news} $B$K4p$E$$$?3NG'$r5a$a$^$9!#$3$l(B +$B$O%a!<%j%s%0%j%9%H$r%K%e!<%:%0%k!<%W$N$h$&$K07$&$N$KJXMx$G$9!#(B +@end table + +@node Posting Server +@section $BEj9F$9$k%5!<%P!<(B + +$B:G?7$N(B ($B$b$A$m$s!"Hs>o$KCNE*$J(B) $B5-;v$rAw$j=P$9$?$a$K!"$"$NKbK!$N$h$&(B +$B$J(B @kbd{C-c C-c} $B%-!<$r2!$7$?;~!"$=$l$O$I$3$K$$$/$N$G$7$g$&(B? + +$B?R$M$F$/$l$F$"$j$,$H$&!#$"$J$?$r:($_$^$9!#(B + +$B$=$l$OHs>o$KJ#;($K$J$jF@$^$9!#(B + +@vindex gnus-post-method + +$B%K%e!<%9$rEj9F$9$k$H$-!"DL>o(B Message $B$O(B @code{message-send-news} $B$r8F$S(B +$B=P$7$^$9(B (@pxref{News Variables, , News Variables, message-ja, Message +Manual})$B!#IaDL$O!"(BGnus $B$O9VFIMQ$HF1$8A*BrJ}K!$r;H$C$FEj9F$7$^$9(B ($B$3$N$3(B +$B$H$O!"$"$J$?$,$?$/$5$s$N%0%k!<%W$r0[$J$C$?%5!<%P!<$G9VFI$7$F$$$k>l9g$K!"(B +$B$?$V$sET9g$,NI$$$N$G$9(B)$B!#$7$+$7!"$"$J$?$,9VFI$7$F$$$k$=$N%5!<%P!<$,Ej9F(B +$B$r5v2D$;$:!"FI$`$3$H$N$_$r5v2D$7$F$$$k$N$J$i$P!"$*$=$i$/$"$J$?$N(B ($BHs>o$K(B +$BCNE*$G$H$s$G$b$J$/6=L#?<$$(B) $B5-;v$rEj9F$9$k$?$a$K!"B>$N%5!<%P!<$r;H$$$?$$(B +$B$H;W$&$G$7$g$&!#(B@code{gnus-post-method} $B$rB>$NJ}K!$K@_Dj$9$k;v$,$G$-$^$9!#(B + +@lisp +(setq gnus-post-method '(nnspool "")) +@end lisp + +$B$5$F!"$3$N@_Dj$r$7$?8e$G%5!<%P!<$,$"$J$?$N5-;v$r5qH]$7$?$j!"%5!<%P!<$,Mn(B +$B$A$F$$$?$j$7$?$i!"$I$&$7$?$i$h$$$N$G$7$g$&(B? $B$3$NJQ?t$r>e=q$-$9$k$?$a$K!"(B +$BL?Na(B @kbd{C-c C-c} $B$K%<%m$G$J$$?t$N@\F,0z?t$rM?$($k;v$G!"Ej9F(B +$B$K(B ``current'' ($B8=:_$N(B) $B%5!<%P!<$r;H$o$;$k;v!"$9$J$o$A%G%#%U%)%k%H$NF0(B +$B:n(B ($BLuCm(B: @code{gnus-post-method} $B$N%G%#%U%)%k%HCM$O(B @code{current}) $B$K(B +$BLa$9;v$,$G$-$^$9!#(B + +$B$b$7!"%<%m$r@\F,0z?t$r$=$NL?Na$KM?$($?$J$i(B ($B$9$J$o$A!"(B@kbd{C-u 0 C-c +C-c})$B!"(BGnus $B$OEj9F$K$I$NJ}K!$r;H$&$+$r$"$J$?$K?R$M$^$9!#(B + +@code{gnus-post-method} $B$rA*BrJ}K!$N%j%9%H$K$9$k;v$b$G$-$^$9!#$=$N>l9g$O!"(B +Gnus $B$O>o$KEj9F$K$I$NJ}K!$r;H$&$+$r$"$J$?$K?R$M$^$9!#(B + +$B:G8e$K!"$"$J$?$,$$$D$G$b4pK\$NA*BrJ}K!$r;H$C$FEj9F$7$?$$$N$J$i$P!"$3$NJQ(B +$B?t$r(B @code{native} $B$K$7$F2<$5$$!#(B + +$B%a!<%k$rAw?.$9$k$H$-$K!"(BMessage $B$O(B @code{message-send-mail-function} $B$r(B +$B8F$S=P$7$^$9!#%G%#%U%)%k%H$N4X(B +$B?t(B @code{message-send-mail-with-sendmail} $B$O5-;v$r=gHVBT$A$KF~(B +$B$l(B (queuing) $B$?$jAw?.$9$k$?$a$K!"%P%$%J%j!<$G(B @code{sendmail} $B$K%Q%$%W$7(B +$B$^$9!#%m!<%+%k%7%9%F%`$,(B @code{sendmail} $B$G%a!<%k$rAw?.$9$k$h$&$K@_Dj$5(B +$B$l$F$$$J$/$F$b!"$"$J$?$,1s3V(B @acronym{SMTP} $B%5!<%P!<$K@\B3$9$k8"Mx$r;}$C(B +$B$F$$$k$J$i$P!"(B +@code{message-send-mail-function} $B$r(B @code{smtpmail-send-it} $B$K@_Dj$9$k(B +$B$3$H$,$G$-$^$9!#(B@code{smtpmail} $B%Q%C%1!<%8$r;H$&$?$a$K@5$7$$@_Dj$,$J$5$l(B +$B$F$$$k$+$I$&$+3NG'$7$F2<$5$$!#Nc$G$9(B: + +@lisp +(setq message-send-mail-function 'smtpmail-send-it + smtpmail-default-smtp-server "YOUR SMTP HOST") +;; @r{Version 1.14.6 $B$h$j8E$$(B FLIM $B$KIUB0$7$F$$$k(B smtpmail.el $B$r;H$&(B} +;; @r{$B>l9g!"0J2<$NJQ?t$r@_Dj$9$kI,MQ$,$"$j$^$9!#(B} +(setq smtp-default-server "YOUR SMTP HOST") +@end lisp + +$B$3$l$H;w$?$b$N$K(B @code{message-smtpmail-send-it} $B$,$"$j$^$9!#(B +ISP $B$,(B @acronym{POP}-before-@acronym{SMTP} $B$NG'>Z$rMW5a$7$F$$$k>l9g$KM-(B +$BMQ$G$9!#(B@xref{POP before SMTP}. + +$BB>$N2DG=$J(B @code{message-send-mail-function} $B$NA*Br;h(B +$B$O(B @code{message-send-mail-with-mh}, +@code{message-send-mail-with-qmail} $B$*$h$S(B @code{feedmail-send-it} $B$r4^(B +$B$_$^$9!#(B + +@node POP before SMTP +@section POP before SMTP +@cindex pop before smtp +@findex message-smtpmail-send-it +@findex mail-source-touch-pop + +$B$"$J$?$N(B @acronym{ISP} $B$O(B @acronym{POP}-before-@acronym{SMTP} $BG'>Z$rMW5a(B +$B$7$^$9$+(B? $B$=$l$O!"%a!<%k$rAw?.$9$kA0$N0lDj;~4V0JFb$K(B @acronym{POP} $B%a!<(B +$B%k%5!<%P!<$K@\B3$7$J$1$l$P$J$i$J$$$+$I$&$+$G$9!#$b$7$=$&$J$i$P!"JXMx$JA0$K!"%a!<%k$r$C$F(B @acronym{POP} $BG'>Z$@$1$r9T$J$$$^(B +$B$9!#(B@code{smtpmail-send-it} $B$G$O$J$/$F!"(B@code{message-send-mail-hook} $B$r(B +$Be$N(B @acronym{POP} $B%a!<%k%5!<%P!<$r@_Dj(B +$B$7$F$$$k$J$i$P!"$=$l$i$N0l$D$r(B @acronym{POP}-before-@acronym{SMTP} $BG'>Z(B +$B$K;H$o$l$k(B @acronym{POP} $B%a!<%k%5!<%P!<$H$7(B +$B$F(B @code{mail-source-primary-source} $B$K@_Dj$9$kI,MW$,$"$k$G$7$g$&!#$=$l(B +$B$,Bh0l(B @acronym{POP} $B%a!<%k%5!<%P!<$J$i$P(B ($B$9$J$o$A!"Z$r9T$J$&$H$-$@$1!"(B +$B$=$l$r0J2<$N$h$&$KF0E*$KB+G{$7$F2<$5$$(B: + +@lisp +(add-hook 'message-send-mail-hook + (lambda () + (let ((mail-source-primary-source + '(pop :server "pop3.mail.server" + :password "secret"))) + (mail-source-touch-pop)))) +@end lisp + +@node Mail and Post +@section $B%a!<%k$HEj9F(B + +$B$3$l$O%a!<%k$r=P$9;v$HEj9F$9$k;v$NN>J}$K4XO"$9$kJQ?t$N%j%9%H$G$9(B: + +@table @code +@item gnus-mailing-list-groups +@findex gnus-mailing-list-groups +@cindex mailing lists + +$B$b$7$"$J$?$N%K%e!<%9%5!<%P!<$,K\Ev$K%a!<%j%s%0%j%9%H$+(B +$B$i(B @acronym{NNTP} $B%5!<%P!<$X$N%2!<%H%&%'%$$rDs6!$7$F$$$k$N$G$"$l$P!"$=$l(B +$B$i$N%0%k!<%W$OLdBj$J$/FI$a$k$G$7$g$&!#$7$+$74JC1$K$O$=$l$i$KEj9F(B/$B%U%)%m!<(B +$B%"%C%W$9$k$3$H$O$G$-$^$;$s!#0l$D$N2r7hK!$O%0%k!<%W%Q%i%a!<(B +$B%?(B (@pxref{Group Parameters}) $B$K(B @code{to-address} $B$r2C$($k;v$G$9!#4JC1(B +$B$K$G$-$k$N$O!"(B@code{gnus-mailing-list-groups} $B$r!"K\Ev$K%a!<%j%s%0%j%9%H(B +$B$G$"$k$h$&$J%0%k!<%W$K9gCW$9$k@55,I=8=$K@_Dj$9$k$3$H$G$9!#$=$N8e$O!"$9$/(B +$B$J$/$H$b!"%a!<%j%s%0%j%9%H$X$N%U%)%m!<%"%C%W$O$?$$$F$$$N$H$-$KF0:n$7$^$9!#(B +$B$3$l$i$N%0%k!<%W$KEj9F$9$k;v$O(B (@kbd{a}) $B$=$l$G$b6lDK$r0z$-5/$3$9$G$7$g(B +$B$&$1$I!#(B + +@item gnus-user-agent +@vindex gnus-user-agent +@cindex User-Agent + +$B$3$NJQ?t$O!"$I$N>pJs$,(B User-Agent $B%X%C%@!<$KDDNs$5$l$k$+$r@)8f$7$^$9!#(B +$B$=$l$OH(B)$B!#(B +@end table + +$B$"$J$?$O<+J,$,Aw$k%a%C%;!<%8$NDV$j$rD4$Y$kI,MW$,$"$k$+$b$7$l$^$;$s!#$b$7(B +$B$/$O!"$b$7e$N=q8K%5!<%P!<(B}(archive virtual server) $B$r;H$$$^$9!#$3$l$r(B +$B40A4$K6X;_$7$?$$$N$G$"$l$P!"(B +$BJQ?t(B @code{gnus-message-archive-group} $B$O(B @code{nil} $B$K$J$k$Y$-$G!"$3$l(B +$B$,%G%#%U%)%k%H$G$9!#(B + +$B$"$J$?$,FI$s$G6=L#$r;}$C$?%a%C%;!<%8$r%0%k!<%W$KJ]B8$9$k$K(B +$B$O(B @kbd{B c} (@code{gnus-summary-copy-article}) $B%3%^%s%I$r;2>H$7$F2<$5(B +$B$$(B (@pxref{Mail Group Commands})$B!#(B + +@vindex gnus-message-archive-method +@code{gnus-message-archive-method} $B$OAw$C$?%a%C%;!<%8$rC_@Q$9$k$?$a$K$I(B +$B$N;ve$N%5!<%P!<$r(B Gnus $B$,;H$&$Y$-$+$r;XDj$7$^$9!#%G%#%U%)%k%H$O(B: + +@lisp +(nnfolder "archive" + (nnfolder-directory "~/Mail/archive") + (nnfolder-active-file "~/Mail/archive/active") + (nnfolder-get-new-mail nil) + (nnfolder-inhibit-expiry t)) +@end lisp + +$B$7$+$7!"$I$N%a!<%kA*BrJ}K!$G$b;H$&;v$,$G$-$^(B +$B$9(B (@code{nnml}, @code{nnmbox} $B$J$I$J$I(B)$B!#$7$+$7(B @code{nnfolder} $B$O$3$N(B +$B$h$&$J;v$r$9$k$N$K$H$F$b9%$^$7$$A*BrJ}K!$G$9!#%G%#%U%)%k%H$N%G%#%l%/%H%j!<(B +$BA*Br$r9%$-$G$J$$$J$i$P!"e$N$=$N%5!<%P!<$N%0(B +$B%k!<%W$X8~$+$&(B @code{Gcc} $BMs$rA^F~$7$^$9!#$I$N%0%k!<%W$r;H$&$+$OJQ(B +$B?t(B @code{gnus-message-archive-group} $B$K$h$C$F7h$^$j$^$9!#(B + +$B$3$NJQ?t$O$KA*BrJ}K!$r4^$a$k$3$H$,$G$-$^$9$,!"$=$&$9$k$H$=$N%a%C(B +$B%;!<%8$O(B @code{gnus-message-archive-method} $B$G;XDj$7$?A*BrJ}K!$G$O$J$/$F!"(B +$BBe$o$j$K%0%k!<%WL>$NA*BrJ}K!$GJ]B8$5$l$k$3$H$KCm0U$7$^$7$g$&!#>e$K<($7$?(B +$B$h$&$K(B @code{gnus-message-archive-method} $B$O!"%G%#%U%)%k%HCM$r;}$D$b$N$G(B +$B$"$k$H9M$($F2<$5$$!#$G$9$+(B +$B$i(B @code{gnus-message-archive-group} $B$r(B @code{"foo"} $B$K$7$F$*$1$P!"30$X(B +$B=P$F9T$/%a%C%;!<%8$O(B @samp{nnfolder+archive:foo} $B$KJ]B8$5$l$^$9$,!"$b$7(B +$B$"$J$?$,(B @code{"nnml:foo"} $B$H$$$&CM$r;H$&$H!"(B@samp{nnml:foo} $B$KJ]B8$5$l(B +$B$^$9!#(B + +@item $BJ8;zNs$N%j%9%H(B +$B%a%C%;!<%8$O$=$l$i$NA4$F$N%0%k!<%W$KJ]B8$5$l$^$9!#(B + +@item $B@55,I=8=!"4X?t!"MM<0$NO"A[%j%9%H(B +$B%-!<$,!X9gCW!Y$9$k$H!"7k2L$,;H$o$l$^$9!#(B + +@item @code{nil} +$B%a%C%;!<%8$NJ]B8$O9T$o$l$^$;$s!#$3$l$,%G%#%U%)%k%H$G$9!#(B +@end table + +$B;n$7$F$_$^$7$g$&(B: + +@samp{MisK} $B$H8F$P$l$k0l$D$N%0%k!<%W$KJ]B8$9$k$J$i$P(B: +@lisp +(setq gnus-message-archive-group "MisK") +@end lisp + +$BFs$D$N%0%k!<%W!"(B@samp{MisK} $B$H(B @samp{safe} $B$KJ]B8$9$k$J$i$P(B: +@lisp +(setq gnus-message-archive-group '("MisK" "safe")) +@end lisp + +$B$I$N%0%k!<%W$K$$$k$+$K$h$C$F0c$C$?%0%k!<%W$KJ]B8$9$k$J$i(B: +@lisp +(setq gnus-message-archive-group + '(("^alt" "sent-to-alt") + ("mail" "sent-to-mail") + (".*" "sent-to-misc"))) +@end lisp + +$B$b$C$HJ#;($J$b$N(B: +@lisp +(setq gnus-message-archive-group + '((if (message-news-p) + "misc-news" + "misc-mail"))) +@end lisp + +$BA4$F$N%K%e!<%9%a%C%;!<%8$r0l$D$N%U%!%$%k$KJ]B8$7$F!"%a!<%k%a%C%;!<%8$r0l(B +$B7n$K$D$-0l$D$N%U%!%$%k$KJ]B8$9$k$K$O(B: + +@lisp +(setq gnus-message-archive-group + '((if (message-news-p) + "misc-news" + (concat "mail." (format-time-string + "%Y-%m" (current-time)))))) +@end lisp + +@c (XEmacs 19.13 $B$K$O(B @code{format-time-string} $B$O$"$j$^$;$s$N$G!"$=(B +@c $B$N(B @code{gnus-message-archive-group} $B$N$?$a$K0c$C$?CM$r;H$o$J$1$l$P$J$j(B +@c $B$^$;$s!#(B) + +$B:#$d!"%a%C%;!<%8$rAw$k$H!"$=$l$OE,@Z$J%0%k!<%W$KJ]B8$5$l$^$9!#(B($B$b$7FCDj(B +$B$N%a%C%;!<%8$KBP$7$FJ]B8$r$7$?$/$J$$$N$G$"$l$P!"A^F~$5$l$?(B @code{Gcc} $BMs(B +$B$r$N(B +$B%0%k!<%W$HF1$8$h$&$K$=$N%0%k!<%W$KF~$C$F!"5-;v$rFI$`;v$,$G$-$^$9!#$=$N%0(B +$B%k!<%W$,K\Ev$KBg$-$/$J$C$F7y$K$J$C$?$i!"$J$K$+NI$$$b$N$K$=$NL>A0$rJQ99$9(B +$B$k;v$,$G$-$^$9(B ($B%0%k!<%W%P%C%U%!$G(B @kbd{G r} $B$r;H$&;v$K$h$C$F(B) $B!=!=(B +@samp{misc-mail-september-1995} $B$dB>$N$b$K!#?7$7$$%a%C%;!<%8$O8E$$(B ($B:#$O(B +$B6u$K$J$C$?(B) $B%0%k!<%W$KN/$a$i$l$^$9!#(B + +$B0J>e$,Aw$C$?%a%C%;!<%8$rJ]4I$9$k%G%#%U%)%k%H$NJ}K!$G$9!#(BGnus $B$O%G%#%U%)(B +$B%k%H$NJ}K!$r9%$-$G$O$J$$?M$K$O0c$C$?$d$jJ}$r4+$a$F$$$^$9!#$=$N$h$&$J>l9g(B +$B$O!"(B@code{gnus-message-archive-group} $B$r(B @code{nil} $B$K@_Dj$9$k$Y$-$G$9!#(B +$B$3$l$OJ]4I$r$7$J$$$h$&$K$7$^$9!#(B + +@table @code +@item gnus-outgoing-message-group +@vindex gnus-outgoing-message-group +$BA4$F$N30$K$$$/%a%C%;!<%8$O$3$N%0%k!<%W$KF~$l$i$l$^$9!#$b$7A4$F$N30$K9T$/(B +$B%a!<%k$H5-;v$r%0%k!<%W(B @samp{nnml:archive} $B$KJ]4I$7$?$$$N$G$"$l$P!"$3$N(B +$BJQ?t$r$=$NCM$K@_Dj$9$k;v$,$G$-$^$9!#$3$NJQ?t$O%0%k!<%WL>$N%j%9%H$G$"$k;v(B +$B$b$G$-$^$9!#(B + +$B$b$7$=$l$>$l$N%a%C%;!<%8$r$I$N%0%k!<%W$KF~$l$k$+$r$b$C$H@)8f$7$?$$$N$G$"(B +$B$l$P!"$3$NJQ?t$r8=:_$N%K%e!<%9%0%k!<%WL>$rD4$Y$F!"E,@Z$J%0%k!<%WL>(B ($B$b$7(B +$B$/$OL>A0$N%j%9%H(B) $B$rJV$94X?t$K@_Dj$9$k;v$,$G$-$^$9!#(B + +$B$3$NJQ?t$O(B @code{gnus-message-archive-group} $B$NBe$o$j$K;H$&;v$,$G$-$^$9(B +$B$,!"8eo$NItIJ$H$7$F(B Gcc $B$GJ]B8$9$k5-;v$N%3%T!<(B +$B$KE:IU$7$^$9!#$=$l$,@55,I=8=$G(B Gcc $B$N%0%k!<%WL>$K9gCW$9$k>l9g$O!"30ItIt(B +$BIJ$H$7$F%U%!%$%k$rE:IU$7$^$9!#(B@code{all} $B$@$C$?$i30ItItIJ$H$7$F%m!<%+%k(B +$B%U%!%$%k$rE:IU$7$^$9!#$=$l$,Hs(B-@code{nil} $B$@$C$?>l9g$NF0:n(B +$B$O(B @code{all} $B$HF1$8$G$9$,!">-Mh$OJQ$o$k$+$b$7$l$^$;$s!#(B($BLuCm(B: $BAw?.$7$?(B +$B%a%C%;!<%8$HF1$8$b$N$r(B Gcc $B$GJ]B8$9$kBe$o$j$K!"E:IU%U%!%$%k$r%a%C%;!<%8(B +$B$+$i@Z$jN%$7$F!"JL$K%;!<%V$9$k$+$I$&$+$r@)8f$9$kJQ?t$G$9!#(B) +@end table + +@node Posting Styles +@section $BEj9FMM<0(B +@cindex posting styles +@cindex styles + +$B$=$l$i$O$9$Y$FJQ?t$G!";d$K$a$^$$$r5/$3$5$;$^$9!#(B + +$BEj9F$9$k%0%k!<%W$K$h$C$F0c$C$?(B @code{Organization} $B$H=pL>$rIU$1$?$$$s$G(B +$B$9$+(B? $B$=$7$F!"2H$N%^%7%s$H?&>l$N%^%7%s$NN>J}$+$iEj9F$9$k$1$l$I$b!"0c$C(B +$B$?(B @code{From} $B9T$J$I$r;H$$$?$$$s$G$9$+(B? $B$=$s$J$3$H!"$I$&$G$b$$$$$8$c$"(B +$B$j$^$;$s$+!#(B + +@vindex gnus-posting-styles +$B$=$N$h$&$J;v$r$9$kJ}K!$N0l$D$OJQ99$5$l$kI,MW$N$"$kJQ?t$rJQ99$9$k8-$$%U%C(B +$B%/$r=q$/;v$G$9!#$=$l$O>/$7B`6~$J$N$G!"MxMQ$l$NMM<0$O:G=i$NMWAG$,2?$i(B +$B$+$N7A$G(B ``$B9gCW(B'' $B$7$?$H$-$KE,MQ$5$l$^$9!#O"A[%j%9%HA4BN$O:G=i$+$i:G8e$^(B +$B$GH?I|$7$F$l$N9gCW$,E,MQ$5$l$^$9!#$3$l$O!"8e$NMM<0$NB0@-(B +$B$,A0$K9gCW$7$?MM<0$NB0@-$r>e=q$-$9$k$H8@$&;v$G$9!#$G$9$+$i!"(B +@samp{comp.programming.literate} $B$O!"=p(B +$BL>(B @samp{Death to everybody} $B$H(B @code{Organization} $B%X%C(B +$B%@!<(B @samp{What me?} $B$r;}$A$^$9!#(B + +$B$=$l$>$l$NMM<0$N:G=i$NMWAG$O(B @code{$B9gCW(B} (match) $B$H8F$P$l$^$9!#$b$7$=$l(B +$B$,J8;zNs$G$"$l$P!"(BGnus $B$O$=$l$r%0%k!<%WL>$K@55,I=8=$H$7$F9gCWA`:n$r9T$$(B +$B$^$9!#(B@code{(header $B9gCW(B $B@55,I=8=(B)} $B$H$$$&MM<0$G$"$l$P!"(BGnus $B$O85$N5-;v(B +$B$NCf$+$iL>A0$,9gCW$9$k%X%C%@!<$rC5$7!"$=$l$r@55,I=8=$HHf3S$7$^$9!#9gCW$H(B +$B@55,I=8=$OJ8;zNs$G$9!#(B($B85$N5-;v$H$OJV?.$^$?$O%U%)%m!<%"%C%W$7$h$&$H$7$F(B +$B$$$k$b$N$G$9!#JV?.$"$k$$$O%U%)%m!<%"%C%W$r:n@.$7$F$$$J$1$l$P!"9gCW$9$k$b(B +$B$N$O2?$b$"$j$^$;$s!#(B) $B$b$7(B @code{$B9gCW(B} $B$,4X?t$N%7%s%\%k$G$"$l$P!"$=$N4X(B +$B?t$,0z?tL5$7$G8F$P$l$^$9!#$=$l$,JQ?t$N%7%s%\%k$G$"$l$P!"$=$NJQ?t$,;2>H$5(B +$B$l$^$9!#$=$l$,%j%9%H$G$"$l$P!"$=$N%j%9%H$,(B @code{$BI>2A(B} $B$5$l$^$9!#$I$N>l(B +$B9g$G$b!"$3$l$,(B @code{nil}$B$G$J$$CM$r5"$;$P!"MM<0$O(B @code{$B9gCW$7$?(B} $B$H8@$$(B +$B$^$9!#(B + +$B$=$l$>$l$NMM<0$OG$0U$NNL$N(B @dfn{$BB0@-(B} $B$r;}$D;v$,$G$-$^$9!#$=$l$>$l$NB0@-(B +$B$O(B @code{(@var{name} @var{value})} $B$NBP$K$h$j@.$jN)$C$F$$$^$9!#2C$($F!"(B +@code{(@var{name} :file @var{value})} $B$N7A<0$+(B @code{(@var{name} :value +@var{value})} $B$N7A<0$r;H$&$3$H$b$G$-$^$9!#$3$3(B +$B$G(B @code{:file} $B$O(B @var{value} $B$,%U%!%$%kL>$rI=$7$F!"$=$NFbMF$,B0@-CM$H(B +$B$7$F;HMQ$5$l$k$Y$-$G$"$k$3$H$r<($7!"(B@code{:value} $B$O(B @var{value} $B$,%U%!(B +$B%$%kL>$rI=$o$5$J$$$3$H$rL@<(E*$K<($7$^$9!#B0@-L>$O!"0J2<$N$I$l$+$G$"$k;v(B +$B$,$G$-$^$9!#(B + +@itemize @bullet +@item @code{signature} +@item @code{signature-file} +@item @code{x-face-file} +@item @code{address}, @code{user-mail-address} $B$r>e=q$-$7$^$9(B +@item @code{name}, @code{(user-full-name)} $B$r>e=q$-$7$^$9(B +@item @code{body} +@end itemize + +$BB0@-L>$OJ8;zNs$^$?$O%7%s%\%k$G$"$k;v$b$G$-$^$9!#$=$N>l9g$O!"$3$l$O%X%C%@!<(B +$BL>$H$7$F;H$o$l!"$=$NCM$,5-;v$N%X%C%@!<$KA^F~$5$l$^$9!#$b$7B0@-L>(B +$B$,(B @code{nil} $B$@$C$?$i$=$N%X%C%@!$O:o=|$5$l$^$9!#$b$7B0@-L>(B +$B$,(B @code{eval} $B$@$C$?$i$=$NMM<0$,I>2A$5$l!"7k2L$O2A(B} $B$5$l$F!"JV$j(B +$BCM$,;H$o$l$^$9(B) $B$G$"$k;v$,$G$-$^$9!#4X?t$O%;%C%H%"%C%W$5$l$?%a%C%;!<%8%P%C(B +$B%U%!$G8F$P$l(B (@code{eval} $B$5$l(B) $B$^$9!#8=:_$N5-;v$N%X%C%@!<$OJQ(B +$B?t(B @code{message-reply-headers} $B$+$iF@$i$l$^$9!#$3$l$O(B number subject +from date id references chars lines xref extra $B$N3F%X%C%@!<$+$i@.$k%Y%/(B +$B%H%k$G$9!#(B + +@vindex message-reply-headers + +$B$b$7!":n@.$7$h$&$H$7$F$$$k%a%C%;!<%8$,%K%e!<%95-;v$+%a!<%k%a%C%;!<%8$G$"(B +$B$k$+$rD4$Y$?$$$H$-$O!"Fs$D$N4X(B +$B?t(B @code{message-news-p} $B$H(B @code{message-mail-p} $B$r;H$&$3$H$K$h$C$FCN$k(B +$B;v$,$G$-$^$9!#(B + +@findex message-mail-p +@findex message-news-p + +$B$=$7$F!"$3$l$ONc$G$9(B: + +@lisp +(setq gnus-posting-styles + '((".*" + (signature-file "~/.signature") + (name "User Name") + ("X-Home-Page" (getenv "WWW_HOME")) + (organization "People's Front Against MWM")) + ("^rec.humor" + (signature my-funny-signature-randomizer)) + ((equal (system-name) "gnarly") ;; @r{$BMM<0(B} + (signature my-quote-randomizer)) + (message-news-p ;; @r{$B4X?t%7%s%\%k(B} + (signature my-news-signature)) + (window-system ;; @r{$BJQ?t%7%s%\%k(B} + ("X-Window-System" (format "%s" window-system))) + ;; @r{Lars $B$5$s$KJV;v$r$9$k$H$-$O(B} + ;; @r{Organization $B%X%C%@!<$rIU$1$h$&!#(B} + ((header "to" "larsi.*org") + (Organization "Somewhere, Inc.")) + ((posting-from-work-p) ;; @r{$B%f!<%6!<$,Dj5A$7$?4X?t(B} + (signature-file "~/.work-signature") + (address "user@@bar.foo") + (body "You are fired.\n\nSincerely, your boss.") + (organization "Important Work, Inc")) + ("nnml:.*" + (From (save-excursion + (set-buffer gnus-article-buffer) + (message-fetch-field "to")))) + ("^nn.+:" + (signature-file "~/.mail-signature")))) +@end lisp + +@samp{nnml:.*} $B$N5,B'$O!"$"$J$?$,=P$9$9$Y$F$NJV;v$N(B @code{To} $B%"%I%l%9(B +$B$r(B @code{From} $B%"%I%l%9$H$7$F;H$&$3$H$r0UL#$7$^$9!#$3$l$O!"$"$J$?$,$?$/(B +$B$5$s$N%a!<%j%s%0%j%9%H$K;22C$7$F$$$k>l9g$KJXMx$G$7$g$&!#(B + +$BJQ?t(B @code{gnus-named-posting-styles} $B$r@_Dj$9$k$3$H$G!"$h$/MxMQ$9$kEj9F(B +$BMM<0$KL>A0$r$D$1$i$l$^$9!#35N,%P%C%U%!$G(B @kbd{S P} $B$H$9$k$3$H$G!"Ej9F;~(B +$B$KG$0U$NMM<0$rA*Br$7$^$9!#(B@code{gnus-named-posting-styles} $B$OL>A0$HMM<0(B +$B$+$i$J$kO"A[%j%9%H$G$9!#(B@code{gnus-posting-styles} $B$K4^$^$l$kB0@-L>(B +$B$,(B @code{import} $B$@$C$?$i!"$=$NCM$G(B @code{gnus-named-posting-styles} $B$r(B +$B0z$$$F!"B0@-CM$r$=$3$KE83+$7$^$9!#(B + +$B$3$l$ONc$G$9(B: + +@lisp +(setq gnus-named-posting-styles + '(("Default" + (signature-file "~/.signature") + (name "User Name") + ("X-Home-Page" (getenv "WWW_HOME")) + (organization "People's Front Against MWM")) + ("Emacs" + (import "Default") + (organization "The Church of Emacs")))) +@end lisp + +"Emacs" $B$HL>IU$1$i$l$?MM<0$O!"(B@code{organization} $B0J30$NB0@-(B +$B$r(B "Default" $B$+$i0z$-7Q$.$^$9!#(B + + +@node Drafts +@section $B2<=q$-(B +@cindex drafts + +$B$b$7%a%C%;!<%8(B ($B%a!<%k$b$7$/$O%K%e!<%9(B) $B$r=q$$$F$$$k$H$-$K!"FMA3%*!<%V%s(B +$B$K%9%F!<%-$,F~$C$F$$$k(B ($B$b$7$/$O$"$J$?$,$H!<$C$F$b$9$4$$:Z?)C$75n$kM#0l$NJ}K!$O!"$=$l$rL$9XFI$K$9$k$3$H$G$9!#2<=q$-%0(B +$B%k!<%W$NFCJL$NFC@-$O%0%k!<%WFC@-(B (@pxref{Group Parameters}) $B$K$h$C$F@8$8!"(B +$B$=$l$,<:$o$l$F$7$^$&$HB>$N%0%k!<%W$N$h$&$K?6$kIq$&$h$&$K$J$j$^$9!#$3$l$O(B +$B0J2<$N%3%^%s%I$,;H$($J$$$3$H$r0UL#$7$^$9!#$=$N%0%k!<%W$NFCJL$NFC@-$rI|3h(B +$B$5$;$k4JC1$JJ}K!$O!"(B@kbd{C-k} $B$G$=$N%0%k!<%W$r:o=|$7$F$+$i(B Gnus $B$r:F5/F0(B +$B$9$k$3$H$G$9!#$=$N%0%k!<%W$NFbMFJ*$O<:$o$l$^$;$s!#(B + +@c @findex gnus-dissociate-buffer-from-draft +@c @kindex C-c M-d (Mail) +@c @kindex C-c M-d (Post) +@c @findex gnus-associate-buffer-with-draft +@c @kindex C-c C-d (Mail) +@c @kindex C-c C-d (Post) +@c If you're writing some super-secret message that you later want to +@c encode with PGP before sending, you may wish to turn the auto-saving +@c (and association with the draft group) off. You never know who might be +@c interested in reading all your extremely valuable and terribly horrible +@c and interesting secrets. The @kbd{C-c M-d} +@c (@code{gnus-dissociate-buffer-from-draft}) command does that for you. +@c If you change your mind and want to turn the auto-saving back on again, +@c @kbd{C-c C-d} (@code{gnus-associate-buffer-with-draft} does that. +@c +@c @vindex gnus-use-draft +@c To leave association with the draft group off by default, set +@c @code{gnus-use-draft} to @code{nil}. It is @code{t} by default. + +@findex gnus-draft-edit-message +@kindex D e ($B2<=q$-(B) +$B5-;v$NJT=8$rB3$1$?$$$H$-$O!"2<=q$-%0%k!<%W$KF~$C(B +$B$F(B @kbd{D e} (@code{gnus-draft-edit-message}) $B$r2!$9$@$1$G$9!#$"$J$?$,;D(B +$B$7$?>uBV$N%P%C%U%!$K0\F0$7$^$9!#(B + +$B5qH]$5$l$?5-;v$b$3$N2<=q$-%0%k!<%W$KF~$l$i$l$^(B +$B$9(B (@pxref{Rejected Articles})$B!#(B + +@findex gnus-draft-send-all-messages +@kindex D s (Draft) +@findex gnus-draft-send-message +@kindex D S (Draft) +$B$=$l0J>eJT=8$7$J$$$GEj9F(B ($B$b$7$/$O%a!<%k(B) $B$7$?$$5qH]$5$l$?%a%C%;!<%8$,$?(B +$B$/$5$s$"$k$N$G$"$l$P!"L?Na(B @kbd{D s} $B$r;H$&;v$,$G$-$^$9!#$3$NL?Na$O%W%m(B +$B%;%9(B/$B@\F,0z?t$N=,47$rM}2r$7$^$9(B (@pxref{Process/Prefix})$B!#L?(B +$BNa(B @kbd{D S} (@code{gnus-draft-send-all-messages}) $B$O%P%C%U%!$NA4$F$N%a%C(B +$B%;!<%8$rAw$j=P$7$^$9!#(B + +@findex gnus-draft-toggle-sending +@kindex D t (Draft) +$BAw$j$?$/$J$$%a%C%;!<%8$,$$$/$D$+$"$k$N$G$"$l$P!"L?(B +$BNa(B @kbd{D t} (@code{gnus-draft-toggle-sending}) $B$r;H$C$F%a%C%;!<%8$rG[Aw(B +$BIT2D$N0u$rIU$1$k;v$,$G$-$^$9!#$3$l$O@Z$jBX$(L?Na$G$9!#(B + +@node Rejected Articles +@section $B5qH]$5$l$?5-;v(B +@cindex rejected articles + +$B;~!9%K%e!<%9%5!<%P!<$O5-;v$r5qH]$7$^$9!#$*$=$i$/%5!<%P!<$O$"$J$?$N4i$r9%(B +$B$-$G$O$J$$$N$G$7$g$&!#$*$=$i$/Mn$A9~$s$G$$$k$N$G$7$g$&!#$*$=$i(B +$B$/(B @emph{$B0-Kb(B (demon) $B$,$$$k$N$G$7$g$&(B}$B!#$*$=$i$/0zMQJ8$rF~$l$9$.$?$N$G(B +$B$7$g$&!#$*$=$i$/%G%#%9%/$,0lGU$@$C$?$N$G$7$g$&!#$*$=$i$/%5!<%P!<$,Mn$A$F(B +$B$$$?$N$G$7$g$&!#(B + +$B$3$l$i$N>u67$O!"$b$A$m$s!"40A4$K(B Gnus $B$N07$($kHO0O30$G$9!#(B(Gnus $B$O!"$b$A(B +$B$m$s!"$"$J$?$N308+$r0&$7$F$*$j!"$$$D$b5!7y$,NI$/!"Cf$rHt$S2s$kE7;H$,$$$F!"(B +$B$I$l$/$i$$0zMQJ8$,4^$^$l$F$$$h$&$H5$$K$;$:!"0lGU$K$J$C$?$j!"Mn$C$3$A$?$j(B +$B$7$^$;$s!#(B) $B$G$9$+$i!"(BGnus $B$O$3$l$i$N5-;v$r8e$G%5!<%P!<$N5$J,$,$h$/$J$k(B +$B$^$GJ]B8$7$^$9!#(B + +$B5qH]$5$l$?5-;v$O<+F0E*$KFCJL$J2<=q$-%0%k!<%W(B (@pxref{Drafts}) $B$KF~$l$i$l(B +$B$^$9!#%5!<%P!<$,La$C$F$-$?$J$i!"IaDL$O$=$N%0%k!<%W$KF~$C$FA4$F$N5-;v$rAw(B +$B$j$^$9!#(B + +@c TRANSLATEME +@node Signing and encrypting +@section Signing and encrypting +@cindex using gpg +@cindex using s/mime +@cindex using smime + +Gnus can digitally sign and encrypt your messages, using vanilla +@acronym{PGP} format or @acronym{PGP/MIME} or @acronym{S/MIME}. For +decoding such messages, see the @code{mm-verify-option} and +@code{mm-decrypt-option} options (@pxref{Security}). + +@vindex gnus-message-replysign +@vindex gnus-message-replyencrypt +@vindex gnus-message-replysignencrypted +Often, you would like to sign replies to people who send you signed +messages. Even more often, you might want to encrypt messages which +are in reply to encrypted messages. Gnus offers +@code{gnus-message-replysign} to enable the former, and +@code{gnus-message-replyencrypt} for the latter. In addition, setting +@code{gnus-message-replysignencrypted} (on by default) will sign +automatically encrypted messages. + +Instructing @acronym{MML} to perform security operations on a +@acronym{MIME} part is done using the @kbd{C-c C-m s} key map for +signing and the @kbd{C-c C-m c} key map for encryption, as follows. + +@table @kbd + +@item C-c C-m s s +@kindex C-c C-m s s (Message) +@findex mml-secure-message-sign-smime + +Digitally sign current message using @acronym{S/MIME}. + +@item C-c C-m s o +@kindex C-c C-m s o (Message) +@findex mml-secure-message-sign-pgp + +Digitally sign current message using @acronym{PGP}. + +@item C-c C-m s p +@kindex C-c C-m s p (Message) +@findex mml-secure-message-sign-pgp + +Digitally sign current message using @acronym{PGP/MIME}. + +@item C-c C-m c s +@kindex C-c C-m c s (Message) +@findex mml-secure-message-encrypt-smime + +Digitally encrypt current message using @acronym{S/MIME}. + +@item C-c C-m c o +@kindex C-c C-m c o (Message) +@findex mml-secure-message-encrypt-pgp + +Digitally encrypt current message using @acronym{PGP}. + +@item C-c C-m c p +@kindex C-c C-m c p (Message) +@findex mml-secure-message-encrypt-pgpmime + +Digitally encrypt current message using @acronym{PGP/MIME}. + +@item C-c C-m C-n +@kindex C-c C-m C-n (Message) +@findex mml-unsecure-message +Remove security related @acronym{MML} tags from message. + +@end table + +@xref{Security, ,Security, message-ja, Message Manual}, for more +information. + +@node Select Methods +@chapter $BA*BrJ}K!(B +@cindex foreign groups +@cindex select methods + +@dfn{$B30It%0%k!<%W(B} (foreign group) $B$H$O!"IaDL(B ($B$b$7$/$O%G%#%U%)%k%H(B) $B$N(B +$BJ}K!$GFI$^$l$J$$%0%k!<%W$N;v$G$9!#Nc$($P!"$=$l$O0c$C$?(B @acronym{NNTP} $B%5!<(B +$B%P!<$N%0%k!<%W$G$"$C$?$j!";ve$N%0%k!<%W$G$"$C$?$j!"8D?ME*$J%a!<%k%0%k!<(B +$B%W$G$"$C$?$j$9$k$G$7$g$&!#(B + +$B30It%0%k!<%W(B ($B$b$7$/$O!"K\Ev$KA4$F%0%k!<(B +$B%W(B) $B$O(B @dfn{$BL>A0(B} $B$H(B @dfn{$BA*BrJ}K!(B} $B$G;XDj$5$l$^$9!#8e(B} $B$G$"$k(B +$BO"A[%j%9%H$G$9!#A*BrJ}K!$K$O!"$=$NEv$N%P%C%/%(%s%I$K$H$C$FFCJL$N0UL#$r;}(B +$B$DCM$G$"$kDI2C$NMWAG$,$"$k$+$bCN$l$^$;$s!#(B + +$BA*BrJ}K!$O(B @dfn{$B;ve$N%5!<%P!<(B} $B$rDj5A$9$k$H8@$&$3$H$,$G$-$k$+$b$7$l$^(B +$B$;$s(B---$B$G$9$+$i;d$?$A$O$A$g$&$I$=$l$r$7$^$7(B +$B$?(B (@pxref{Server Buffer})$B!#(B + +$B%0%k!<%W$N(B @dfn{$BL>A0(B} $B$O%P%C%/%(%s%I$,%0%k!<%W$rG'<1$9$kL>A0$G$9!#(B + +$B$?$H$($P!"(B@acronym{NNTP} $B%5!<%P!<$N%0%k!<%W(B @samp{soc.motss} $B$OL>(B +$BA0(B @samp{soc.motss} $B$HA*BrJ}K!(B @code{(nntp "some.where.edu")} $B$r;}$A$^$9!#(B +@code{nntp} $B%P%C%/%(%s%I$O$3$N%0%k!<%W$r(B @samp{soc.motss} $B$H$7$FCN$C$F$$(B +$B$k$@$1$G$9$,!"(BGnus $B$O$3$N%0%k!<%W(B +$B$r(B @samp{nntp+some.where.edu:soc.motss}$B$H8F$S$^$9!#(B + +$B$b$A$m$s!"0c$C$?J}K!$OA4$F$=$lFCM-$N$b$N$,$"$j$^$9!#(B + +@menu +* Server Buffer:: $B;ve$N%5!<%P!<$r:n$C$FJT=8$9$k(B +* Getting News:: USENET $B%K%e!<%9$r(B Gnus $B$GFI$`(B +* Getting Mail:: $B8D?ME*$J%a!<%k$r(B Gnus $B$GFI$`(B +* Browsing the Web:: $B2a>j$J%&%'%V$N;q8;$+$i%a%C%;!<%8$rpJs$rMW5a$9$k%^%7%s(B +$B$+%=%U%H%&%'%"$G$9!#(BGnus $B$OK\Ev$N$I$s$J%5!<%P!<$K$bD>@\$K$O@\B3$;$:!"%P%C(B +$B%/%(%s%I$+B>$N$b$N$rDL$7$F$9$Y$F$N=hM}$r9T$J$$$^$9!#$7$+$7!"$=$l$Oe$N3,AX$rCV$/$3$H$G$"$C$F!"$=$l$>$l$N(B +$B%P%C%/%(%s%I$,$^$5$K5?;wE*$J%5!<%P!<$KAjEv$9$k$H8@$C$F$bNI$$$G$7$g$&!#(B + +$BNc$($P(B @code{nntp} $B%P%C%/%(%s%I$O!"0[$J$k$$$/$D$+$Nc$,$A$J(B @acronym{NNTP} $B%5!<%P!<(B @samp{news.funet.fi} $B$N%]!<%H(B 13 $B$rFI(B +$B$_$?$$>l9g$H$+!#$&$*$C$[$s!#$H$K$+$/$G$9$M!"$3$N%5!<%P!<$r;H$&$=$l$>$l$N(B +$B%0%k!<%W$K$D$$$F$=$&$$$&$3$H$r@_Dj$7$J$1$l$P$J$i$J$$$H$7$?$i!"BgJQ$J:n6H(B +$B$K$J$C$F$7$^$&$G$7$g$&!#$=$3$G(B Gnus $B$O!"$=$&$$$&:n6H$r%5!<%P!<%P%C%U%!$G(B +$B9T$J$&$?$a$K!"A*BrJ}K!$KL>A0$rIU$1$k$rA*BrJ}K!$H$7$F;H$&;v$,$G$-$k(B +* Unavailable Servers:: $B@\B3$7$h$&$H;n$_$?%5!<%P!<$N$$$/$D$+$,Mn$A$F$$$k$+$b$7$l$J$$(B +@end menu + +@vindex gnus-server-mode-hook +$B%5!<%P!<%P%C%U%!$r:n@.$9$k$H$-$K(B @code{gnus-server-mode-hook} $B$,A0!#(B + +@item n +$B%5!<%P!<$NL>A0!#(B + +@item w +$B$I$3$+$i%K%e!<%9$,uBV!#(B +@end table + +@vindex gnus-server-mode-line-format +$B%b!<%I9T$bJQ?t(B @code{gnus-server-mode-line-format} $B$r;H$&;v$K$h$C$F%+%9(B +$B%?%^%$%:$9$k;v$,$G$-$^$9(B (@pxref{Mode Line Formatting})$B!#0J2<$N;XDj$OM}(B +$B2r$5$l$^$9(B: + +@table @samp +@item S +$B%5!<%P!!#(B + +@item M +$B%5!<%P!H$7$F$/$@$5$$!#(B + +@node Server Commands +@subsection $B%5!<%P!o$K4JC1$G!"<+J,<+?H$r$h$/@bL@$7$F$$$^$9(B: + +@lisp +(nntp "news.funet.fi") +@end lisp + +$BD>@\%9%W!<%k$+$iFI$`$N$O$b$C$H4JC1$G$9(B: + +@lisp +(nnspool "") +@end lisp + +$B8+$?$H$*$j!"A*BrJ}K!$N:G=i$NMWAG$O%P%C%/%(%s%I$NL>A0$G!"FsHVL\(B +$B$O(B @dfn{$B%"%I%l%9(B} (address)$B!"$b$7$/$O$=$&8F$S$?$$$N$G$"$l$P!"(B +@dfn{$BL>A0(B} $B$G$9!#(B + +$B$3$l$i$NFs$D$NMWAG$N8e$K$O!"G$0U$N?t(B +$B$N(B @code{(@var{$BJQ?t(B} @var{$BMM<0(B})} $B$NBP$rF~$l$k;v$,$G$-$^$9!#(B + +$B:G=i$NNc$KLa$j$^$7$g$&(B---$B$=$N%^%7%s$N%]!<%H(B 15 $B$+$iFI$_$?$+$C$?$H;W$C$F(B +$B$/$@$5$$!#$3$l$,$=$N;~$K!"$J$k$Y$-A*BrJ}K!$G$9(B: + +@lisp +(nntp "news.funet.fi" (nntp-port-number 15)) +@end lisp + +$B$I$NJQ?t$,4XO"$9$k$+$r8+$D$1$k$?$a$K!"$=$l$>$l$N%P%C%/%(%s%I$N@bL@J8=q$r(B +$BFI$`$Y$-$G$7$g$&$,!"$3$l$O(B @code{nnmh} $B$NNc$G$9!#(B + +@code{nnml} $B$O%9%W!<%k$N$h$&$J9=B$$GFI$`%a!<%k%P%C%/%(%s%I$G$9!#Nc$($P!"(B +$B@\?($r?^$j$?$$Fs$D$N9=B$$,$"$k$H$7$^$7$g$&(B: $B0l$D$O$"$J$?$N;dE*$J%a!<%k%9(B +$B%W!<%k$G!"B>J}$O8xE*$J$b$N$G$9!#$3$l$O;dE*$J%a!<%k$N$?$a$K;HMQ2DG=$J;XDj(B +$B$G$9(B: + +@lisp +(nnmh "private" (nnmh-directory "~/private/mail/")) +@end lisp + +($B$=$&$9$k$H$3$N%5!<%P!<$O(B @samp{private} $B$H8F$P$l$^$9$,!"$"$J$?$O4{$K?d(B +$BB,$7$F$$$?$+$b$7$l$^$;$s!#(B) + +$B$3$l$O8xE*%9%W!<%k$N$?$a$NJ}K!$G$9(B: + +@lisp +(nnmh "public" + (nnmh-directory "/usr/information/spool/") + (nnmh-get-new-mail nil)) +@end lisp + +@cindex proxy +@cindex firewall + +$BKIJI(B (firewall) $B$NCf$K$$$F!"KIJI%^%7%s$+$i$N(B @acronym{NNTP} $B%5!<%P!<$X$N(B +$B@\B3$7$+$J$$$N$G$"$l$P!"(BGnus $B$KKIJI%^%7%s$K(B @code{rlogin} $B$7$F!"$=$3$+(B +$B$i(B @acronym{NNTP} $B%5!<%P!<$K(B telnet $B$r$9$k$h$&$K;X<($9$k;v$,$G$-$^$9!#(B +$B$3$l$r$9$k;v$O>/$7$P$+$i$7$$$G$9$,!";ve$N%5!<%P!<$NDj5A$O$*$=$i$/$3$N(B +$B$h$&$J$b$N$K$J$k$Y$-$G$9(B: + +@lisp +(nntp "firewall" + (nntp-open-connection-function nntp-open-via-rlogin-and-telnet) + (nntp-via-address "the.firewall.machine") + (nntp-address "the.real.nntp.host") + (nntp-end-of-line "\n")) +@end lisp + +$B$b$7!"$9$P$i$7$$(B @code{ssh} $B%W%m%0%i%`$r!"%b%G%`@~$+$i$N05=L$5$l$?@\B3$r(B +$BDs6!$9$k$?$a$K;H$$$?$$$N$G$"$l$P!">e5-$NNc$K0J2<$N@_Dj$r2C$($k$3$H$,$G$-(B +$B$^$9!#(B + +@lisp + (nntp-via-rlogin-command "ssh") +@end lisp + +@code{nntp-via-rlogin-command-switches} $B$b;2>H$7$F2<$5$$!#(B + +$B$b$7$"$J$?$,KIJI$NCf$K$$$?$H$7$F$b!"(B"runsocks" $B$N$h$&$J%i%C%Q!<%3%^%s%I(B +$B$rDL$7$F30$N@$3&$rD>@\%"%/%;%9$G$-$k$N$J$i$P!"0J2<$N$h$&$K(B socks $B$rDL$7(B +$B$F%K%e!<%9%5!<%P!<$H(B telnet $B@\B3$9$k$3$H$,$G$-$^$9(B: + +@lisp +(nntp "outside" + (nntp-pre-command "runsocks") + (nntp-open-connection-function nntp-open-via-telnet) + (nntp-address "the.news.server") + (nntp-end-of-line "\n")) +@end lisp + +$B$3$l$O$b$A$m$s!"<+F0G'>Z$rDs6!$9$k$?$a$K(B @code{ssh-agent} $B$rE,@Z$K@_Dj$7(B +$B$J$1$l$P$J$j$^$;$s!#05=L$5$l$?@\B3$rF@$k$?$a$K$O!"(B@code{ssh}$B$N%U%!%$(B +$B%k(B @file{config} $B$G(B @samp{Compression} $B%*%W%7%g%s$,$"$kI,MW$,$"$j$^$9!#(B + +@node Creating a Virtual Server +@subsection $B;ve$N%5!<%P!<$r:n@.$9$k(B + +$B$b$7$"$J$?$,1JB35-;v$r;H$C$F$?$/$5$s$N5-;v$r%-%c%C%7%e$KJ]B8$7$F$$$k$N$G(B +$B$"$l$P!"%-%c%C%7%e$rFI$`$?$a$N;ve$N%5!<%P!<$r:n$kI,MW$,$"$k$+$b$7$l$^(B +$B$;$s!#(B + +$B:G=i$K!"?7$7$$%5!<%P!<$rIU$12C$($kI,MW$,$"$j$^$9!#L?Na(B @kbd{a} $B$,$=$l$r(B +$B$7$^$9!#$*$=$i$/%-%c%C%7%e$rFI$`$?$a$K$O(B @code{nnml} $B$r;H$&$N$,0lHVNI$$(B +$B$G$7$g$&!#(B@code{nnspool} $B$d(B @code{nnmh} $B$b;H$&;v$,$G$-$^$9$1$I!#(B + +@kbd{a nnml RET cache RET} $B$HBG$C$F$/$@$5$$!#(B + +$B$9$k$H(B @samp{cache} $B$H8F$P$l$k!"(B@code{nnml} $B$N;ve$N%5!<%P!<$,$G$-$k$O(B +$B$:$G$9!#e$N%5!<%P!<$G(B @kbd{RET} $B$r2!$9$H!"1\Mw%P%C%U%!$KF~$k$Y$-$G!"I=<($5$l(B +$B$F$$$k$I$N%0%k!<%W$K$G$bF~$k;v$,$G$-$k$O$:$G$9!#(B + +@node Server Variables +@subsection $B%5!<%P!J}$G(B)$B!"(B +$BJQ?t$NDj5A$,%m!<%I$5$l$F$$$k4V$K!"$$$/$D$+$NJQ?t$OB>$NJQ?t$G=i4|2=$5(B +$B$l$k$H$$$&;v$G$9!#$b$7(B ``$B4p$H$J$k(B'' $BJQ?t$,%m!<%I$5$l$?8e$KJQ99$7$F$b!"(B +``$BF3$-=P$5$l$?(B'' $BJQ?t$OJQ99$5$l$^$;$s!#(B + +$B$3$l$OIaDL$O%G%#%l%/%H%j!<$d%U%!%$%k$NJQ?t$K1F6A$7$^$9!#Nc$($P!"(B +@code{nnml-directory} $B$O%G%#%U%)%k%H$G(B @file{~/Mail} $B$G$9$,!"A4$F(B +$B$N(B @code{nnml} $B%G%#%l%/%H%j!e$N(B @code{nnml} $B%5!<%P!<$rDj5A$7$?>l9g!"(B@code{nnml-directory} $B$r@_Dj(B +$B$9$k$@$1$G$O=$s$@>uBV$K$J$k$h$&$K!"(B +$BA4$F$N%U%!%$%kJQ?t$rL@<(E*$K@_Dj$7$J$1$l$P$J$j$^$;$s!#$=$l$>$l$N%P%C%/%((B +$B%s%I$KBP$9$k40A4$JJQ?t$N%j%9%H$r8+$k$?$a$K$O!"$3$N%^%K%e%"%k$N8e$KB3$/$=(B +$B$l$>$l$N%P%C%/%(%s%I$NItJ,$rFI$s$G$/$@$5$$!#$G$b!"(B@code{nnml} $B$NDj5A$NNc(B +$B$O$3$3$K$"$j$^$9(B: + +@lisp +(nnml "public" + (nnml-directory "~/my-mail/") + (nnml-active-file "~/my-mail/active") + (nnml-newsgroups-file "~/my-mail/newsgroups")) +@end lisp + +$B%5!<%P!e$N%5!<%P!$r;H$&;v$,$G$-$^$9!#$3$N$3$H$K$h$j$?$/$5$s%-!<(B +$B%\!<%I$rC!$+$J$/$F$9$`2DG=@-$,$"$j$^$9!#$=$7$F!"A4$F$K$o$?$C$F!"$=$NJ}$,(B +$BNI$$$G$9!#(B + +@node Unavailable Servers +@subsection $B;HMQIT2DG=$J%5!<%P!<(B + +$B$b$7%5!<%P!<$K@\B3IT2DG=$G$"$k$J$i$P!"(BGnus $B$O%5!<%P!<$r(B @code{$B5qH](B} $B$H$7(B +$B$F0u$rIU$1$^$9!#$3$l$O$=$N8e$N$=$N%5!<%P!<$H$N@\B3$r$O$+$k$I$N$h$&$J;n$_(B +$B$bL5;k$5$l$k$H$$$&;v$G$9!#(BGnus $B$O@\B3$,3+$1$J$$$3$H$,K\Ev$G$"$k$+$I$&$+(B +$B$r>/$7$b3N$+$a$:!"(B``It can't be opend,'' ($B@\B3$r3+$/;v$,$G$-$^$;$s(B) $B$H9p(B +$B$2$^$9!#(B + +$B$=$l$O9T57$,0-$$$H;W$&;v$,$"$k$+$b$7$l$^$;$s$,!"$=$l$O$?$$$F$$$N$H$-$K$O(B +$BNI$$J}K!$G$9!#Nc$($P!"%5!<%P!<(B @samp{nephelococcdyia.com} $B$K(B 10 $B8D9XFI$7(B +$B$F$$$k%0%k!<%W$,$"$k$H$7$^$7$g$&!#%5!<%P!<$O$I$3$+Hs>o$K1s$/$K$"$j!"%^%7(B +$B%s$O$H$F$bCY$$$N$G!"$=$l$,:#F|$O$"$J$?$H$N@\B3$r5qH]$9$k$+$I$&$+$rD4$Y$k(B +$B$@$1$G0lJ,$+$+$j$^$9!#$b$7(B Gnus $B$,$=$l$r(B 10 $B2s;n$9$h$&$K$J$C$F$$$?$J$i!"(B +$B$"$J$?$OHs>o$K$&$k$5$/;W$&$G$7$g$&!#$G$9$+$i!"(BGnus $B$O$=$l$r;n$=$&$H$O$7(B +$B$^$;$s!#0lEY(B ``connection refused'' ($B@\B3$O5qH]$5$l$^$7$?(B) $B$rC5n$7$^(B +$B$9(B (@code{gnus-server-remove-denials})$B!#(B + +@item L +@kindex L ($B%5!<%P!<(B) +@findex gnus-server-offline-server +$B%5!<%P!<$N>uBV$r%*%U%i%$%s$K$7$^$9(B (@code{gnus-server-offline-server})$B!#(B +@end table + +@node Getting News +@section $B%K%e!<%9$NpJs$rJT=8$7$J$1$l$P$J$j$^(B +$B$;$s(B (@pxref{Foreign Groups})$B!#(B + +$B30It%0%k!<%W$NL>A0$O4pK\%0%k!<%W$HF1$8$G$b9=$$$^$;$s!#A0$N>WFM$O5/$3$j$^$;$s!#(B + +$B0J2<$NJQ?t$O;ve$N(B @code{nntp} $B%5!<%P!<$r:n$k$?$a$K;H$o$l$^$9(B: + +@table @code +@item nntp-server-opened-hook +@vindex gnus-server-opend-hook +@cindex @sc{mode reader} +@cindex authinfo +@cindex authentification +@cindex nntp authentification +@findex nntp-send-authinfo +@findex nntp-send-mode-reader +$B$O@\B3$,$G$-$?8e$Ko$K$3$N%U%C%/$K$"$k$Y$-$G$9!#(B + +@item nntp-authinfo-function +@vindex nntp-authinfo-function +@findex nntp-send-authoinfo +@vindex nntp-authinfo-file +$B$3$N4X?t$O(B @acronym{NNTP} $B%5!<%P!<$K(B @samp{AUTHINFO} $B$rAw$k$?$a$K;H$o$l(B +$B$^$9!#%G%#%U%)%k%H$N4X?t$O(B @code{nntp-send-authinfo} $B$G!"(B +@file{~/.authinfo} ($B$b$7$/$OJQ?t(B @code{nntp-authinfo-file} $B$K@_Dj$7$?$I(B +$B$N$h$&$J$b$N$G$b(B) $B$r;HMQ2DG=$J5-:\$rD4$Y$k$?$a$KC5$7$^$9!#$b$70l$D$b8+$D(B +$B$+$i$J$+$C$?$i!"$"$J$?$K%m%0%$%sL>$H%Q%9%o!<%I$NF~NO$rB%?J$7$^$9!#%U%!%$(B +$B%k(B @file{~/.authinfo} $B$NMM<0$O(B ($B$[$H$s$I(B) @code{ftp} $B$N%U%!%$(B +$B%k(B @file{~/.netrc} $B$HF1$8$G!"$=$l$O(B @code{ftp} $B$N%^%K%e%"%k%Z!<%8$KDj5A(B +$B$5$l$F$$$^$9$,!"$3$3$N$b$N$O82Cx$J;ve$N9T$r4^$_!"$=$l$>$l$O0l$D$N%5!<%P!<$rDj5A$7$^$9!#(B + +@item +$B$=$l$>$l$N9T$OG$0U$N?t$N(B $B6h@Z$j0u(B/$BCM(B $B$NBP$r4^$`;v$,$G$-$^$9!#(B + +$BM-8z$J6h@Z$j0u$O(B @samp{machine}, @samp{login}, @samp{password}, +@samp{default} $B$G$9!#2C$($F!"(BGnus $B$O(B @file{.netrc}/@code{ftp} $B$N9=J8$N86(B +$B7?$K$O8=$l$J$$Fs$D$N?7$7$$6h@Z$j0u!"L>IU$1(B +$B$F(B @samp{port} $B$H(B @samp{force} $B$rF3F~$7$^$9!#(B +($B$3$l$,(B @file{.authinfo} $B%U%!%$%k$NMM<0$,(B @file{.netrc} $B%U%!%$%k$NMM<0$+(B +$B$i0o$l$kM#0l$NJ}K!$G$9!#(B) @samp{port} $B$O%5!<%P!<$N$I$N%]!<%H$rG'>Z$KMQ$$(B +$B$k$+$r<($7!"(B@samp{force} $B$O0J2<$G@bL@$7$^$9!#(B + +@end enumerate + +$B$3$l$,$=$N%U%!%$%k$NNc$G$9(B: + +@example +machine news.uio.no login larsi password geheimnis +machine nntp.ifi.uio.no login larsi force yes +@end example + +$B6h@Z$j0u(B/$BCM(B $B$NBP$O$I$N$h$&$J=gHV$G$G$b8=$l$k;v$,$G$-$^$9!#Nc$($P!"(B +@samp{machine} $B$O:G=i$K8=$l$kI,MW$O$"$j$^$;$s!#(B + +$B$3$NNc$G$O!"%m%0%$%sL>$H%Q%9%o!<%I$NN>J}$,A0$@$1$r5s$2$F$$$F!"MxMQZ>pJs(B (authinfo) $B$,Aw$i$l$k$H$$$&;v$G$9!#%G%#(B +$B%U%)%k%H(B ($B$9$P$o$A!"(B@samp{force} $B%?%0$,L5$$$H$-(B) $B$G$O(B @var{nntp} $B%5!<%P!<(B +$B$,G'>Z>pJs$r?R$M$J$$8B$j$=$l$r(B @var{nntp} $B%5!<%P!<$KAw$j$^$;$s!#(B + +@samp{machine} $B9T$K9gCW$7$J$$A4$F$N%5!<%P!<$KE,MQ$5$l(B +$B$k(B @samp{default} $B9T$rDI2C$9$k;v$b$G$-$^$9!#(B + +@example +default force yes +@end example + +$B$3$l$O0JA0$K=q$+$l$F$$$J$$A4$F$N%5!<%P!<$KL?Na(B @samp{AUTHINFO} $B$r6/@)E*(B +$B$KAw$j$^$9!#(B + +$B%U%!%$%k(B @file{~/.authinfo} $B$r@$3&Cf$,FI$a$k$h$&$J@_Dj$KJ|CV$7$J$$$h$&$K(B +$BCm0U$7$F$/$@$5$$!#(B + +@item nntp-server-action-alist +@vindex nntp-server-action-alist +$B$3$l$O%5!<%P!<$N7?$K9gCW$9$k@55,I=8=$H!"9gCW$,5/$3$C$?$H$-$Kc$,$A$G$"$k$J$i!"$3$NJQ?t$r(B 1 $B$K@_Dj$9$k$Y$-$G$7$g(B +$B$&!#(B + +@item nntp-connection-timeout +@vindex nntp-connection-timeout +$BDj4|E*$K@\B3$9$k30It(B @code{nntp} $B%0%k!<%W$,$?$/$5$s$"$k$J$i!"E,@Z$K1~Ez(B +$B$7$J$$(B @code{nntp} $B%5!<%P!<$,$"$C$?$j!"$"$k%5!<%P!<$O>o<1E*$J;~4VFb$G$O(B +$BJVEz$G$-$J$$$/$i$$Ii2Y$,$+$+$C$F$$$k!"$J$I$NLdBj$,$"$k$G$7$g$&!#$3$l$O:$$C(B +$B$?LdBj$K$J$k$3$H$,$"$j$^$9$,!"(B@code{nntp-connection-timeout} $B$r@_Dj$9$k(B +$B;v$K$h$j$"$kDxEY2r>C$9$k;v$,$G$-$^$9!#$3$l$O@\B3$r$"$-$i$a$k$^$($K!"(B +@code{nntp} $B%P%C%/%(%s%I$,2?ICBT$D$+$r<($9@0?t$G$9!#$b$7$3$l(B +$B$,(B @code{nil} $B$G$"$k$H!"$3$l$,=i4|@_Dj$G$9$,!";~4V@Z$l@ZCG$O$J$5$l$^$;$s!#(B + +@c @item nntp-command-timeout +@c @vindex nntp-command-timeout +@c @cindex PPP connections +@c @cindex dynamic IP addresses +@c If you're running Gnus on a machine that has a dynamically assigned +@c address, Gnus may become confused. If the address of your machine +@c changes after connecting to the @acronym{NNTP} server, Gnus will simply sit +@c waiting forever for replies from the server. To help with this +@c unfortunate problem, you can set this command to a number. Gnus will +@c then, if it sits waiting for a reply from the server longer than that +@c number of seconds, shut down the connection, start a new one, and resend +@c the command. This should hopefully be transparent to the user. A +@c likely number is 30 seconds. +@c +@c @item nntp-retry-on-break +@c @vindex nntp-retry-on-break +@c If this variable is non-@code{nil}, you can also @kbd{C-g} if Gnus +@c hangs. This will have much the same effect as the command timeout +@c described above. + +@item nntp-server-hook +@vindex nntp-server-hook +$B$3$N%U%C%/$O(B @acronym{NNTP} $B%5!<%P!<$K@\B3$9$k:G8e$N0lJb$H$7$Fc$,$A$G$"$k$H$-$K$3$l$r(B @code{nil} $B$G$J$$CM(B +$B$K@_Dj$7$F$/$@$5$$!#(B + +@item nntp-nov-is-evil +@vindex nntp-nov-is-evil +@acronym{NNTP} $B%5!<%P!<$,(B @acronym{NOV} $B5!G=$rDs6!$7$F$$$J$1$l$P$3$NJQ?t(B +$B$r(B @code{t} $B$K@_Dj$9$k;v$,$G$-$^$9$,!"(B@code{nntp} $B$OIaDL(B +$B$O(B @acronym{NOV} $B$,;H$o$l$k$+$I$&$+$r<+F0E*$KD4$Y$^$9!#(B + +@item nntp-xover-commands +@vindex nntp-xover-commands +@cindex @acronym{NOV} +@cindex XOVER +$B%5!<%P!<$+$i(B @acronym{NOV} $B9T$rl9g$O!"$3$NJQ?t$rK\Ev$K>.$5$J?t;z$K@_Dj$9$k$H$*$=$i$//$7;(2;$,$?(B +$B$F$i$l$^$9!#(B + +@item nntp-record-commands +@vindex nntp-record-commands +$B$b$7(B @code{nil} $B$G$J$$$H!"(B@code{nntp} $B$O(B @acronym{NNTP} $B%5!<%P!<$KAw$C$?(B +$B$9$Y$F$NL?Na$r(B ($B;~9o$H6&$K(B) @samp{*nntp-log*} $B%P%C%U%!$K5-O?$7$^$9!#$3$l(B +$B$OF0:n$7$F$$$J$$$H;W$o$l$k(B Gnus/@acronym{NNTP} $B@\B3$r%G%#%P%C%0$7$F$$$k(B +$B$H$-$KLr$KN)$A$^$9!#(B + +@item nntp-open-connection-function +@vindex nntp-open-connection-function +$B$I$N$h$&$K(B nntp $B%5!<%P!<$H@\B3$9$k$+$r%+%9%?%^%$%:$9$k$3$H$,$G$-$^$9!#%Q(B +$B%i%a!<%?(B @code{nntp-open-connection-function} $B$r@_Dj$9$k$H!"(BGnus $B$O@\B3(B +$B$r3NN)$9$k$?$a$K$=$N4X?t$r;H$$$^$9!#$=$N$?$a$K8^$D$N4X?t$,$"$i$+$8$aMQ0U(B +$B$5$l$F$$$^$9!#$=$l$i$OFs@\@\B3$9$k$?$a$N4X?t(B +$B72(B ($B;0$D(B) $B$H4V@\E*$K@\B3$9$k$?$a$N$b$N(B ($BFs$D(B) $B$,$"$j$^$9!#(B + +@item nntp-prepare-post-hook +@vindex nntp-prepare-post-hook +$B5-;v$r%]%9%H$9$kD>A0$K)(B ID $B$rDs6!$7(B +$B$F$/$l$k$J$i$P!"$3$N%U%C%/$,)(B ID $B$r%5%]!<%H$7$F$$$k$o$1$G$O$J$$$3$H$KCm0U$7$F2<(B +$B$5$$!#$3$l$ONc$($P(B INN 2.3.0 $B0J>e$GF0:n$7$^$9!#(B + +@item nntp-read-timeout +@vindex nntp-read-timeout +Nntp $B$,=PNO$,=*N;$7$?$3$H$r3NG'$9$k$?$a$KBT$D$Y$-;~4V$G$9!#CM$rC;$/$9$l(B +$B$PH?1~$,B.$/$J$j$^$9$,(B CPU $B$r?)$$$^$9!#%G%#%U%)%k%H$O(B 0.1 $BIC$G$9!#%5!<%P!<(B +$B$KCY$$2s@~$G@\B3$7$F$$$k>l9g$O(B ($B$=$7$F(B Emacs $B$,(B CPU $B%Q%o!<$r?)$&$N$rK>$^(B +$B$J$1$l$P(B)$B!"$3$l$rNc$($P(B 1 $B$K$7$F$b9=$$$^$;$s!#(B + +@item nntp-list-options +@vindex nntp-list-options +LIST $B%3%^%s%I$N%*%W%7%g%s$K;H$C$F!"(B($B%5!<%P!<$N(B) $B%j%9%H=PNO$r@_Dj$7$?%K%e!<(B +$B%9%0%k!<%W$@$1$K@)8B$9$k$?$a$N!"%K%e!<%9%0%k!<%WL>$N%j%9%H$G$9!#$=$l$>$l(B +$B$N%K%e!<%9%0%k!<%WL>$K$O(B @dfn{fj.*} $B$d(B @dfn{japan.*} $B$N$h$&$J!"%7%'%k7A(B +$B<0$N%o%$%k%I%+!<%I$r;H$&$3$H$,$G$-$^$9!#$b$79,1?$K$b%5!<%P!<$,$=$N$h$&$J(B +$B%*%W%7%g%s$rr7o$G9VFI$9$k%K%e!<%9%0%k!<%WL>$N@55,I=8=$G$9!#@55,I=8=$NJ8(B +$B;zNs$G$O(B @dfn{$} $B$NBe$o$j$K(B @dfn{ } $B$r;H$C$F2<$5$$!#%5!<%P!<$,(B LIST $B%3%^(B +$B%s%I$N%*%W%7%g%s$K%7%'%k7A<0$N%o%$%k%I%+!<%I$rl9g$G$b!"(B +@code{nntp-list-options} $B$HF1MM$N8z2L$,$"$k$G$7$g$&!#$3$l$O!"0J2<$N$h$&(B +$B$K%5!<%P!r7o$G9VFI$9$k%K%e!<%9%0%k!<%WL>$N@55,I=8=$G$9!#@55,I=(B +$B8=$NJ8;zNs$G$O(B @dfn{$} $B$NBe$o$j$K(B @dfn{ } $B$r;H$C$F2<$5$$!#%5!<%P!<(B +$B$,(B LIST $B%3%^%s%I$N%*%W%7%g%s$K%7%'%k7A<0$N%o%$%k%I%+!<%I$rl9g$G$b!"(B@code{nntp-list-options} $B$HF1MM$N8z2L$,$"$k$G$7$g$&!#$3$l(B +$B$O!"0J2<$N$h$&$K%5!<%P!@\@\B3$9$k(B +* Indirect Functions:: $B%5!<%P!<$K4V@\E*$K@\B3$9$k(B +* Common Variables:: $B$$$/$D$+$N@\B3MQ$N4X?t$,;2>H$9$kJQ?t(B +* NNTP marks:: @acronym{NNTP} $B%5!<%P!@\@\B3$9$k$?$a$N4X?t(B +@cindex direct connection functions + +$B$3$l$i$N4X?t$O!"$"$J$?$N%^%7%s$H(B @acronym{NNTP}$B%5!<%P!<$r@\B3$9$k$?$a$K(B +$BD>@\8F$P$l$^$9!#$^$?!"$=$l$i$NF0:n$O$=$l$i$,6&DL$K;2>H$9$kJQ?t$K1F6A$5$l(B +$B$^$9(B (@pxref{Common Variables})$B!#(B + +@table @code +@findex nntp-open-network-stream +@item nntp-open-network-stream +$B$3$l$O%G%#%U%)%k%H$G!"C1=c$K1s3V%7%9%F%`$N%]!<%H$J$I$K@\B3$7$^$9!#(B + +@findex nntp-open-tls-stream +@item nntp-open-tls-stream +@dfn{$B0BA4$J(B} $B%A%c%s%M%k$r;H$C$F%5!<%P!<$K@\B3$7$^$9!#$3$l$r;H$&$?$a$K(B +$B$O(B @uref{http://www.gnu.org/software/gnutls/, GNUTLS} $B$r%$%s%9%H!<%k$7$F(B +$B$*$+$J$1$l$P$J$j$^$;$s!#$=$l$+$i%5!<%P!<$rA0$O;H$($^$;$s!#(B} +;; +(nntp "snews.bar.com" + (nntp-open-connection-function nntp-open-tls-stream) + (nntp-port-number ) + (nntp-address "snews.bar.com")) +@end lisp + +@findex nntp-open-ssl-stream +@item nntp-open-ssl-stream +@dfn{$B0BA4$J(B} $B%A%c%s%M%k$r;H$C$F%5!<%P!<$K@\B3$7$^$9!#$3$l$r;H$&$?$a$K(B +$B$O(B @uref{http://www.openssl.org, OpenSSL} $B$^$?(B +$B$O(B @uref{ftp://ftp.psy.uq.oz.au/pub/Crypto/SSL, SSLeay} $B$r%$%s%9%H!<%k$7(B +$B$F$*$+$J$1$l$P$J$j$^$;$s!#$=$l$+$i%5!<%P!<$rA0$O;H$($^$;$s!#(B} +;; +(nntp "snews.bar.com" + (nntp-open-connection-function nntp-open-ssl-stream) + (nntp-port-number 563) + (nntp-address "snews.bar.com")) +@end lisp + +@findex nntp-open-telnet-stream +@item nntp-open-telnet-stream +$BC1$K(B @samp{telnet} $B$7$F(B @acronym{NNTP} $B%5!<%P!<$K@\B3$7$^$9!#$"$J$?$O!"(B +$B%G%#%U%)%k%H$N(B @code{nntp-open-network-stream} $B$,$=$l$r$9$k$N$K$b$+$+$o(B +$B$i$:!"$J$<$3$N4X?t$,$"$k$N$+IT;W5D$K;W$&$+$b$7$l$^$;$s!#$=$NM}M3(B ($B$N0l(B +$B$D(B) $B$O!"$b$7$"$J$?$,KIJI$NCf$K$$$?$H$7$F$b(B @code{runsocks} $B$N$h$&$J%3%^(B +$B%s%I%i%C%Q!<$N$*$+$2$G30$N@$3&$rD>@\%"%/%;%9$G$-$k$J$i$P!"$"$J$?$O$=$l$r(B +$B$3$N$h$&$K;H$&$3$H$,$G$-$k$N$G$9(B: + +@lisp +(nntp "socksified" + (nntp-pre-command "runsocks") + (nntp-open-connection-function nntp-open-telnet-stream) + (nntp-address "the.news.server")) +@end lisp + +Emacs $B$N%;%C%7%g%sA4BN$r%i%C%W$7$F!"%G%#%U%)%k%H$N%a%=%C%I$r;H$&$H$$$&$N(B +$B$O!"NI$$9M$($G$O$"$j$^$;$s!#(B +@end table + +@node Indirect Functions +@subsubsection $B4V@\E*$K@\B3$9$k$?$a$N4X?t(B +@cindex indirect connection functions + +$B$3$l$i$N4X?t$O!"H$9$kJQ?t$K1F6A$5$l$^$9(B (@pxref{Common Variables})$B!#(B + +@table @code +@item nntp-open-via-rlogin-and-telnet +@findex nntp-open-via-rlogin-and-telnet +$B1s3V%7%9%F%`$K(B @samp{rlogin} $B$7$F!"$=$3$+$iK\Ev(B +$B$N(B @acronym{NNTP} $B%5!<%P!<$K(B @samp{telnet} $B$7$^$9!#$3$l$O!"Nc$($P$"$J$?(B +$B$,;O$a$KKIJI%^%7%s$K@\B3$7$J$1$l$P$J$i$J$$>l9g$KJXMx$G$9!#(B + +@code{nntp-open-via-rlogin-and-telnet}-$BMQ$NJQ?t(B: + +@table @code +@item nntp-via-rlogin-command +@vindex nntp-via-rlogin-command +$BCf4V$N%[%9%H$K%m%0%$%s$9$k$?$a$K;H$o$l$k%3%^%s%I$G$9!#%G%#%U%)%k%H(B +$B$O(B @samp{rsh} $B$G$9$,!"(B@samp{ssh} $B$,?M5$$N$"$kBeBX$N%3(B +$B%^%s%I$r;H$&$3$H$b$G$-$^$9!#(B + +@item nntp-via-netcat-switches +@vindex nntp-via-netcat-switches +@code{nntp-via-netcat-command} $B$N%3%^%s%I$N%9%$%C%A$H$7$F;H$o$l$kJ8;zNs(B +$B$N%j%9%H$G$9!#%G%#%U%)%k%H$O(B @code{nil} $B$G$9!#(B + +@item nntp-via-rlogin-command +$BCf4V$N%[%9%H$K%m%0%$%s$9$k$?$a$K;H$o$l$k%3%^%s%I$G$9!#%G%#%U%)%k%H(B +$B$O(B @samp{rsh} $B$G$9$,!"(B@samp{ssh} $B$,?M5$$N$"$kBeBXJ}(B) $B$G(B @code{ENVIRON} $B%*%W%7%g%s$r%5%]!<%H$7!"%m%0%$%sL>$NF~(B +$BNO$rMW5a$7$^$;$s!#$3$l$ONc$($P(B Solaris $B$N(B @code{telnet} $B$GF0:n$7$^$9!#(B + +@item nntp-via-shell-prompt +@vindex nntp-via-shell-prompt +$BCf4V$N%[%9%H$G$N%7%'%k$N%W%m%s%W%H$K9gCW$9$k@55,I=8=$G$9!#%G%#%U%)%k%H(B +$B$O(B @samp{bash\\|\$ *\r?$\\|> *\r?} $B$G$9!#(B +@end table + +@code{nntp-end-of-line} $B$NCM$r(B @samp{\n} $B$KJQ99$9$kI,MW$,$"$k$G$"$m$&$3(B +$B$H$KCm0U$7$F2<$5$$(B (@pxref{Common Variables})$B!#(B +@end table + +$B$3$l$i$O>e5-$N4X?t$,;2>H$9$kIU2CE*$JJQ?t$G$9(B: + +@table @code +@item nntp-via-user-name +@vindex nntp-via-user-name +$BCf4V$N%[%9%H$K@\B3$9$k$H$-$K;H$&MxMQ$G$9!#(B + +@item nntp-via-address +@vindex nntp-via-address +$B@\B3$9$kCf4V$N%[%9%H$N%"%I%l%9$G$9!#(B +@end table + +@node Common Variables +@subsubsection $B6&DL$NJQ?t(B + +$B0J2<$NJQ?t$O!"$9$Y$F$N!"$^$?$O$$$/$D$+$N$"$i$+$8$aMQ0U$5$l$F$$$k4X?t$NF0(B +$B:n$K1F6A$r5Z$\$7$^$9!#@_Dj$5$l$F$$$J$1$l$P!"$9$Y$F$N4X?t$,1F6A$5$l$^$9!#(B + +@table @code +@item nntp-pre-command +@vindex nntp-pre-command +$BAG$N@\B3MQ$N4X(B +$B?t(B (@code{nntp-open-network-stream}$B!"(B@code{nntp-open-tls-stream} $B$*$h(B +$B$S(B @code{nntp-open-ssl-stream} $B$@$1$@$H;W$&(B) $B$G$O$J$$$b$N$rDL$7$F@\B3$9(B +$B$k$H$-$K;H$&%3%^%s%I%i%C%Q!<$G$9!#Nc$($P$"$J$?$O(B @samp{SOCKS} $B%i%C%Q!<$r(B +$B3d$jEv$F$k$G$7$g$&!#(B + +@item nntp-address +@vindex nntp-address +@acronym{NNTP} $B%5!<%P!<$N%"%I%l%9$G$9!#(B + +@item nntp-port-number +@vindex nntp-port-number +$B@\B3$9$k(B @acronym{NNTP} $B%5!<%P!<$N%]!<%HHV9f$G$9!#%G%#%U%)%k%H(B +$B$O(B @samp{nntp} $B$G$9!#(B@acronym{TLS}/@acronym{SSL} $B$r2p$7(B +$B$?(B @acronym{NNTP} $B$r;H$&$K$O!"%]!<%H$NL>A0$G$O$J$/$F@0?t(B ($B$D$^(B +$B$j(B @samp{snews} $B$d(B @samp{nntps} $B$G$O$J$/$F(B @samp{563}) $B$r;XDj$9$kI,MW$,(B +$B$"$j$^$9!#30It$N(B @acronym{TLS}/@acronym{SSL} $B%D!<%k$O%]!<%H$NL>A0$G$OF0(B +$B:n$7$J$$$+$i$G$9!#(B + +@item nntp-end-of-line +@vindex nntp-end-of-line +@acronym{NNTP} $B%5!<%P!<$H$*OC$r$7$F$$$k$H$-$K9T$N=*$o$j$N0u$H$7$F;H$o$l(B +$B$kJ8;zNs$G$9!#$3$l$O%G%#%U%)%k%H$G(B @samp{\r\n} $B$G$9$,!"AG$G$O$J$$@\B3MQ(B +$B$N(B telnet $B4X?t$r;H$C$F$$$k$H$-$O(B @samp{\n} $B$G$"$k$Y$-$G$9!#(B + +@item nntp-telnet-command +@vindex nntp-telnet-command +@samp{telnet} $B$rDL$7$F(B @acronym{NNTP} $B%5!<%P!<$H@\B3$9$k$H$-$K;H$&%3%^%s(B +$B%I$G$9!#$3$l$OCf4V$N%[%9%H$H@\B3$9$k$?$a$N$b$N$G$O(B @emph{$B$"$j$^$;$s(B}$B!#$3(B +$B$l$OC1$KK\Ev$N(B @acronym{NNTP} $B%5!<%P!<$H@\B3$9$k$?$a$N$b$N$G$9!#%G%#%U%)(B +$B%k%H$O(B @samp{telnet} $B$G$9!#(B + +@item nntp-telnet-switches +@vindex nntp-telnet-switches +@code{nntp-telnet-command} $B$KEO$9%9%$%C%A$N%j%9%H$G$9!#%G%#%U%)%k%H(B +$B$O(B @samp{("-8")} $B$G$9!#(B +@end table + +@node NNTP marks +@subsubsection NNTP marks +@cindex storing NNTP marks + +Gnus $B$O(B @acronym{NNTP} $B%5!<%P!$l$N%U%!%$%k$O!"BP1~(B +$B$9$k%5!<%P!<$N$=$l$>$l$KBP$7$F@lMQ$G$9!#0u%U%!%$%k$O!"%K%e!<%9%5!<%P!<$K(B +$B;w$F$$$k8EE5E*$J3,AX(B +$B$G(B @file{~/News/marks} (@code{nntp-marks-directory}) $B$KJ]B8$5$l$^$9!#Nc(B +$B$($P(B news.gmane.org $B%5!<%P!<$K$*$1$k(B @samp{gmane.discuss} $B%0%k!<%W$N$?$a(B +$B$N0u%U%!%$%k(B +$B$O(B @file{~/News/marks/news.gmane.org/gmane/discuss/.marks} $B$KJ]B8$5$l$^(B +$B$9!#(B + +$B0u%U%!%$%k$OLr$KN)$A$^$9!#(B@file{~/News/marks} $B%G%#%l%/%H%j$O(B (rsync$B!"(B +scp $B$^$?$OB>$N2?$+$r;H$C$F(B) Gnus $B$rAv$i$;$kJL$N%[%9%H$K%3%T!<$9$k$3$H$,(B +$B$G$-!"$I$N5-;v$rFI$s$G0u$rIU$1$?$+$r$=$A$i$G:F8=$7$^$9!#(B +@file{~/News/marks} $B$N%G!<%?$O!"(B@file{~/.newsrc.eld} $B$K$"$kF1$8$b$N$h$j(B +$B$bM%@h$5$l$^$9!#(B + +$B0u%U%!%$%k$O!"$=$l$>$l$N%5!<%P!<$4$H$KHs>o$KFC2=$5$l$k$3$H$KCm0U$7$F2<$5(B +$B$$!#(BGnus $B$O5-;vHV9f$r5-21$9$k$N$G!"N>J}$N%[%9%H$GF1$8%5!<%P!<$r;H$C$F$$(B +$B$J$$$H!"J*;v$O2u$l$F$7$^$&$G$7$g$&(B ($BBgDq$N%5!<%P!<$OB>$N$I$s$J%5!<%P!<$H(B +$B$bF1$85-;vHV9f$r;H$$$^$;$s(B)$B!#$7$+$7!"$"$k%[%9%H$G%5!<%P!<(B A$B!"(BB$B!"(BC $B$r;H$$!"(B +$BJL$N%[%9%H$G%5!<%P!<(B A$B!"(BD$B!"(BE $B$r;H$&>l9g$K$O!"(BA $B$N$?$a$N0u%U%!%$%k$rF1$8(B +$B$K$9$k$3$H$,$G$-!"Fs$D$N%[%9%H4V$G$=$N%5!<%P!<$OF14|$7$^$9!#(B + +@acronym{NNTP} $B0u$N;HMQ$O@-G=$NNt2=$r>7$-!"(BGnus $B$r$N$m$/46$8$5$;$k2DG=@-(B +$B$,$"$j$^$9!#$=$&$$$&>l9g$O(B @code{nntp-marks-is-evil} $BJQ?t$r(B @code{t} $B$K(B +$B@_Dj$7$F$_$F2<$5$$!#$9$k$H!"0u$O(B @file{~/.newsrc.eld} ($B$@$1(B) $B$K3JG<$5$l(B +$B$k$G$7$g$&!#(B + +$B4XO"$9$kJQ?t(B: + +@table @code +@item nntp-marks-is-evil +@vindex nntp-marks-is-evil +$BHs(B-@code{nil} $B$@$C$?$i!"$3$N%P%C%/%(%s%I$O0u%U%!%$%k$rL5;k$7$^$9!#%G%#%U%)(B +$B%k%H$O(B @code{nil} $B$G$9!#(B + +@item nntp-marks-directory +@vindex nntp-marks-directory +@acronym{NNTP} $B%0%k!<%W$N0u$,3JG<$5$l$k%G%#%l%/%H%j$G$9!#(B +@end table + +@node News Spool +@subsection $B%K%e!<%9%9%W!<%k(B +@cindex nnspool +@cindex new spool + +$B%m!<%+%k%9%W!<%k$+$i30It%0%k!<%W$r9XFI$9$k;v$OHs>o$K4JC1$G!"Lr$KN)$A$^$9!#(B +$B$?$H$($P!"Hs>o$KBg$-$J5-;v$,$"$k%0%k!<%W(B---$BNc$((B +$B$P(B @samp{alt.binaries.pictures.furniture} $B$rFI$`B.EY$,B.$/$J$j$^$9!#(B + +$B$H$K$+$/!"(B@code{nnspool} $B$rJ}K!$H$7$F!"(B@code{""} ($B$b$7$/$O2?$G$b(B) $B$r%"%I(B +$B%l%9$H$7$F;XDj$9$k$@$1$G$9!#(B + +$B$b$7%m!<%+%k%9%W!<%k$K$D$J$0;v$,2DG=$J$i!"$*$=$i$/$=$l$r4pK\A*BrJ}K!$H$7(B +$B$F;H$&$Y$-$G$7$g$&(B (@pxref{Finding the News})$B!#$=$l$OIaDL(B +$B$O(B @code{nntp} $BA*BrJ}K!$h$jB.$$$G$9$,!"$=$&$G$J$$$+$b$7$l$^$;$s!#$=$l$O(B +$B>u67$K0MB8$7$^$9!#2?$,$"$J$?$N%5%$%H$G0lHVNI$$$+$r8+$D$1$k$?$a$K!"$$$m$$(B +$B$m$H;n$7$F$_$J$1$l$P$J$j$^$;$s!#(B + +@table @code +@item nnspool-inews-program +@vindex nnspool-inews-program +$B5-;v$rEj9F$9$k$?$a$K;H$o$l$k%W%m%0%i%`$G$9!#(B + +@item nnspool-inews-switches +@vindex nnspool-inews-switches +$B5-;v$rEj9F$9$k$H$-$K(B inews $B%W%m%0%i%`$KM?$($i$l$k%Q%i%a!<%?$G$9!#(B + +@item nnspool-spool-directory +@code{nnspool} $B$,5-;v$rC5$9$H$3$m$G$9!#$3$l$OIaDL(B +$B$O(B @file{/usr/spool/news/} $B$G$9!#(B + +@item nnspool-nov-directory +@vindex nnspool-nov-directory +@code{nnspool} $B$,(B @acronym{NOV} $B%U%!%$%k$rC5$9$H$3$m$G$9!#$3$l$OIaDL(B +$B$O(B @file{/usr/spool/news/over.view/} $B$G$9!#(B + +@item nnspool-lib-dir +@vindex nnspool-lib-dir +$B%K%e!<%9$N%i%$%V%i%j!<%G%#%l%/%H%j!<$N>l=j$G$9(B ($B%G%#%U%)%k%H(B +$B$G(B @file{/usr/lib/news/} $B$G$9(B)$B!#(B + +@item nnspool-active-file +@vindex nnspool-active-file +$B%"%/%F%#%V%U%!%$%k$NL>A0$G$9!#(B + +@item nnspool-newsgroups-file +@vindex nnspool-newsgroups-file +$B%0%k!<%W5-=R%U%!%$%k$NL>A0$G$9!#(B + +@item nnspool-history-file +@vindex nnspool-history-file +$B%K%e!<%9MzNr%U%!%$%k$NL>A0$G$9!#(B + +@item nnspool-active-times-file +@vindex nnspool-active-times-file +$B8=>uF|IU%U%!%$%k$X$NL>A0$G$9!#(B + +@item nnspool-nov-is-evil +@vindex nnspool-nov-is-evil +@code{nil} $B$G$J$$$H!"(B@code{nnspool} $B$O$=$l$,8+$D$1$?$I$s(B +$B$J(B @acronym{NOV} $B%U%!%$%k$b;H$*$&$H$O$7$^$;$s!#(B + +@item nnspool-sift-nov-with-sed +@vindex nnspool-sift-nov-with-sed +@cindex sed +@code{nil} $B$G$J$$$H!"$3$l$,%G%#%U%)%k%H$G$9$,!"354Q%U%!%$%k(B (overview) +$B$+$i4XO"$9$kItJ,$rF@$k$?$a$K(B @code{sed} $B$r;H$$$^$9!#$b$7(B @code{nil} $B$@$H!"(B +@code{nnspool} $B$O%U%!%$%kA4BN$r%P%C%U%!$KFI$_9~$s$G!"$=$3$G$N%U%!%$%k$rFI$`$?$a$K%a!<%k%P%C%/%(%s%I$r;H$&(B +* Choosing a Mail Back End:: Gnus $B$O?'!9$J%a!<%kMM<0$rFI$`;v$,$G$-$k(B +@end menu + +@node Mail in a Newsreader +@subsection $B%K%e!<%9%j!<%@$G%a!<%k(B + +$B$"$J$?$,EAE}E*$J%a!<%k%j!<%@$+$i(B Gnus $B$K>h$j49$($k$3$H$r7hCG$7$?$J$i$P!"(B +$B$"$J$?$O$$$m$$$m$J%+%k%A%c!<%7%g%C%/$r$`$J(B +$B$i$=$N$h$&$K$b$G$-$^$9$,!"$=$l$O9|@^$jB;$N$/$?$S$lLY$1$G$9!#(B + +Gnus $B$O$U$D$&F1$8C$9$?$a$KFCJL$JA`:n$O$7$^$;$s!#(B + +$B$3$N$3$H$O4{FI$N5-;v$O$9$Y$F>C$5$l$F$7$^$&$3$H$r0UL#$9$k$N$+$C$F(B? $B$=$j$c(B +$B$"$s$^$j$G$9$h$M(B! + +$B$=$&$G$O$"$j$^$;$s!#8E$$5-;v$O$$$m$s$J;EAH$_$K$h$C$F(B @dfn{expire} $B$5$l(B +$B$k$N$G$9!#%K%e!<%95-;v$O%K%e!<%9$N4IM}?M(B ($B$,4IM}$7$F$$$k%5!<%P(B) $B$K$h$C(B +$B$F(B expire $B$N=hM}$,@)8f$5$l!"%a!<%k$N(B expire $B$N=hM}$O$"$J$?$,@)8f$7$^$9!#(B +$B%a!<%k$N(B expire $B$K$D$$$F$O(B @ref{Expiring Mail} $B$r;2>H$7$F2<$5$$!#(B + +$B$7$P$i$/%a!<%k$H%K%e!<%9$NN>J}$r;H$C$F$_$l$P!"5-;v$N.?M?t$KMxMQ$5$l$F$$$k%m!<%+%k%K%e!<%9%0%k!<%W$r9VFI$7$F$$$^(B +$B$9!#$=$l$i$O(B @acronym{NNTP} $B$GG[Aw$5$l$k!"%K%e!<%9!"$G$9!#;d$?$A$O<+J,$N(B +$B;E;v$KLrN)$F$k$?$a$K!"$=$l$i$NKDBg$J5-;v$NCGJR$rFI$s$@$jJV;v$r$7$J$1$l$P(B +$B$J$j$^$;$s!#$=$7$F$=$l$i$OJ]B8$5$l$F$$$J$$$+$b$7$l$^$;$s$+$i!"6=L#$N$"$k(B +$B5-;v$r8D?M%a!<%k$HF1$8$h$&$KJ]B8$7$J$1$l$P$J$i$J$$$G$7$g$&!#(B + +$BG[Aw$N;EAH$_$N0c$$$O$I$&$G$b$h$$$3$H$G!"Bg;v$J$N$O$$$+$K/$/$H$b!";d$,(B Gnus $B$KF~$l$?!"(BEmacs $B$N%5%V%j%_%J%kG>L#A9@vBu4X?t$rGd$C(B +$B$F$/$l$??M$O$=$l$rJ]>Z$7$F$$$^$9!#$"$J$?$bF12=$7$^$9!#$"$J$?$O(B Gnus $B$r0&(B +$B$7$^$9!#$"$J$?$O(B Gnus $B$G$N%a!<%k$NJ}K!$r0&$7$^$9!#@dBP$K!#(B) + +@node Getting Started Reading Mail +@subsection $B%a!<%k$rFI$`;v$r;O$a$k(B + +Gnus $B$r;H$C$F?7$7$$%a!<%k$rFI$`;v$OHs>o$K4JC1$G$9!#$"$J$?$N%a!<%k%P%C%/(B +$B%(%s%I$N$"$J$?$NA*Br$r(B @code{gnus-secondary-select-methods} $B$KJ|$j9~$`$@(B +$B$1$G!"$"$H$N$3$H$O<+F0E*$K5/$3$j$^$9!#(B + +$BNc$($P!"(B@code{nnml} ($B$3$l$O(B ``$B0l%a!<%k0l%U%!%$%k(B'' $B%P%C%/%(%s%I$G$9(B) $B$r(B +$B;H$$$?$$$J$i!"$N%0%k!<%W$HF1$8$h$&$KFI$`;v$,$G$-$^(B +$B$9!#(B + +$B$"$J$?$O$*$=$i$/%a!<%k$r$$$/$D$+$N%0%k!<%W$KJ,3d$7$?$$$G$7$g$&$1$I(B: + +@lisp +(setq nnmail-split-methods + '(("junk" "^From:.*Lars Ingebrigtsen") + ("crazy" "^Subject:.*die\\^Organization:.*flabby") + ("other" ""))) +@end lisp + +$B$3$l$O7k2L$H$7$F;0$D$N?7$7$$(B @code{nnml} $B%a!<%k%0%k!<%W$r:n$j$^(B +$B$9(B: @samp{nnml:junk}, @samp{nnml:crazy}, @samp{nnml:other} $B$G$9!#:G=i(B +$B$NFs$D$N%0%k!<%W$K9g$o$J$$%a!<%k$OA4$F:G8e$N%0%k!<%W$KF~$l$i$l$^$9!#(B + +$B$3$l$O(B Gnus $B$G%a!<%k$rFI$`$?$a$K=$N9`$r=OFI$9$kI,MW$,$"$k$+$b$7$l$^$;$s$,!#FC(B +$B$K(B @ref{Choosing a Mail Back End} $B$H(B @ref{Expiring Mail} $B$r!#(B + +@node Splitting Mail +@subsection $B%a!<%k$NJ,3d(B +@cindex splitting mail +@cindex mail splitting +@cindex mail filtering (splitting) + +@vindex nnmail-split-methods +$BJQ?t(B @code{nnmail-split-methods} $B$OF~$C$F$/$k%a!<%k$r$I$N$h$&$K%0%k!<%W(B +$BJ,$1$9$k$+$r;XDj$7$^$9!#(B + +@lisp +(setq nnmail-split-methods + '(("mail.junk" "^From:.*Lars Ingebrigtsen") + ("mail.crazy" "^Subject:.*die\\|^Organization:.*flabby") + ("mail.other" ""))) +@end lisp + +$B$3$NJQ?t$O%j%9%H$N%j%9%H$G!"$3$l$i$N%j%9%H$N:G=i$N$=$l$>$l$NMWAG$,%a!<%k(B +$B%0%k!<%W$NL>A0$G(B ($B$H$3$m$G!"$=$l$i$O(B @samp{mail} $B$G;O$^$kI,MW$O$"$j$^$;(B +$B$s(B)$B!"Fs$D$a$NMWAG$,$=$l$>$l$N%a!<%k$N%X%C%@!<$+$i$=$l$,$I$N%0%k!<%W$KB0(B +$B$9$k$+$r7hDj$9$k@55,I=8=$G$9!#:G=i$NJ8;zNs$O!"(B@code{replace-match} $B$K$h$C(B +$B$F!"9gCW$7$?J8>O$+$i$NI{I=8=$rA^F~$9$k$?$a$K;H$o$l$k$h$&$J!"(B +@code{samp\\1} $B$NMM<0$r4^$`$+$b$7$l$^$;$s!#$?$H$($P(B: + +@lisp +("list.\\1" "From:.* \\(.*\\)-list@@majordomo.com") +@end lisp + +@noindent +$B$3$N>l9g!"A^F~$5$l$k%F%-%9%H$r>.J8;z$K$9$Y$-$+$I$&$+(B +$B$r(B @code{nnmail-split-lowercase-expanded} $B$,@)8f$7$^$9!#(B@xref{Fancy Mail +Splitting}. + +$BFsHVL\$NMWAG$O4X?t$G$"$k;v$b$G$-$^$9!#$=$N>l9g$O!"$=$l$OK!B'$N:G=i$NMWAG(B +$B$r0z?t$H$7$F!"%X%C%@!<$KHO0O$r69$a$F(B (narrowed to headers) $B8F$P$l$^$9!#(B +$B$=$l$O!"%a!<%k$,$=$N%0%k!<%W$KB0$9$k$H9M$($k$N$G$"$l$P!"(B@code{nil} $B$G$J(B +$B$$CM$r5"$9I,MW$,$"$j$^$9!#(B + +@cindex @samp{bogus} group +$B$3$l$i$N%0%k!<%W$N:G8e$O>o$KAm9gE*$J$b$N$G$"$k$Y$-$G!"B>$N@55,I=8=$K9gCW(B +$B$7$J$$%a!<%k$K9gCW$9$k$?$a$K!"$3$N@55,I=8=$O(B @emph{$B$$$D$b(B} @samp{""}$B$G$"(B +$B$k$Y$-$G$9!#(B($B$3$l$i$NK!B'$OO"A[%j%9%H$N=i$a$+$i=*$o$j$^$G=gHV$K!$A$^$9(B''$B!#Aj8_Ej9F$r;HMQ2DG=$K$7$F$$$k>l9g!"A4$F$N9gCW$7$?K!B'(B +$B$,(B ``$B>!$A$^$9(B''$B!#(B) $B9gCW$9$k5,B'$,$J$+$C$?$i!"%a!<%k$O:G8e(B +$B$K(B @samp{bogus} $B%0%k!<%W$G=*$o$j$^$9!#%a!<%kJ,3d$K$h$C$F?7$7$$%0%k!<%W$,(B +$B:n$i$l$?>l9g$O!"$=$l$i$r8+$k$?$a$K(B @code{gnus-group-find-new-groups} $B$r(B +$B$N%j%9%H$rJV$9$Y$-$G(B +$B$9!#(B + +$BA4$F$N%a!<%k%P%C%/%(%s%I$O!"F~$C$FMh$?IOK3$G=c?h$J%X%C%@!<$rMpK=$K07$C$F(B +$B$bNI$$;v$KCm0U$7$F$/$@$5$$!#$=$l$i$O$9$Y$F(B @code{Lines} $B%X%C%@!<$rDI2C$7(B +$B$^$9!#$$$/$D$+$O(B @code{X-Gnus-Group} $B%X%C%@!<$r2C$($^$9!#$?$$$F$$$N$b$N(B +$B$O(B Unix $B$N(B mbox $B$N(B @code{From} $B9T$r2?$+JL$NL>A0$KJQ$($^$9!#(B + +@vindex nnmail-crosspost +$B%a!<%k%P%C%/%(%s%I$O$9$Y$FAj8_Ej9F$N5!G=$rDs6!$7$F$$$^$9!#$$$/$D$+$N@55,(B +$BI=8=$,9gCW$9$k$H!"%a!<%k$OA4$F$N%0%k!<%W$K(B ``$BAj8_Ej9F(B'' $B$5$l$^$9!#(B +@code{nnmail-crosspost} $B$O$3$N5!G=$r;H$&$+$I$&$+$r;XDj$7$^$9!#$I$N5-;v$b(B +$BAm9g$N(B (@samp{""}) $B%0%k!<%W$KAj8_Ej9F$5$l$J$$;v$KCm0U$7$F$/$@$5$$!#(B + +@vindex nnmail-crosspost-link-function +@cindex crosspost +@cindex links +@code{nnmh} $B$H(B @code{nnml} $B$OAj8_Ej9F$5$l$?5-;v$K%O!<%I%j%s%/(B (hardlink) +$B$r:n$k;v$K$h$C$FAj8_Ej9F$r9T$$$^$9!#$7$+$7!"A4$F$N%U%!%$%k%7%9%F%`$,%O!<(B +$B%I%j%s%/$N5!G=$rDs6!$7$F$$$k$o$1$G$O$"$j$^$;$s!#$b$7$"$J$?$,$=$N>l9g$KEv(B +$B$F$O$^$k$N$G$"$l$P!"(B +@code{nnmail-crosspost-link-function} $B$r(B @code{copy-file} $B$K@_Dj$7$F$/$@(B +$B$5$$!#(B($B$3$NJQ?t$O%G%#%U%)%k%H$G(B @code{add-name-to-file} $B$G$9!#(B) + +@kindex M-x nnmail-split-history +@findex nnmail-split-history +$BA0$N%a!<%kJ,3d$,%a%C%;!<%8$r$I$3$KF~$l$?$+$r8+$?$$>l9g$O!"L?Na(B @kbd{M-x +nnmail-split-history} $B$r;H$&;v$,$G$-$^$9!#$3$l$+$i%9%W!<%k$7D>$=$&$H$9$k(B +$B%a%C%;!<%8$,$I$3$KF~$k$+$r8+$?$$>l9g$O!"(B +@code{gnus-summary-respool-trace} $B$H4XO"$9$kL?(B +$BNa(B (@pxref{Mail Group Commands}) $B$r;H$&;v$,$G$-$^$9!#(B + +@vindex nnmail-split-header-length-limit +@code{nnmail-split-header-length-limit} $B$N@)8B$h$jD9$$%X%C%@!<9T$O!"J,3d(B +$B4X?t$N=hM}BP>]$+$i=|30$5$l$^$9!#(B + +@vindex nnmail-mail-splitting-charset +@vindex nnmail-mail-splitting-decodes +($BLuCm(B: $B%*%j%8%J%k$N(B Gnus $B$H$O;EMM$,HyL/$K0[$J$k$3$H$KCm0U$7$F2<$5$$(B) $B%G%#(B +$B%U%)%k%H$G$OJ,3d%3!<%I$O(B @acronym{MIME} $B%(%s%3!<%I$5$l$?%X%C%@!<$r%G%3!<(B +$B%I$9$k$N$G!"Hs(B-@acronym{ASCII} $BJ8;zNs$K%^%C%A$5$;$k$3$H$,$G$-$^$9!#JQ(B +$B?t(B @code{nnmail-mail-splitting-charset} $B$,(B @acronym{MIME} $BJ8;z=8(B +$B9g(B (mime-charset) $B$G$"$C$?$i$=$l!"(B@acronym{MIME} $BJ8;z=89g$G$O$J$$(B +$BHs(B-@code{nil} $B$JCM$@$C$?$i$=$N$H$-$N(B @code{default-mime-charset} $B$NCM$G!"(B +(@acronym{MIME} $B%(%s%3!<%I$5$l$?$b$N$G$O$J$$(B) $BHs(B-@acronym{ASCII} $B%S%C%H(B +$B%Q%?!<%s$b%G%3!<%I$7$^$9!#$3$NF0:n(B +$B$O(B @code{nnmail-mail-splitting-decodes} $B$r(B @code{nil} $B$K$9$k$3$H$K$h$C$F(B +$B40A4$K;_$a$k$3$H$,$G$-!"@8$N%X%C%@!<$N%G!<%?$r85$K5-;v$K%^%C%A$5$;$?$$>l(B +$B9g$K$OM-8z$G$7$g$&!#(B + +@vindex nnmail-resplit-incoming +$B%G%#%U%)%k%H$G$OF~$C$F$/$k$9$Y$F$N%a%C%;!<%8$KBP$7$FJ,3d$,F/$-$^$9!#$b(B +$B$7(B @code{mail-sources} $BJQ(B +$B?t(B (@pxref{Mail Source Specifiers}) $B$K(B @code{directory} $B$N9`$r@_Dj$7$F$b!"(B +$B$7$+$7!"%G%#%U%)%k%H$G$OJ,3d$O(B @emph{$B5/$3$j$^$;$s(B}$B!#JQ(B +$B?t(B @code{nnmail-resplit-incoming} $B$rHs(B-@code{nil} $B$JCM$K@_Dj$9$k$3$H$K$h$C(B +$B$F!"$3$N>l9g$G$bJ,3d$r5/$3$5$;$k$3$H$,$G$-$^$9!#(B($B$3$NJQ?t$OB>$Ne;J$+$i$/$kA4$F$N%a!<%k$r4^$s$@%0%k!<%W$r:n$C(B +$B$?$H$7$^$7$g$&!#$=$l$+$i!"6vH/E*$K$=$N%0%k!<%W$N9XFIe;J$+$i$NA4$F$N%a!<%k$rL$9XFI$N%0%k!<%W$KF~$l$^(B +$B$9$N$G!">e;J$,(B ''$B7nMKF|$^$G$K$=$NJs9p=q$r=`Hw$7$J$$$HA0$G$9!#=i4|CM$O(B @env{MAIL} $B4D6-JQ?t$NCM(B +$B$+(B @code{rmail-spool-directory} $B$NCM(B ($BIaDL(B +$B$O(B @file{usr-mail/spool/user-name} $B$N$h$&$J$b$N(B) $B$G$9!#(B + +@item :prescript +@itemx :postscript +$B%a!<%k$r$r;H$&$H(B: + +@lisp +(file) +@end lisp + +$B%a!<%k%9%W!<%k%U%!%$%k$,%m!<%+%k%^%7%s$KL5$$>l9g$O!"(B +@acronym{POP} $B$d(B @acronym{IMAP} $B$J$I$G%a!<%k$r$O;HMQ$G$-$^$;$s(B---$B%a!<%k$r0\F0$7$F$$$k$H$-$K(B +$B%a!<%k%9%W!<%k$r%m%C%/$9$kJ}K!$,$"$j$^$;$s!#(B + +$BE,@Z$J%5!<%P!<$r@_CV$9$k$3$H$,IT2DG=$J$i!"JQ$o$j$K(B ssh $B$r;H$&$3$H$,$G$-(B +$B$^$9!#(B + +@lisp +(setq mail-sources + '((file :prescript "ssh host bin/getmail >%t"))) +@end lisp + +@samp{getmail} $B%9%/%j%W%H$O0J2<$N$h$&$J$b$N$K$J$j$^$9(B: + +@example +#!/bin/sh +# getmail - move mail from spool to stdout +# flu@@iki.fi + +MOVEMAIL=/usr/lib/emacs/20.3/i386-redhat-linux/movemail +TMP=$HOME/Mail/tmp +rm -f $TMP; $MOVEMAIL $MAIL $TMP >/dev/null && cat $TMP +@end example + +$BL\E*$K9g$&$h$&$K;HMQ$7$?$$(B @samp{movemail} $B$K9g$o$;$F%9%/%j%W%H$r=q$-49(B +$B$($F$/$@$5$$!#(B + +@item directory +@vindex nnmail-scan-directory-mail-source-once +$B%G%#%l%/%H%j!o$NJ,3d=hM}$,%G%#%l%/%H%j!A0$G$9!#$3$l$K$O=i4|CM$O$"$j$^$;$s!#(B + +@item :suffix +$B$3$N@\Hx8l$G=*$o$k%U%!%$%k$@$1$,;HMQ$5$l$^$9!#=i4|CM$O(B @samp{.spool} $B$G(B +$B$9!#(B + +@item :predicate +$B$3$N=R8l$,(B @code{nil} $B$G$J$$CM$rJV$9%U%!%$%k$N$_$G$9!#=i4|CM(B +$B$O(B @code{identity} $B$G$9!#$3$l$ODI2C$NA*JL4o$H$7$F;HMQ$5$l$^$9(B---$B@5$7$$@\(B +$BHx8l(B @emph{$B$H(B} $B$3$N=R8l$rK~B-$9$k%U%!%$%k$@$1$,9MN8$5$l$^$9!#(B + +@item :prescript +@itemx :postscript +$B%a!<%k$NA0$G$9!#=i4|CM$O(B @env{MAILHOST} $B4D6-JQ?t$+$i$G$J$1$l$P$J$j$^$;$s!#=i4|CM$O(B @samp{pop3} $B$G$9!#%7%9%F%`$K$h$C$F(B +$B$O(B @samp{"pop-3"} $B$H$7$J$1$l$P$J$i$J$$$+$b$7$l$^$;$s!#(B + +@item :user +@acronym{POP} $B%5!<%P!<$KM?$($kMxMQ$G$9!#=i4|CM$O%m%0%$%sL>$G$9!#(B + +@item :password +@acronym{POP} $B%5!<%P!<$KM?$($k%Q%9%o!<%I$G$9!#;XDj$5$l$J$$>l9g$O!"MxMQA0$G$9!#$3$l$O>o$K$3$NJ8;zNs$K4^$^$l$F$$$J(B +$B$1$l$P$J$j$^$;$s!#(B + +@item s +$B%5!<%P!<$NL>A0$G$9!#(B + +@item P +$B%5!<%P!<$N%]!<%HHV9f$G$9!#(B + +@item u +$B;HMQ$9$kMxMQ$G$9!#(B + +@item p +$B;HMQ$9$k%Q%9%o!<%I$G$9!#(B +@end table + +$B$3$l$i$N;EMM$G;H$o$l$kCM$OBP1~$9$k%-!<%o!<%I$KM?$($?CM$+$iZJ}<0$r;H$&$+$r(B +$B7h$a$k$b$N$N$I$A$i$+$G$9!#=i4|@_Dj$O(B @code{password} $B$G$9!#(B + +@item :connection +$B%5!<%P!<$K@\B3$9$k$H$-$K;H$&%9%H%j!<%`$G!"(B@code{ssl}, @code{tls} $B$^$?$O(B +$B$=$l0J30$r;XDj$G$-$^$9!#%G%#%U%)%k%H$O(B @code{nil} $B$G!"0BA4$G$O$J$$@\B3$r(B +$BMQ$$$^$9!#(BSSL/TLS $B$G$O30It%W%m%0%i%`$H%i%$%V%i%j$,I,MW$G$"$k$3$H$KCm0U$7(B +$B$F2<$5$$(B: + +@itemize @bullet +@item +@dfn{ssl:} @acronym{SSL} $B$r;H$$$^$9!#(BOpenSSL (@samp{openssl} $B%W%m%0%i(B +$B%`(B) $B$+(B SSLeay (@samp{s_client}) $B$H30It%i%$%V%i%j(B @samp{ssl.el} $B$,I,MW$G(B +$B$9!#(B +@item +@dfn{starttls:} STARTTLS (@acronym{SSL} $B$KN`;w(B) $B$r;H$$$^$9!#30It%i%$%V%i(B +$B%j(B @samp{starttls.el} $B$H(B @samp{starttls} $B%W%m%0%i%`$,I,MW$G$9!#(B +@samp{starttls}. +@end itemize + +@item :leave +$BHs(B-@code{nil} $B$G%a!<%k$r%5!<%P!<$K;D$7!"%a%C%;!<%8$Nl9g!"(B +@code{pop3-leave-mail-on-server} $B$,Hs(B-@code{nil} $B$@$C$?$i!"%a!<%k$OuBV$N>pJs$r0];}$7$^$;$s!#%/%i%$%"%s%H$,?.Mj$G$-$k>pJs$O%/%i%$(B +$B%"%s%H$=$N$b$N$K$"$j$^$9$,!"pJs$r0];}$7$J$$>l9g$O!"$9$Y$F$,Jx2u(B +$B$7$F!"$"$J$?$O2u$l$?%a!<%k%\%C%/%9$H$H$b$KCV$-5n$j$K$J$k2DG=@-$,$"$j$^$9!#(B + +$B$3$l$O$$$/$D$+$NNc$G$9!#=i4|MxMQ$G!"=i4|(B @acronym{POP} $B%5!<%P!<$+$i(B +$B$5$l$?%5!<%P!<$+$i;XL>$5$l$?MxMQ$l$N%U%!%$%k$,(B +$B@53N$K(B 1 $B%a!<%k$H$J$C$F$$$^$9!#(B + +$B%-!<%o!<%I(B: + +@table @code +@item :path +$B%a!<%k$,J]B8$5$l$k%G%#%l%/%H%j!<$NL>A0$G$9!#=i4|CM$O4D6-JQ(B +$B?t(B @env{MAILDIR} $B$+$ie$G%a!<%k$rFI$`%W%m%H%3(B +$B%k$H$7$F07$$$?$/$J$$$H$-$O!"(BGnus $B$G$O(B @acronym{POP} $B%5!<%P!<$HF1MM$K07$&(B +$B$3$H$,$G$-!"M?$($i$l$?(B @acronym{IMAP} $B%a!<%k%\%C%/%9$+$i5-;v$r\$7$/$O(B @xref{IMAP} $B$r;2>H$7$F2<$5$$!#(B + +Kerberos, GSSAPI, @acronym{TLS}/@acronym{SSL} $B$*$h$S(B STARTTLS $B$N$?$a$N30(B +$BIt%W%m%0%i%`$H%i%$%V%i%j$,I,MW$G$"$k$3$H$KN10U$7$F2<$5$$!#(B@xref{IMAP}. + +$B%-!<%o!<%I(B: + +@table @code +@item :server +@acronym{IMAP} $B%5!<%P!<$NL>A0!#=i4|CM$O4D6-JQ?t(B @env{MAILHOST} $B$+$iF@$^(B +$B$9!#(B + +@item :port +@acronym{IMAP} $B%5!<%P!<$N%]!<%HHV9f!#IaDL$O=i4|CM$O(B @samp{143} $B$G!"(B +@acronym{TLS}/@acronym{SSL} $B@\B3$K$O(B @samp{993} $B$G$9!#(B + +@item :user +@acronym{IMAP} $B%5!<%P!<$KEO$9MxMQ$G$9!#=i4|CM$O%m%0%$%sL>$G$9!#(B + +@item :password +@acronym{IMAP} $B%5!<%P!<$KEO$9%Q%9%o!<%I$G$9!#;XDj$5$l$F$$$J$$$H$-$O!"Mx(B +$BMQu$G$O(B @samp{gssapi}, +@samp{kerberos4}, @samp{starttls}, @samp{tls}, @samp{ssl}, +@samp{shell} $B$^$?$O=i4|CM$N(B @samp{network} $B$K$J$j$^$9!#(B + +@item :authentication +$B%5!<%P!<$G$NG'>Z$K$I$NG'>ZK!$r;H$&$+!#$3$l(B +$B$O(B @code{imap-authenticator-alist} $B$N%7%s%\%k$N0l$D$r@_Dj$7$^$9!#8=>u$G(B +$B$O(B @samp{gssapi}, @samp{kerberos4}, @samp{digest-md5}, @samp{cram-md5}, +@samp{anonymous} $B$^$?$O=i4|CM$N(B @samp{login} $B$K$J$j$^$9!#(B + +@item :program +:stream $B$K(B `shell' $B$,@_Dj$5$l$F$$$k$H$-$O!"$3$NCM$,JQ(B +$B?t(B @code{imap-shell-program} $B$K3d$jEv$F$i$l$^$9!#$3$l$O(B @code{format} $B$U(B +$B$&$NJ8;zNs(B ($B$^$?$OJ8;zNs$N%j%9%H(B) $B$G$J$1$l$P$J$j$^$;$s!#Nc$r<($7$^$7$g$&!#(B + +@example +ssh %s imapd +@end example + +$BM-8z$J(B format $B;X<(;R$O0J2<$NDL$j$G$9!#(B + +@table @samp +@item s +$B%5!<%P!<$NL>A0!#(B + +@item l +@code{imap-default-user} $B$G@_Dj$5$l$?%f!<%6L>!#(B + +@item p +$B%5!<%P!<$N%]!<%HHV9f!#(B +@end table + +$B$3$l$i$N;XDj$K;H$o$l$kCM$O!"BP1~$9$k%-!<%o!<%I$KM?$($?CM$+$iA0!#=i4|CM$O(B @samp{INBOX} $B$G!"$3$l$OIa(B +$BDL$OF~$C$F$/$k%a!<%k$rC5n$N0u$rIU$1$^$9$,!"B>$K(B @samp{\Seen} $B$G$OC1$K4{FI$N0u$rIU$1$^$9!#(B +$B$3$l$i$O:G$b$"$j$=$&$JFs$D$NA*Br$G$9$,!"B>$N0u$b(B RFC2060 $B$N(B 2.3.2 $B@a$GDj(B +$B5A$5$l$F$$$^$9!#(B + +@item :dontexpunge +@code{nil} $B$G$J$+$C$?$i!"5-;v$rC5n$N0u$,IU$$$F$$(B +$B$F$b:o=|$7$^$;$s!#(B +@end table + +@acronym{IMAP} $B%a!<%k%=!<%9$NNc(B: + +@lisp +(imap :server "mail.mycorp.com" + :stream kerberos4 + :fetchflag "\\Seen") +@end lisp + +@item webmail +@uref{http://www.hotmail.com/}, @uref{http://webmail.netscape.com/}, +@uref{http://www.netaddress.com/}, @uref{http://www.yahoo.com/} $B$J$I$N%&%'(B +$B%V%a!<%k%5!<%P!<$+$i%a!<%k$rl9g(B +$B$O(B "one-line-cookie" $B%Q%C%A$rEv$F$kI,MW$,$"$j$^$9!#(B + +$B7Y9p(B: $B%a!<%k$,<:$o$l$k$+$b$7$l$^$;$s!#L5J]>Z$G$9!#(B + +$B%-!<%o!<%I(B: + +@table @code +@item :subtype +$B%&%'%V%a!<%k%5!<%P!<$N7?$G$9!#=i4|CM$O(B @code{hotmail} $B$G$9!#B>$N8uJd(B +$B$O(B @code{netscape}, @code{netaddress}, @code{my-deja} $B$G$9!#(B + +@item :user +$B%&%'%V%a!<%k%5!<%P!<$NMxMQ$G$9!#=i4|CM$O%m%0%$%sL>$G$9!#(B + +@item :password +$B%&%'%V%a!<%k%5!<%P!<$N%Q%9%o!<%I$G$9!#;XDj$7$J$$>l9g$O!"MxMQl9g$KJXMx$G$9!#(B +@end table +@end table + +@subsubsection $B4X?t%$%s%?!<%U%'!<%9(B + +$B>e5-$N$$$/$D$+$N%-!<%o!<%I$O!"$l$N%-!<%o!<%I(B @code{:foo} $B$NCM$H$7(B +$B$F(B Lisp $BJQ?t(B @code{foo} $B$,;H$o$l$^$9!#Nc$($P!"0J2<$N%a!<%k%=!<%9$N@_DjNc(B +$B$K$D$$$F9M$($F$_$F2<$5$$!#(B + +@lisp +(setq mail-sources '((pop :user "jrl" + :server "pophost" :function fetchfunc))) +@end lisp + +$B4X?t(B @code{fetchfunc} $B$,$l$N7?$N%a!<%k%=!<%9$N$?$a$N%-!<%o!<%I$N%j%9%H$K$D$$$F$O!">e5-$r;2(B +$B>H$7$F2<$5$$!#(B + +@node Mail Source Customization +@subsubsection $B%a!<%k%=!<%9$N%+%9%?%^%$%:(B + +$B0J2<$O%a!<%k$Nl=j$G$9!#=i4|CM(B +$B$O(B @file{~/.emacs-mail-crash-box} $B$G$9!#(B + +@item mail-source-delete-incoming +@vindex mail-source-delete-incoming +@code{nil} $B$G$J$1$l$P!"F~$C$FMh$?%U%!%$%k$O!"$=$l$r=hM}$7$?8e$K>C5n$5$l(B +$B$^$9!#(B@code{t} $B$G$O%U%!%$%k$r$?$@$A$K>C5n$7!"(B@code{nil} $B$G$O$$$+$J$k%U%!(B +$B%$%k$b>C$7$^$;$s!#@5$N?t$@$C$?>l9g$O!"$=$NF|?t0J>e$K8E$$%U%!%$%k$r>C5n$7(B +$B$^$9(B ($B$3$l$O?7Ce%a!<%k$rC5n$9$k$H$-$K3NG'$r5a$a$^$9!#$3$NJQ?t(B +$B$O(B @code{mail-source-delete-incoming} $B$,@5$N?t$G$"$k>l9g$@$1;H$o$l$^$9!#(B + +@item mail-source-ignore-errors +@vindex mail-source-ignore-errors +$BHs(B-@code{nil} $B$@$C$?$i!"%a!<%k%=!<%9$+$i%a!<%k$rFI$`$H$-$N%(%i!<$rL5;k$7(B +$B$^$9!#(B + +@item mail-source-directory +@vindex mail-source-directory +$BF~$C$F$-$?%a!<%k%=!<%9$N%U%!%$%k$,(B ($B$b$7$"$l$P(B) $BJ]B8$5$l$k%G%#%l%/%H%j!<(B +$B$G$9!#=i4|CM$O(B @file{~/Mail/} $B$G$9!#8=;~E@$G$O!"$3$l$,;H$o$l$kM#0l$N$b$N(B +$B$OJQ?t(B @code{mail-source-delete-incoming} $B$,(B @code{nil} $B$^$?$O?t;z$G$"$C(B +$B$?>l9g!"F~$C$F$-$?%U%!%$%k$,J]B8$5$l$k>l=j$N;XDj$G$9!#(B + +@item mail-source-incoming-file-prefix +@vindex mail-source-incoming-file-prefix +$BF~$C$F$-$?%a!<%k$rJ]B8$9$k%U%!%$%k$N%W%l%U%#%C%/%9$G$9!#=i4|CM(B +$B$O(B @file{Incoming} $B$G!"$3$N>l9g%U%!%$%k(B +$B$O(B @file{Incoming30630D_} $B$d(B @file{Incoming298602ZD} $B$N$h$&$K$J$j$^$9!#(B +@code{mail-source-delete-incoming} $B$,(B @code{nil} $B$N>l9g$@$1$G$9$,!#(B + +@item mail-source-default-file-modes +@vindex mail-source-default-file-modes +$BA4$F$N?7$7$$%a!<%k%U%!%$%k$O$3$N%U%!%$%k%b!<%I$K$J$j$^$9!#=i4|CM(B +$B$O(B 384 $B$G$9!#(B + +@item mail-source-movemail-program +@vindex mail-source-movemail-program +$BHs(B-@code{nil} $B$@$C$?$i?7Ce%a!<%k$NA0!#(B +@code{nil} $B$@$C$?$i(B @var{exec-directory} $B$K$"$k(B @code{movemail}$B!#(B +@end table + +@node Fetching Mail +@subsubsection $B%a!<%k$NJ}$+$i%a!<%k$re$2(B +$B$F!"%[!<%`%G%#%l%/%H%j!<$KJ|$jEj$2$^$9!#$"$J$?$,%a!<%k%P%C%/%(%s%I$r;H$C(B +$B$F$$$J$$>l9g$O!"(BGnus $B$O0lDL$b%a!<%k$r0\F0$7$^$;$s(B---$B:G=i$KKbK!$N8F$S=P$7(B +$B$r$?$/$5$s$7$J$1$l$P$J$j$^$;$s!#$^$:8^3Q7A$rIA$-!"O9?$$K2P$rIU$1!";3MS$r(B +$B@8$1lS$H$7$FJ{$2=*$($?8e$G!"(BGnus $B$,$"$J$?$N%a!<%k$r0\F0$7$F$bK\Ev$K$"$^(B +$B$j6C$$$F$O$$$1$^$;$s!#(B + +@node Mail Back End Variables +@subsection $B%a!<%k%P%C%/%(%s%IJQ?t(B + +$B$3$l$i$NJQ?t$O(B ($B$?$$$F$$$N>l9g(B) $BA4$F$N0c$C$?%a!<%k%P%C%/%(%s%I$K4XO"$7$^(B +$B$9!#(B + +@table @code +@vindex nnmail-read-incoming-hook +@item nnmail-read-incoming-hook +$B%a!<%k%P%C%/%(%s%I$O?7$7$$%a!<%k$rFI$_9~$s$@8e$K$3$N%U%C%/$r8F$S$^$9!#$b(B +$B$7$=$&$7$?$$$H;W$&$J$i!"$3$N%U%C%/$r%a!<%k4F;k%W%m%0%i%`$KCN$i$;$k$?$a$K(B +$B;H$&;v$,$G$-$^$9!#(B + +@vindex nnmail-split-hook +@item nnmail-split-hook +@findex gnus-article-decode-encoded-words +@cindex RFC1522 decoding +@cindex RFC2047 decoding +$B$=$l$>$l$N%a%C%;!<%8$,$=$N%X%C%@!<$K4p$E$$$FJ,3d$,$J$5$l$kD>A0$K$=$l$,J](B +$BB8$5$l$F$$$k%P%C%U%!$GC5n$5$l!"%P%C%U%!$G9T$o$l$?JQ99$O$I$N%U%!%$%k$K$b8=$l$^$;(B +$B$s!#(B@code{gnus-article-decode-rfc1522} $B$,$3$N%U%C%/$K2C$($k;v$,E,@Z$J4X(B +$B?t$N0l$D$G$9!#(B + +@vindex nnmail-pre-get-new-mail-hook +@vindex nnmail-post-get-new-mail-hook +@item nnmail-pre-get-new-mail-hook +@itemx nnmail-post-get-new-mail-hook +$B$3$l$i$OF~$C$F$/$k%a!<%k$r07$&$H$-$KA0$K(B +$B8F$P$l$^$9(B) $B$H(B @code{nnmail-post-get-new-mail-hook} ($B$3$l$O%a!<%k$N07$$(B +$B$,=*$o$C$?$H$-$K8F$P$l$^$9(B) $B$G$9!#$H%G%#%l%/%H%j!<(B +$BL>$r;H$$$^$9!#(B@samp{mail.misc} $B$N$h$&$J%0%k!<%WL>$O(B @file{mail.misc} $B$H(B +$B$$$&%G%#%l%/%H%j!<(B (@code{nnml} $B%P%C%/%(%s%I$,;H$o$l$F$$$k$H$_$J$9$H(B) $B$+(B +$B%U%!%$%k(B (@code{nnfolder} $B%P%C%/%(%s%I$,;H$o$l$F$$$k$H$_$J$9$H(B) $B$H$$$&7k(B +$B2L$K$J$j$^$9!#$b$7$=$l$,(B @code{nil} $B$G$"$k$J$i!"F1$8%0%k!<%W(B +$B$O(B @file{mail/misc} $B$H$$$&7k2L$K$J$j$^$9!#(B + +@item nnmail-delete-file-function +@vindex nnmail-delete-file-function +@findex delete-file +$B%U%!%$%k$r>C5n$9$k$?$a$K8F$P$l$k4X?t$G$9!#=i4|CM(B +$B$O(B @code{delete-file} $B$G$9!#(B + +@item nnmail-cache-accepted-message-ids +@vindex nnmail-cache-accepted-message-ids +@code{nil} $B$G$J$$$H!"%P%C%/%(%s%I$KF~$C$FMh$?5-;v(B ($BNc$($P!"(B@code{Gcc} $B$K(B +$B$h$C$F(B) $B$N(B @code{Message-ID} $B$r%a!<%k=EJ#H/8+%U%!%$%k$KF~$l$^$9!#%G%#%U%)(B +$B%k%H$O(B @code{nil} $B$G$9!#(B + +@item nnmail-cache-ignore-groups +@vindex nnmail-cache-ignore-groups +$B@55,I=8=$+@55,I=8=$N%j%9%H$G$9!#@55,I=8=$K%0%k!<%WL>$,%^%C%A$9$k(B +$B$H(B @code{Message-ID} $B%-%c%C%7%e$K5-O?$5$l$^$;$s!#(B + +$BNc$($PFC5iJ,3d(B (@pxref{Fancy Mail Splitting}) $B$r4X(B +$B?t(B @code{nnmail-split-fancy-with-parent} $B$H$H$b$K;H$C$F$$$k>l9g$KLrN)$D(B +$B$G$7$g$&!#(B +@end table + +@node Fancy Mail Splitting +@subsection $BFC5i%a!<%kJ,3d(B +@cindex mail splitting +@cindex fancy mail splitting + +@vindex nnmail-split-fancy +@findex nnmail-split-fancy +$BHf3SE*C1=c$JI8=`$N%a!<%kJ,3d;XDj$NJ}K!$G$O$"$J$?$NK>$`;v$,$G$-$J$$>l9g!"(B +@code{nnmail-split-methods} $B$r(B @code{nnmail-split-fancy} $B$K@_Dj$9$k;v$,(B +$B$G$-$^$9!#$=$l$+$iJQ?t(B @code{nnmail-split-fancy} $B$GM7$V;v$,$G$-$^$9!#(B + +$B$^$:$3$NJQ?t$NCM$NNc$r8+$F$_$^$7$g$&(B: + +@lisp +;; @r{$B%a!<%k%G!<%b%s(B (mailer deamon) $B$OIaDL$N%0%k!<%W$K$OAj8_Ej9F$5$l$^(B} +;; @r{$B$;$s!#7Y9p$OK\Ev$N%(%i!<$H$O0c$C$?%0%k!<%W$KF~$l$i$l$^$9!#(B} +(| ("from" mail (| ("subject" "warn.*" "mail.warning") + "mail.misc")) + ;; @r{$B%(%i!<$G$J$$%a%C%;!<%8$OA4$F$N4XO"$7$?%0%k!<%W$KAj8_Ej9F$5$l$^(B} + ;; @r{$B$9$,!"(B(ding) $B%j%9%H$HB>$N(B (ding) $B4XO"$N%a!<%k$N$?$a$N%0%k!<%W$K(B} + ;; @r{$B$OAj8_Ej9F$7$^$;$s!#(B} + (& (| (any "ding@@ifi\\.uio\\.no" "ding.list") + ("subject "ding" "ding.misc")) + ;; @r{$BB>$N%a!<%j%s%0%j%9%H(B@dots{}} + (any "procmail@@informatik\\.rwth-aachen\\.de" "procmail.list") + (any "SmartList@@informatik\\.rwth-aachen\\.de" "SmartList.list") + ;; @r{$B0J2<$N$I$A$i$N%a!<%j%s%0%j%9%H$bF1$8@\F,<-$J$N$G!"(Bbugs-} + ;; @r{$B$@$1$KEj9F$5$l$?$b$N$,(B mypkg.list $B$KAj8_Ej9F$5$l$J$$$h(B} + ;; @r{$B$&$K$7$F$$$^$9!#$7$+$7K\Ev$KAj8_Ej9F$5$l$?5-;v$rAj8_Ej9F(B} + ;; @r{$B$9$k$3$H$O5v$7$F$$$^$9!#(B} + (any "bugs-mypackage@@somewhere" "mypkg.bugs") + (any "mypackage@@somewhere" - "bugs-mypackage" "mypkg.list") + ;; @r{$B?M!9(B@dots{}} + (any "larsi@@ifi\\.uio\\.no" "people.Lars_Magne_Ingebrigtsen")) + ;; @r{$B9gCW$7$J$+$C$?%a!<%k$OA4$F$rJa$^$($k%0%k!<%W$X9T$-$^$9!#(B} + "misc.misc") +@end lisp + +$B$3$NJQ?t$O(B @dfn{$BJ,3d(B} $B$NMM<0$K$J$C$F$$$^$9!#J,3d$O(B ($B$"$k$$$O(B) $B$=$l$>$l$N(B +$BJ,3d$,B>$NJ,3d$r4^$`:F5"E*9=B$$G$9!#$3$l$O;HMQ2DG=$JJ,3d9=J8$G$9(B: + +@table @code + +@item group +$B$b$7J,3d$,J8;zNs$G$"$k$H!"$=$l$O%0%k!<%WL>$H$7$F$_$J$5$l$^$9!#IaDL$N@55,(B +$BI=8=$N9gCW$,$J$5$l$^$9!#Nc$O2<$NJ}$r8+$F2<$5$$!#(B + +@item (@var{field} @var{value} [- @var{restrict} [@dots{}] ] @var{split}) +$B$b$7J,3d$,%j%9%H$G!":G=i$NMWAG$,J8;zNs$G$"$j!"%X%C%@!<(B @var{field} ($B@55,(B +$BI=8=(B) $B$,(B @var{value} ($B$3$l$b@55,I=8=(B) $B$r4^$s$G$$$k>l9g!"%a%C%;!<%8(B +$B$r(B @var{split} $B$G;XDj$5$l$?$H$3$m$KC_@Q$7$^$9!#(B@var{restrict} ($B$^$?B>$N(B +$B@55,I=8=(B) $B$,(B @var{field} $B$N8e$G!"9gCW$7$?(B @var{value} $B$N:G8e$NA0$N$$$/$D(B +$B$+$NJ8;zNs$K9gCW$7$?$i!"(B@var{split} $B$OL5;k$5$l$^$9!#(B@var{restrict} $B$NJD(B +$BJq$N$I$l$b$,9gCW$7$J$1$l$P(B @var{split} $B$,K@(B) $B$G$"$k$H!"$=$l$>$l(B +$B$N(B @var{split} $B$r$=$N$&$A$N0l$D$,9gCW$9$k$^$Ge$N%0%k!<%W$KC_@Q$5$l$?$H$-$K(B ``$B9gCW$7$?(B'' $B$H$7(B +$B$^$9!#(B + +@item (& @var{split} @dots{}) +$BJ,3d$,%j%9%H$G!":G=i$NMWAG$,(B @code{&} $B$G$"$k$H!"%j%9%H$NA4$F(B +$B$N(B @var{split} ($BJ#?t(B) $B$rC5n$7$F$7$^$$$^$9(B)$B!#Hs>o$KCm0U$7$F;H$C$F2<$5$$!#(B + +@item (: @var{function} @var{arg1} @var{arg2} @dots{}) +$B$b$7J,3d$,%j%9%H$G!":G=i$NMWAG$,(B @code{:} $B$G$"$k$H!"FsHVL\$NMWAG(B +$B$,(B @var{args} $B$r0z?t$H$7$F4X?t$H$7$F8F$P$l$^$9!#4X?t$O(B @var{split} $B$rJV(B +$B$9$Y$-$G$9!#(B + +@cindex body split +$BNc$($P0J2<$N4X?t$O!"5-;v$N%\%G%#$K4p$E$$$?J,3d$K;H$($k$G$7$g$&(B: + +@lisp +(defun split-on-body () + (save-excursion + (save-restriction + (widen) + (goto-char (point-min)) + (when (re-search-forward "Some.*string" nil t) + "string.group")))) +@end lisp + +@var{function} $B$,Av$i$5$l$k$H$-!"%P%C%U%!$O%a%C%;!<%8$NItJ,$K69$a$i$l$^(B +$B$9!#$=$l$,>e5-$NNc$G(B @code{save-excursion} $B$H(B @code{save-restriction} $B$N(B +$B8e$G(B @code{(widen)} $B$,8F$P$l$kI,MW$,$"$kM}M3$G$9!#$5$i$K(B nnimap $B%P%C%/%((B +$B%s%I$N>l9g!"%G%#%U%)%k%H$G$O5-;v$N%\%G%#$,%@%&%s%m!<%I$5$l$J$$$3$H$KCm0U(B +$B$7$F2<$5$$!#$=$l$r$9$k$?$a$K(B +$B$O(B @code{nnimap-split-download-body} $B$r(B @code{t} $B$K@_Dj$9$kI,MW$,$"$j$^(B +$B$9(B (@pxref{Splitting in IMAP})$B!#(B + +@item (! @var{func} @var{split}) +$BJ,3d$,%j%9%H$G!":G=i$NMWAG$,(B @code{!} $B$G$"$k$H(B @var{split} $B$,$K9gCW$7$J$1$l$P$J$j$^(B +$B$;$s!#(B@var{value} $B$O4pAC%b!<%I(B (fundamental mode) $B9=J8%F!<%V%k(B (syntax +table) $B$K=>$C$F40A4$K9gCW$7$J$1$l$P$J$j$^$;$s!#@55,I=8=$G%U%#!<%k%IL>$+(B +$B8l$NItJ,$K9gCW$5$;$k$?$a$K(B @code{.*} $B$r;H$&;v$,$G$-$^$9!#8@$$49$($l$P!"(B +$BA4$F$N(B @var{value} $B$O(B @samp{\<} $B$H(B @samp{\>} $B$NBP$G0O$^$l$^$9!#(B + +@vindex nnmail-split-abbrev-alist +@var{field} $B$H(B @var{value} $B$O(B Lisp $B%7%s%\%k(B (symbol) $B$G$"$k;v$b$G$-!"$=(B +$B$N>l9g$=$l$i$O(B @code{nnmail-split-abbrev-alist} $B$G;XDj$5$l$F$$$k$h$&$KE8(B +$B3+$5$l$^$9!#$3$l$O%;%k$N(B @sc{car} $B$,%-!<$r4^$s$G$$$F!"(B@sc{cdr} $B$,4XO"IU(B +$B$1$i$l$?CM$r;}$C$F$$$k%3%s%9%;%k(B (cons cell) $B$NO"A[%j%9%H$G$9!#0J2<$N9`(B +$BL\$,!"$"$i$+$8$a(B @code{nnmail-split-abbrev-alist} $B$KDj5A$5$l$F$$$^$9(B: + +@table @code +@item from +@samp{From}$B!"(B@samp{Sender} $B$*$h$S(B @samp{Resent-From} $B$N3F%U%#!<%k%I$K9g(B +$BCW$7$^$9!#(B +@item to +@samp{To}$B!"(B@samp{Cc}$B!"(B@samp{Apparently-To}$B!"(B@samp{Resent-To} $B$*$h(B +$B$S(B @samp{Resent-Cc} $B$N3F%U%#!<%k%I$K9gCW$7$^$9!#(B +@item any +@code{from} $B$H(B @code{to} $B$rE}9g$7$?$b$N$G$9!#(B +@end table + +@vindex nnmail-split-fancy-syntax-table +@code{nnmail-split-fancy-syntax-table} $B$,$3$l$i$NA4$F$NJ,3d$,pJs$K4p$E$$$F!"(BGnus $B$KF0E*$K%0%k!<%W$r:n$i$;$?$$$N(B +$B$G$"$l$P(B ($BNc$($P!"%0%k!<%WL>$G(B @code{replace-match} $B$N$h$&$JBeMQ$r$9$k(B)$B!"(B +$B.J8;z$K$7$?$b$N$GBeBX$9$k$Y$-$+$I$&$+(B +$B$r(B @code{nnmail-split-lowercase-expanded} $B$,@)8f$7$^$9!#$3$l$r(B +$BHs(B-@code{nil} $B$K$9$k$3$H$K$h$C$F!"%"%I%l%9$KBgJ8;z$H>.J8;z$,6hJL$;$:$K;H(B +$B$o$l$F$$$k(B ($BNc$($P(B mailing-list@@domain $B$H(B Mailing-List@@Domain) $B>l9g$G(B +$B$b!"J#?t$N%0%k!<%W$,@8@.$5$l$F$7$^$&$3$H$rHr$1$k$3$H$,$G$-$^$9!#%G%#%U%)(B +$B%k%H$O(B @code{t} $B$G$9!#(B + +@vindex nnmail-split-fancy-match-partial-words +@code{nnmail-split-fancy-match-partial-words} $B$O!"FC5iJ,3d$GItJ,E*$J8l$,(B +$B9gCW$9$k$+$I$&$+$r@)8f$7$^$9!#(B + +$BDL>o(B @code{nnmail-split-fancy} $B$GM?$($i$l$k@55,I=8=$O!"0E$K8l$N6h@Z$j$r(B +$BI=$9(B @code{\<...\>} $B0u$G0O$^$l$F$$$^$9!#$3$NJQ?t$,??$G$"$k$H!"$=$l$i$O2?(B +$B$K$h$C$F$b0E$K0O$^$l$^$;$s!#(B + +@example +(any "joe" "joemail") +@end example + +$B$3$NNc$G!"DL>o(B @samp{joedavis@@foo.org} $B$+$iMh$?%a%C%;!<%8(B +$B$O(B @samp{joemail} $B$K3JG<$5$l$^$;$s!#$7$+$7!"(B +@code{nnmail-split-fancy-match-partial-words} $B$r(B @code{t} $B$K@_Dj$9$k$H9g(B +$BCW$,5/$-$^$9!#MW$9$k$K!"8l$r6h@Z$k>r7o$,:o=|$5$l!"Be$o$j$K9gCW$,$h(B +$B$j(B grep $B$i$7$/$J$k$N$G$9!#(B + +@findex nnmail-split-fancy-with-parent +$B4X?t(B @code{nnmail-split-fancy-with-parent} $B$O!"%U%)%m!<%"%C%W5-;v$r?F5-(B +$B;v$HF1$8%0%k!<%W$K?6$jJ,$1$k$?$a$K;H$$$^$9!#%a!<%k$N?6$jJ,$1$r0l@87|L?@_(B +$BDj$7$F$_$F$b40`z$K$O$G$-$J$$$3$H$,$"$j$^$9$M!#Nc$($P!">e;J$+$i8D?M08$F$N(B +$B%a!<%k$,FO$$$?$H$7$^$9!#<+J,$,7H$C$F$$$k%W%m%8%'%/%H$H$OJL$NOC$G$9!#$1$l(B +$B$I!VB>$N%a!<%k$H6hJL$G$-$k$h$&$K$3$l$3$l$3$&$$$&8@MU$rI=Bj$K=q$$$F$/$@$5(B +$B$$!W$H>e;J$K8~$+$C$F;X?^$9$k$o$1$K$O$$$-$^$;$s$+$i!"7k6I<+J,$Nl9g!"(BGnus $B$O8+$D$1(B +$B$?A45-;v$N%a%C%;!<%8(B ID $B$rJQ?t(B @code{nnmail-message-id-cache-file} $B$,;X(B +$BDj$9$k%U%!%$%k$K5-O?$7$^$9!#$3$N$H$-!"$=$l$>$l$N5-;v$,B8:_$9$k%0%k!<%W$N(B +$BL>A0$rJ;5-$7$^$9(B ($B$?$@$7%a!<%k$N>l9g$@$1!"$5$b$J$1$l$P%0%k!<%WL>$OD4$Y$^(B +$B$;$s(B)$B!#$5$F!"$$$h$$$h%a!<%k$N?6$jJ,$1$,;O$^$k$H!"4X?t(B +@code{nnmail-split-fancy-with-parent} $B$O!"BP>]$H$J$k3F5-;v$N(B References +($B$H(B In-Reply-To) $B%X%C%@!<$rD4$Y!"(B@code{nnmail-message-id-cache-file} $B$K(B +$B;XDj$5$l$F$$$k%U%!%$%k$K$=$l$i$N%a%C%;!<%8(B ID $B$,$"$k$+$I$&$+D4$Y$^$9!#?F(B +$B5-;v$,8+$D$+$k$H!"$=$N%0%k!<%WL>$,@55,I=(B +$B8=(B @code{nnmail-split-fancy-with-parent-ignore-groups} $B$K%^%C%A$7$J$1$l(B +$B$P!"$3$N4X?t$OBP1~$9$k%0%k!<%WL>$rJV$9$o$1$G$9!#$3$3$G!"JQ(B +$B?t(B @code{nnmail-message-id-cache-length} $B$NCM$r4{DjCM$h$j$b4v$i$+Bg$-$J(B +$BCM$K@_Dj$9$k$3$H$r$*4+$a$7$^$9!#$=$&$9$k$H!":#D4$Y$i$l$?%a%C%;!<%8(B ID $BC#(B +$B$O:#$7$P$i$/%-%c%C%7%e$NCf$KB8B3$G$-$^$9(B (5000 $B$K@_Dj$9$k$H%-%c%C%7%e%U%!(B +$B%$%k$NBg$-$5$O$@$$$?$$(B 300 $B%-%m%P%$%H$0$i$$$K$J$k$_$?$$$G$9(B)$B!#(B +@vindex nnmail-cache-accepted-message-ids +$B$5$i$K!"JQ?t(B @code{nnmail-cache-accepted-message-ids} $B$NCM$r(B +$BHs(B-@code{nil} $B$K@_Dj$9$l$P!"(BGnus $B$O0\F0$5$l$?5-;v$N%a%C%;!<%8(B ID $B$r$b5-(B +$BO?$9$k$N$G!"%U%)%m!<%"%C%W5-;v$O?F5-;v$N0\F0@h$HF1$8%0%k!<%W$KF~$k$h$&$K(B +$B$J$j$^$9!#(B + +$B$"$k%0%k!<%W$r%-%c%C%7%e$K5-O?$7$?$/$J$$>l9g$O!"JQ(B +$B?t(B @code{nnmail-cache-ignore-groups} $B$b;2>H$7$F2<$5$$!#Nc$($P!"30$K=P$9(B +$B$9$Y$F$N%a%C%;!<%8$,(B ``outgoing'' $B%0%k!<%W$G=q$+$l$F$$$k$J$i$P!"(B +@code{nnmail-cache-ignore-groups} $B$r$=$N%0%k!<%WL>$K%^%C%A$9$k$h$&$K@_Dj(B +$B$9$k$N$,NI$$$G$9!#$5$b$J$$$H$"$J$?$N$9$Y$F$N%a%C%;!<%8$KBP$9$kJV;v$,!":G(B +$B8e$O(B ``outgoing'' $B%0%k!<%W$KF~$C$F$7$^$&$G$7$g$&!#(B + +@node Group Mail Splitting +@subsection $B%0%k!<%W%a!<%kJ,3d(B +@cindex mail splitting +@cindex group mail splitting + +@findex gnus-group-split +$B$?!<$/$5$s$N%a!<%j%s%0%j%9%H$r9XFI$7$F$$$k$1$l$I!"J}$b$7$/$O$I$A$i$+$r@_Dj$7(B +$B$F(B @code{nnmail-split-methods} $B$r(B @code{gnus-group-split} $B$K@_Dj$9$k$@$1(B +$B$G$9!#J,3d4X?t$OA4$F$N%0%k!<%W$G$3$l$i$N%Q%i%a!<%?$rAv::$7!"$=$l$K=>$C$F(B +$BJ,3d$7$^$9!#$9$J$o$A!"%a!<%k%0%k!<%W$N%Q%i%a!<(B +$B%?(B @code{to-list} $B$+(B @code{to-address} $B$G;XDj$5$l$?%"%I%l%9$+$iEj9F$5$l(B +$B$?$b$N$+!"$=$N%"%I%l%9$XEj9F$5$l$?%a%C%;!<%8$,$=$N%0%k!<%W$KJ]B8$5$l$^$9!#(B + +$B$H$-$K$O!"%a!<%j%s%0%j%9%H$K$OJ#?t$N%"%I%l%9$,$"$j!"%a!<%kJ,3d$K$=$l$iA4(B +$B$F$rG'<1$5$;$kI,MW$,$"$k$+$b$7$l$^$;$s(B: @code{extra-aliases} $B%0%k!<%W%Q(B +$B%i%a!<%?$rDI2C$N%"%I%l%9$N%j%9%H$K@_Dj$9$k$@$1$G=*$j$G$9!#@55,I=8=$r;H$$(B +$B$?$1$l$P!"(B@code{split-regexp} $B$r@_Dj$7$F$/$@$5$$!#(B + +$B$3$l$i$NA4$F$N%0%k!<%W$N%Q%i%a!<%?$O!"(B@code{nnmail-split-fancy} $BJ,3d$r:n(B +$B@.$9$k$?$a$K;HMQ$5$l!"$=$l$O(B @var{field} $B$,(B @samp{any} $B$G!"(B +@var{value} $B$,(B @code{to-list}, @code{to-address}, +@code{extra-aliases} $B$N$9$Y$F!"(B@code{split-regexp} $B$NA4$F$N9gCW$K9gCW$9(B +$B$kC1FH$N@55,I=8=!"(B@var{split} $B$,%0%k!<%W$NL>A0$K$J$j$^$9!#(B@var{restrict} +$B$b;HMQ$G$-$^$9(B: @code{split-exclude} $B%Q%i%a!<%?$r@55,I=8=$N%j%9%H$K@_Dj(B +$B$9$k$@$1$G$9!#(B + +$B$3$l$i$NA4$F$N%Q%i%a!<%?$r;H$C$F@5$7$$J,3d$,@8@.$5$l$J$$$H$-$d!"2?$+0c$C(B +$B$?$b$N$,I,MW$J$H$-$O!"%Q%i%a!<(B +$B%?(B @code{split-spec} $B$r(B @code{nnmail-split-fancy} $BJ,3d$K@_Dj$9$k$3$H$,$G(B +$B$-$^$9!#$3$N>l9g$O!"B>$NA0$K=q$$$?A4$F$N%Q%i%a!<%?(B +$B$O(B @code{gnus-group-split} $B$KL5;k$5$l$^$9!#FC$K!"(B +@code{split-spec} $B$O(B @code{nil} $B$K@_Dj$9$k$3$H$,$G$-!"$=$N>l9g$O%0%k!<%W(B +$B$O(B @code{gnus-group-split} $B$KL5;k$5$l$^$9!#(B + +@vindex gnus-group-split-default-catch-all-group +@code{gnus-group-split} $B$O$=$l$>$l$N%0%k!<%W$K0l$D$NJ,3d$r4^$`C10l(B +$B$N(B @code{&} $BFC5iJ,3d$rDj5A$9$k$3$H$G9gCW$9$kA4$F$N%0%k!<%W$KAj8_Ej9F$r$7(B +$B$^$9!#%a%C%;!<%8$,$I$NJ,3d$K$b9gCW$7$J$1$l$P!"$I$l$+$N%0%k!<%W(B +$B$G(B @var{split-spec} $B$,(B @code{catch-all} $B$K@_Dj$5$l$F$$$J$$>l9g(B +$B$O(B @code{gnus-group-split-default-catch-all-group} $B$G;XDj$5$l$F$$$k%0%k!<(B +$B%W$KJ]B8$5$l$^$9!#(B@code{split-spec} $B$,(B @code{catch-all} $B$K@_Dj$5$l$F$$$k(B +$B%0%k!<%W$,$"$k>l9g$O!"$=$N%0%k!<%W$,A4$F$rJa3M$9$k%0%k!<%W$H$7$F;HMQ$5$l(B +$B$^$9!#$3$NJQ?t$O$7$P$7$PC1$K%0%k!<%W$r;XDj$9$k$?$a$K;H$o$l$^$9$,!"G$0U$N(B +$BJ#;($JFC5iJ,3d$r$b@_Dj$9$k(B ($B7k6I!"%0%k!<%WL>$OFC5iJ,3d$J$N$G$9(B) $B$N$G!"8D(B +$B?M$N%a!<%k%U%)%k%@!<$N$I$N%a!<%j%s%0%j%9%H$K$bEv$F$O$^$i$J$$%a!<%k$rJ,3d(B +$B$9$k$N$KJXMx$G$7$g$&!#$J$*$3$NFC5iJ,3d$O!"(B@code{|} $BJ,3d%j%9%H$N:G8e$NMW(B +$BAG(B - $B%0%k!<%W%Q%i%a!<%?$+$iCj=P$5$l$?5,B'$r;}$D(B @code{&} $BJ,3d$r4^$`(B - $B$H(B +$B$7$FDI2C$5$l$k$3$H$KCm0U$7$F$/$@$5$$!#(B + +$B$=$m$=$mNc$r=P$9$Y$-$G$7$g$&!#0J2<$N%0%k!<%W%Q%i%a!<%?$,Dj5A$5$l$F$$$k$H(B +$B$7$^$9(B: + +@example +nnml:mail.bar: +((to-address . "bar@@femail.com") + (split-regexp . ".*@@femail\\.com")) +nnml:mail.foo: +((to-list . "foo@@nowhere.gov") + (extra-aliases "foo@@localhost" "foo-redist@@home") + (split-exclude "bugs-foo" "rambling-foo") + (admin-address . "foo-request@@nowhere.gov")) +nnml:mail.others: +((split-spec . catch-all)) +@end example + +@code{nnmail-split-methods} $B$r(B @code{gnus-group-split} $B$K@_Dj$9$k$H!"(B +@code{nnmail-split-fancy} $B$,A*Br$5$l$F!"JQ(B +$B?t(B @code{nnmail-split-fancy} $B$,0J2<$N$h$&$K@_Dj$5$l$F$$$k$+$N$h$&$K?6Iq(B +$B$$$^$9(B: + +@lisp +(| (& (any "\\(bar@@femail\\.com\\|.*@@femail\\.com\\)" "mail.bar") + (any "\\(foo@@nowhere\\.gov\\|foo@@localhost\\|foo-redist@@home\\)" + - "bugs-foo" - "rambling-foo" "mail.foo")) + "mail.others") +@end lisp + +@findex gnus-group-split-fancy +$BA4$F$N%a!<%k%0%k!<%W$G%0%k!<%WJ,3d$r;HMQ$7$?$/$O$J$$$H$-$O!"(B +@code{nnmail-split-fancy} $BJ,3d$r$N%j%9%H$+@55,I=8=$G$9!#(B@var{no-crosspost} $B$OAj8_Ej9F$r;HMQ6X;_$K$k$?(B +$B$a$K;H$&$3$H$,$G$-$^$9!#$=$N>l9g!"C10l$N(B @code{|} $BJ,3d$,=PNO$5$l$^$9!#(B +@var{catch-all} $B$O(B @code{gnus-group-split-default-catch-all-group} $B$N$h(B +$B$&$K!":G8e$Nl9g!"%0%k!<%W$K(B @code{split-spec} $B$,(B @code{catch-all} $B$K@_Dj$5$l$F$$(B +$B$k$b$N$,$"$k$H!"$3$N%0%k!<%W$,(B @var{catch-all} $B0z?t$r>e=q$-$7$^$9!#(B + +@findex gnus-group-split-setup +$BIT1?$J$3$H$K!"A4$F$N%0%k%W$H%Q%i%a!<%?$rAv::$9$k$3$H$OHs>o$KCY$$$G$9!#FC(B +$B$KA4$F$N%a%C%;!<%8$KBP$7$F$J$5$l$k$3$H$r9M$($k$H!#$1$l$I$b!"@dK>$7$J$$(B +$B$G(B! $B4X?t(B @code{gnus-group-split-setup} $B$,(B @code{gnus-group-split} $B$r$h$j(B +$B$:$C$H8zN(E*$JJ}K!$G;H$&$3$H$,$G$-$^$9!#$=$l(B +$B$O(B @code{nnmail-split-methods} $B$r(B @code{nnmail-split-fancy} $B$K@_Dj$7!"(B +@code{nnmail-split-fancy} $B$r(B @code{gnus-group-split-fancy} $B$G@8@.$5$l$?(B +$BJ,3d$K@_Dj$7$^$9!#$3$&$7$F$I$s$J$KJ,3d$9$k%a%C%;!<%8$,$?$/$5$s$"$C$F$b!"(B +$B%0%k!<%W%Q%i%a!<%?$O0lEY$@$1Av::$5$l$^$9!#(B + +@findex gnus-group-split-update +$B$7$+$7!"%0%k!<%W%Q%i%a!<%?$rJQ99$9$k$H!"(B@code{nnmail-split-fancy} $B$rJN,$7$J$$>l9g$O(B ($B$=$l$O%*%W%7%g%s(B +$B$G(B @code{nil} $B$HEy(B +$B2A(B)$B!"(B@code{gnus-group-split-default-catch-all-group} $B$O$=$NCM$K@_Dj$5$l(B +$B$^$9!#(B + +@vindex gnus-group-split-updated-hook +@code{nnmail-split-fancy} $B$,(B @code{gnus-group-split-update} $B$G@_Dj$5$l$?(B +$B8e$GJQ99$9$kI,MW$,$"$k$H$-$N$?$a$K!"$3$N4X?t(B +$B$O(B @code{gnus-group-split-update-hook} $B$r=*N;$9$kD>A0$KA0$rM?$($^$9(B (@pxref{Foreign +Groups})$B!#(B + +@item +@kbd{SPACE} $B$rBG$C$F!"?7$7$/:n$i$l$?%0%k!<%W$KF~$j$^$9!#(B + +@item +@kbd{M P b} $B$rBG$C$F!"%0%k!<%W%P%C%U%!$NA4$F$N5-;v$Kc$b$J$/J*;v$,>efIW$J$h$&$G$"$l$P!"(Bmbox $B%U%!%$%k$r>C$9;v(B +$B$r9M$($k$+$b$7$l$^$;$s$,!";d$OA4$F$N%a!<%k$,$"$k$Y$-$H$3$m$KG<$^$C$F$$$k(B +$B$N$r40A4$K3NG'$9$k$^$G$O!"$=$&$O$7$^$;$s!#(B + +@node Expiring Mail +@subsection $B%a!<%k$N4|8B@Z$l>C5n(B +@cindex article expiry + +$BEAE}E*$J%a!<%k%j!<%@!<$O!"2?$+!"4{FI$N0u$rIU$1$k$H5-;v$r:o=|$9$k798~$,$"(B +$B$j$^$9!#(BGnus $B$O%a!<%k$rFI$`;v$KBP$7$F!"4pK\E*$KA4$/0c$C$?J}K!$rC$98"NO$,$"(B +$B$k$H$O9M$($^$;$s!#%a!<%k%0%k!<%W$KF~$C$F!"5-;v$K(B ``$B4{FI(B'' $B$N0u$rIU$1$?$j!"(B +$BB>$NN.57$G@Z$C$?$j$7$F$b!"%a!<%k5-;v$O$^$@%7%9%F%`$KB8:_$7$F$$$^$9!#7+$j(B +$BJV$7$^$9(B: Gnus $B$O$"$J$?$N8E$$!"4{FI%a!<%k$r>C5n$7$^$;$s!#$b$A$m$s!"$"$J(B +$B$?$,$=$&$7$m$HMj$^$J$$8B$j$NOC$G$9$,!#(B + +Gnus $B$KK>$^$7$/$J$$%a!<%k$r:o=|$5$;$k$?$a$K$O!"5-;v$r(B @dfn{$B4|8B@Z$l>C5n(B +$B2DG=(B} (expirable) $B$H$7$F0u$rIU$1$J$1$l$P$J$j$^$;$s!#(B($B%G%#%U%)%k%H$N%-!<(B +$B3d$jEv$F$G$O!"(B@kbd{E} $B$r%?%$%W$7$J$1$l$P$J$i$J$$$3$H$r0UL#$7$^$9!#(B) $B$7$+(B +$B$7$J$,$i!"$3$l$O5-;v$,B(:B$K>C$(5n$k$H$$$&;v$G$O$"$j$^$;$s!#0lHLE*$K!"%a!<(B +$B%k5-;v$Ol9g$K%7%9%F%`$K$h$C$F:o=|$5$l$^$9(B 1) $B4|8B@Z$l>C5n2DG=(B +$B$N0u$rIU$1$i$l$k(B 2) $B0l=54V0J>e7P$C$?5-;v$G$"$k!#$b$75-;v$r4|8B@Z$l>C5n2D(B +$BG=$K$7$J$1$l$P!"$=$l$OCO9v$,E`$j$D$/$^$G%7%9%F%`$K;D$j$D$E$1$^$9!#$3$l$O(B +$B$b$&0lEY6/D4IU$-$G7+$jJV$5$l$k$KB-$k$b$N$G$9(B: ``$B$b$7(B'' $B$"$J$?$,5-;v(B +$B$r(B ``$B4|8B@Z$l>C5n2DG=(B'' $B$G$"$k$H(B ``$B$7$J$$(B'' $B$J$i!"(BGnus $B$O(B ``$B7h$7$F(B'' $B$=(B +$B$l$i$N(B ``$B5-;v(B'' $B$r>C5n$7$^$;$s!#(B + +$BC5n2DG=$N0u$rIU$1$J$1$l$P$J$i$J$$$o$1$G$O$"$j$^$;(B +$B$s!#(BGnus $B$O(B ``auto-expire'' $B$*$h$S(B ``total-expire'' $B$H8F$P$l$kFs$D$N5!G=(B +$B$rDs6!$7$F!"$"$J$?$NC5n2DG=$G$"$k$H(B Gnus $B$,2rC5n2DG=$G$"$k$H2r(B +$B$l$N%j%9%H$r$=$l<+?H$N%0%k!<(B +$B%W$KJ,3d$7!"$=$l$i$N%0%k!<%W$KBP$7$F(B auto-expire $B$^$?$O(B total-expire $B$r(B +$BM-8z$K$7$^$9!#(B(@xref{Splitting Mail}, $B$=$l$>$l$N%j%9%H$N$=$l<+?H$N%0%k!<(B +$B%W$X$NJ,3d$K$D$$$F$N$5$i$J$k>pJs!#(B) + +Auto-expire $B$^$?$O(B total-expire $B$N$I$A$i$,NI$$$G$9$+(B? $B$=$l$OEz$($K$/$$$G(B +$B$9!#35$7$F8@$($P!"$?$V$s(B auto-expire $B$,B.$$$G$7$g$&!#(Bauto-expire $B$NJL$N(B +$BMxE@$O$h$jB?$/$N%^!<%/$r;H$($k(B - $B:F$SFI$`$3$H$K$J$C$F$$$k(B (be supposed +to stick around $B$N0ULu(B) $B5-;v$K$D$$$F$O!":#$^$G$I$*$j2D;k(B (tick)$B!"J](B +$BN1(B (dormant) $B$^$?$O4{FI(B (read) $B$NCf$+$iA*$V$3$H$,$G$-$k(B - $B$H$$$&$3$H$G$9!#(B +$B$7$+$7(B total-expire $B$G$O(B dormant $B$H(B ticked $B$+$i$7$+A*$Y$^$;$s!#(B +total-expire $B$NMxE@$O!"E,1~%9%3%"IU$1(B (@pxref{Adaptive Scoring}) $B$GNI9%(B +$B$KF/$/$3$H$G$9!#(BAuto-expire $B$ODL>o$N%9%3%"IU$1$G$OF0:n$7$^$9$,!"E,1~%9%3(B +$B%"IU$1$G$O$@$a$G$9!#(B + +@vindex gnus-auto-expirable-newsgroups +$B@55,I=8=(B @code{gnus-auto-expirable-newsgroups} $B$K9gCW$9$k%0%k!<%W$OA4$F(B +$B$N4{FI5-;v$K<+F0E*$K4|8B@Z$l>C5n2DG=$N0u$,IU$1$i$l$^$9!#A4$F$N4|8B@Z$l>C(B +$B5n2DG=$N0u$NIU$$$?5-;v$O35N,%P%C%U%!$N:G=i$N7e$K(B @samp{E} $B$,I=<($5$l$^$9!#(B + +$B%G%#%U%)%k%H$G$O<+F04|8B@Z$l>C5n2DG=$r;HMQ$9$k$H!"(BGnus $B$O$"$J$?$,FI$s$@(B +$BA4$F$N5-;v$r!"$=$l$,4{FI$G$"$C$?$+L$FI$G$"$C$?$+$K4X$o$i$:!"4|8B@Z$l>C5n(B +$B2DG=$H$7$F0u$rIU$1$^$9!#4{FI$N0u$NIU$$$?5-;v$,<+F0E*$K4|8B@Z$l>C5n2DG=$H(B +$B$7$F0uIU$1$i$l$k$N$rHr$1$k$?$a$K!"0J2<$N$h$&$J$b$N(B +$B$r(B @file{~/.gnus.el} $B%U%!%$%k$K=q$/;v$,$G$-$^$9(B: + +@vindex gnus-mark-article-hook +@lisp +(remove-hook 'gnus-mark-article-hook + 'gnus-summary-mark-read-and-unread-as-read) +(add-hook 'gnus-mark-article-hook 'gnus-summary-mark-unread-as-read) +@end lisp + +$B<+F04|8B@Z$l>C5n2DG=%0%k!<%W$r:n$k;v$O!"A4$F$N4{FI5-;v$,4|8B@Z$l>C5n$5$l(B +$B$k;v$G$O$J$$;v$K5$$rIU$1$F$/$@$5$$(B---$B4|8B@Z$l>C5n2DG=$H$7$F0u$NIU$$$?5-(B +$B;v$@$1$,4|8B@Z$l>C5n$5$l$^$9!#L?Na(B @kbd{d}$B$,<+F0E*$K5-;v$r4|8B@Z$l>C5n2D(B +$BG=$K$9$k$N$G$OL5$$$H$$$&;v$K$b5$$rIU$1$F$/$@$5$$(B---$BH><+F0$N!"<+F04|8B@Z(B +$B$l>C5n2DG=%0%k!<%W$G5-;v$r4{FI$K0uIU$1$k$3$H$@$1$,5-;v$r4|8B@Z$l>C5n2DG=(B +$B$K$7$^$9!#(B + +@lisp +(setq gnus-auto-expirable-newsgroups + "mail.nosense-list\\|mail.nice-list") +@end lisp + +$B<+F04|8B@Z$l>C5n$r$NJ}K!$O!"%0%k!<%W$N%0%k!<%W%Q%i%a!<%?$H$7$F!"(B +$BMWAG(B @code{auto-expirable} $B$r;}$D;v$G$9!#(B + +$B$b$7E,1~%9%3%"IU$1(B (@pxref{Adaptive Scoring}) $B$H<+F04|8B@Z$l>C5n$r;HMQ$7(B +$B$F$$$k$J$i!"LdBj$,5/$3$k$G$7$g$&!#<+F04|8B@Z$l>C5n$HE,1~%9%3%"IU$1$O$"$^(B +$B$jNI$/Aj8_:nMQ$7$^$;$s!#(B + +@vindex nnmail-expiry-wait +$BJQ?t(B @code{nnmail-expiry-wait} $B$O4|8B@Z$l>C5n2DG=5-;v$,$I$l$/$i$$$N4|4V(B +$B@8B8$7$F$$$k$+$N%G%#%U%)%k%H$N;~4V@_Dj$rDs6!$7$^$9!#(BGnus $B$O%a%C%;!<%8$,(B +$BAw$i$l$?$H$-$G$O$J$/!"$=$l$,(B @emph{$BE~Ce(B} $B$7$F$+$i$NF|$r7W;;$7$^$9!#%G%#(B +$B%U%)%k%H$O(B 7 $BF|4V$G$9!#(B + +Gnus $B$O5-;v$,$I$N%0%k!<%W$KB0$7$F$$$k$+$K4p$E$$$F!"$=$l$,$I$N$/$i$$@8B8(B +$B$9$k$+$r@.8y$K@_Dj$9$k4X?t$bDs6!$7$F$$$^$9!#%0%k!<(B +$B%W(B @samp{mail.private} $B$O4|8B$r(B 1$B%v7n$K!"%0%k!<%W(B @samp{mail.junk} $B$G$O(B +$B4|8B$r(B 1 $BF|$K!"$=$NB>$N$b$N$K$O4|8B$r(B 6 $BF|4V$K$9$k$K$O(B: + +@vindex nnmail-expiry-wait-function +@lisp +(setq nnmail-expiry-wait-function + (lambda (group) + (cond ((string= group "mail.private") + 31) + ((string= group "mail.junk") + 1) + ((string= group "important") + 'never) + (t + 6)))) +@end lisp + +$B$3$N4X?t$KM?$($i$l$k%0%k!<%WL>$O(B ``$BAu>~L5$7(B'' $B$N%0%k!<%WL>$G$9(B--- +@samp{nnml:} $B$d$=$NB>$N;w$?$h$&$J$b$N$OIU$-$^$;$s!#(B + +$BJQ?t(B @code{nnmail-expiry-wait} $B$H4X(B +$B?t(B @code{nnmail-expiry-wait-function} $B$O?t;z(B ($B@0?t$G$"$kI,MW$O$"$j$^$;(B +$B$s(B) $B$+%7%s%\%k(B @code{immediate} $B$+(B @code{never} $B$N$I$A$i$+$G$"$k;v$,$G$-(B +$B$^$9!#(B + +$B4|8B@Z$l4|4V$rA*BrE*$KJQ99$9$k$?$a$K%0%k!<%W%Q%i%a!<(B +$B%?(B @code{expiry-wait} $B$r;H$&;v$b$G$-$^$9(B (@pxref{Group Parameters})$B!#(B + +@vindex nnmail-expiry-target +$B5-;v$N4|8B@Z$l>C5n$NIaDL$NF0:n$O$=$l$i$r>C5n$9$k$3$H$G$9!#$7$+$7!">l9g$K(B +$B$h$C$F$O$=$l$i$r>C5n$9$k$h$j$bJL$N%0%k!<%W$K0\F0$7$?J}$,M-0U5A$+$b$7$l$^(B +$B$;$s!#JQ?t(B @code{nnmail-expiry-target} ($B$H%0%k!<%W%Q%i%a!<(B +$B%?(B @code{expiry-target}) $B$O$3$l$r@)8f$7$^$9!#$3$NJQ?t$NCM$O$9$Y$F$N%0%k!<(B +$B%W$KBP$9$k%G%#%U%)%k%H$K$J$j$^$9$,!"FCDj$N%0%k!<%W$4$H$K%0%k!<%W%Q%i%a!<(B +$B%?$r;H$C$F;XDj$9$l$P>e=q$-$9$k$3$H$,$G$-$^$9!#%G%#%U%)%k%H$NCM(B +$B$O(B @code{delete} $B$G$9$,!"J8;zNs(B ($B5-;v$r0\F0$9$k@h$N%0%k!<%WL>(B) $B$^$?$O0\(B +$BF0@h$N%0%k!<%WL>$+(B @code{delete} $B$rJV$94X?t(B ($B5-;v$KHO0O$r69$a$?%P%C%U%!(B +$B$G!"$=$N5-;v$,B8:_$7$F$$$k%0%k!<%WL>$,0z?t$H$7$FM?$($i$l$^$9(B) $B$K$9$k$3$H(B +$B$,$G$-$^$9!#(B + +$B%0%k!<%WL>$r;XDj$9$k>l9g$NNc(B: +@lisp +(setq nnmail-expiry-target "nnml:expired") +@end lisp + +@findex nnmail-fancy-expiry-target +@vindex nnmail-fancy-expiry-targets +Gnus $B$K$OJQ?t(B @code{nnmail-fancy-expiry-targets} $B$K=>$C$F%a!<%k$r4|8B@Z(B +$B$l>C5n$9$k$?$a$N4X?t(B @code{nnmail-fancy-expiry-target} $B$,$"$j$^$9!#$3$l(B +$B$ONc$G$9(B: + +@lisp + (setq nnmail-expiry-target 'nnmail-fancy-expiry-target + nnmail-fancy-expiry-targets + '((to-from "boss" "nnfolder:Work") + ("subject" "IMPORTANT" "nnfolder:IMPORTANT.%Y.%b") + ("from" ".*" "nnfolder:Archive-%Y"))) +@end lisp + +$B$3$N@_Dj$K$h$C$F!"BjL>$K(B @code{IMPORTANT} $B$r;}$A!"(B +@code{YYYY} $BG/(B @code{MMM} $B7n$KH/?.$5$l$?$$$+$J$k%a!<%k$b!"%0%k!<(B +$B%W(B @code{nnfolder:IMPORTANT.YYYY.MMM} $B$K4|8B@Z$l>C5n(B ($BLuCm(B: $BC5n$5$l$^$9!#$=$l0J30$N$9$Y$F$N(B +$B%a!<%k$O(B @code{nnfolder:Archive-YYYY} $B$K4|8B@Z$l>C5n$5$l$^$9!#(B + +@vindex nnmail-keep-last-article +@code{nnmail-keep-last-article} $B$,(B @code{nil} $B$G$J$$$H!"(BGnus $B$O%a!<%k%K%e!<(B +$B%9%0%k!<%W$N:G8e$N5-;v$r7h$7$F4|8B@Z$l>C5n$7$^$;$s!#$3$l$O(B procmail $B$NMx(B +$BMQC5n2DG=$G$J$$5-;v$r4|8B@Z$l(B +$B>C5n$9$k;v$O$J$$!"$H$$$&$N$O13$G$9!#(B@code{total-expire} $B$r%0%k!<%W%Q%i%a!<(B +$B%?$KF~$l$k$H!"5-;v$O4|8B@Z$l>C5n$N0u$,IU$-$^$;$s$,!"A4$F$N5-;v$O4|8B@Z$l(B +$B>C5n2aDx$KF~$l$i$l$^$9!#Hs>o$KCm0U$7$F;H$C$F$/$@$5$$!#$5$i$K$b$C$H4m81$J(B +$B$b$N$OJQ?t(B @code{gnus-total-expirable-newsgroups} $B$G$9!#$3$N@55,I=8=$K9g(B +$BCW$9$kA4$F$N%0%k!<%W$OA4$F$N4{FI5-;v$,4|8B@Z$l>C5n2DG=$N2aDx$KFM$C9~$^$l(B +$B$^$9!#$3$l$O!"Ev$N%0%k!<%W$N(B @emph{$BA4$F(B} $B$N8E$$%a!<%k5-;v$O>/$78e$G:o=|(B +$B$5$l$k$H$$$&;v$G$9!#Hs>o$KCm0U$7$F;H$C$F!"$"$J$?$,;HMQ$7$?@55,I=8=$,4V0c$C(B +$B$?%0%k!<%W$K9gCW$7$F!"$"$J$?$NA4$F$N=EMW$J%a!<%k$,>C$($F$7$^$C$?$H8@$C$F!"(B +$B;d$N$H$3$m$K5c$-IU$$$FMh$J$$$G$/$@$5$$!#(B@emph{$BCK(B}$B$K$J$j$J$5$$(B! $B$b$7$/$O!"(B +@emph{$B=w(B} $B$K$J$j$J$5$$(B! $B$"$J$?$,5$;}$A$h$$$H46$8$kA4$F$N$b$N$H(B! $B$G$9$+$i(B +$B$=$3$K(B! + +$B$?$$$F$$$N?M$O$[$H$s$I$N%a!<%k%0%k!<%W$r(B total-expirable ($BA4BN4|8B@Z$l>C(B +$B5n2DG=(B) $B$K$7$^$9$,!#(B + +@vindex gnus-inhibit-user-auto-expire +@code{gnus-inhibit-user-auto-expire} $B$,(B @code{nil} $B$G$J$1$l$P!"%0%k!<%W(B +$B$,<+F0;~8B>C5n$,;HMQ$5$l$k$h$&$K$J$C$F$$$F$b!"MxMQC5n2DG=$N0u$rIU$1$^$;$s!#(B + +@node Washing Mail +@subsection $B%a!<%k@vBu(B +@cindex mail washing +@cindex list server brain damage +@cindex incoming mail treatment + +$B%a%$%i!<(B (mailer) $B$d%j%9%H%5!<%P!<(B (list server) $B$OK\Ev$KK\Ev$KGO9b$$$G$9!#(B``$B$o$!!"(BRFC822 $B$O2f!9$N%5!<%P!<$rDL$C$F$$$/(B +$B%a%C%;!<%8$NA4$F$N9T$N:G8e$K(B @code{wE aRe ElIte!!!!!1!!} $B$r2C$($k;v$rL@(B +$B<(E*$K6X;_$O$7$F$$$J$$$>!#$5$!!"$d$C$F$_$h$&(B!!!!1'' $B$($'!"$=$N$H$*$j$G$9(B +$B$,!"(BRFC822 $B$OG=NO$NDc$$?M$K$h$C$FFI$^$l$k$h$&$K$O=q$+$l$F$$$^$;$s!#L@Gr(B +$B$J;v$O$=$3$G$O5DO@$5$l$F$$$^$;$s!#$G$9$+$i!#$=$&$$$&$3$H$G$9!#(B + +$BLdBjE@(B: $B%I%$%DHG(B Microsoft Exchange $B$OJVEz$NI=Bj$K(B @samp{Re: } $B$NBe$o$j(B +$B$K(B @samp{AW: } $B$rIU$12C$($^$9!#;d$O$3$l$KF0MI$7$FO5Gb$7$F$$$k$U$j$r$9$k(B +$B$3$H$b$G$-$^$7$?$,!"$=$&$9$k5$NO$,$"$j$^$;$s$G$7$?!#$=$l$O>P$&$Y$-;v$G$9!#(B + +Gnus $B$O5-;v$rI=<($9$k$H$-$K$=$l$r@vBu$9$k$?$a$K2aEY$N4X?t$rDs6!$7$F$$$^(B +$B$9$,!"%a!<%k$r%G%#%9%/$KJ]B8$9$kA0$KA*JL$r$9$k$3$H$,$G$-$?J}$,NI$$$G$7$g(B +$B$&!#$=$NL\E*$N$?$a$K!";0$D$N%U%C%/$H$=$N%U%C%/$KF~$l$k;v$N$G$-$k?'!9$J4X(B +$B?t$,$"$j$^$9!#(B + +@table @code +@item nnmail-prepare-incoming-hook +@vindex nnmail-prepare-incoming-hook +$B$3$N%U%C%/$O%a!<%k$K2?$+$r$9$kA0$K8F$P$l!"4pK\E*$J!"%a!<%k$rA]$$$F$-$l$$(B +$B$K$9$k=j:n$N$?$a$K$"$j$^$9!#$=$l$OA4$F$N?7$7$$!"F~$C$F$-$?%a!<%k$r4^$s$G(B +$B$$$k%P%C%U%!$G8F$P$l$^$9!#;H$&;v$N$G$-$k4X?t$O(B: + +@table @code +@item nnheader-ms-strip-cr +@findex nnheader-ms-strip-cr +$B$=$l$>$l$N9T$+$i!":G8e$K$"$k%-%c%j%C%8%j%?!<%s(B (carriage return) $B$re$GF0:n$7$F$$$k(B Emacs $B$N%G%#%U%)%k%H$G$9!#(B +@end table + +@item nnmail-prepare-incoming-header-hook +@vindex nnmail-prepare-incoming-header-hook +$B$3$N%U%C%/$O$=$l$>$l$N%X%C%@!<$KHO0O$r69$a$i$l$F(B (narrowed) $B8F$P$l$^$9!#(B +$B%X%C%@!<$r$-$l$$$K$9$k$H$-$K;H$&;v$,$G$-$^$9!#;H$&;v$N$G$-$k4X?t$O(B: + +@table @code +@item nnmail-remove-leading-whitespace +@findex nnmail-remove-leading-whitespace +$B%X%C%@!<$K$=$l$,NI$/8+$($k$h$&$K(B ``$BM-MQ$J(B'' $B%j%9%H%5!<%P!<$,A0$NJ}$KIU$1(B +$B2C$($?6uGr$rL5$/$7$^$9!#$"$!$!!#(B + +($B$3$N4X?t$O$9$Y$F$N%a%C%;!<%8$N%\%G%#Cf$K$"$k%X%C%@!<(B ($B%\%G%#Cf$N%a%C%;!<(B +$B%8$,;}$C$F$$$k%X%C%@!<9T$N$h$&$J$b$N(B) $B$KBP$7$F$bF0:n$9$k$N$G!";HMQ$K:]$7(B +$B$F$O@x:_E*$J4m81$rUT$s$G$$$^$9!#$7$?$,$C$F%P%0$r=$@5$9$k$h$j$O!"J8=q$GFC(B +$BD'$r<($9$N$,!"$b$A$m$s@5$7$$2r7h$NF;$G$9!#(B) + +@item nnmail-remove-list-identifiers +@findex nnmail-remove-list-identifiers +$B$$$/$D$+$N%j%9%H%5!<%P!<$OF10l<1JL;R$rIU$12C$($^$9(B---$BNc$($P!"(B +@samp{(idm)}---$B$rA4$F$N(B @code{Subject} $B%X%C%@!<$N:G=i$KIU$1$^$9!#$=$l$O!"(B +$B@P4o;~Be$N%a!<%k%X%C%@!<$r;H$C$F$$$k?M$K$ONI$$;v$@$H;W$$$^$9!#$3$N4X?t$O(B +$B@55,I=8=(B @code{nnmail-list-identifiers} $B$K9gCW$9$kJ8;zNs$r$l$N%a%C%;!<%8$KHO0O$r69$a$i$l$F8F$P$l$^$9!#;H$&;v$N$G(B +$B$-$k4X?t$O(B: + +@table @code +@item article-de-quoted-unreadable +@findex article-de-quoted-unreadable +Quoted Readable $BId9f2=$rI|9f2=$7$^$9!#(B +@end table +@end table + +@node Duplicates +@subsection $B=EJ#(B + +@vindex nnmail-treat-duplicates +@vindex nnmail-message-id-cache-length +@vindex nnmail-message-id-cache-file +@cindex duplicate mails +$B$$$/$D$+$N%a!<%j%s%0%j%9%H$N%a%s%P!<$J$i!";~!9F1$8%a!<%k$rFs$DC5n$7$^$;$s!#$=$NBe$o$j$K!"%a!<%k$N@hF,$K$3$l$O0c$C$?%a%C%;!<%8$N=E(B +$BJ#$G$"$k$H$$$&7Y9p$rA^F~$7$^$9!#(B + +$B$3$NJQ?t$O4X?t$G$"$k;v$b$G$-$^$9!#$=$N>l9g$O!"4X?t(B +$B$O(B @code{Message-ID} $B$r0z?t$H$7$F!"Ev$N%a%C%;!<%8$KHO0O$r69$a$i$l$?%P%C(B +$B%U%!$+$i8F$P$l$^$9!#$3$N4X?t$O(B @code{nil}, @code{warn}, @code{delete} $B$N(B +$B$I$l$+$rJV$5$J$1$l$P$J$j$^$;$s!#(B + +$BJQ?t$r(B @code{nil} $B$K@_Dj$9$k;v$K$h$C$F!"$3$N5!G=$r40A4$K;H$o$J$$$h$&$K$9(B +$B$k;v$,$G$-$^$9!#(B + +$B$b$7A4$F$N=EJ#%a!<%k$rFCJL$J(B @dfn{duplicate} $B%0%k!<%W$KF~$l$?$$$N$G$"$l(B +$B$P!"IaDL$N%a!<%kJ,3dJ}K!$r;H$C$F$=$l$r$9$k$3$H$,$G$-$^$9(B: + +@lisp +(setq nnmail-split-fancy + '(| ;; @r{$B=EJ#%a%C%;!<%8$OJ,N%$5$l$?%0%k!<%W$X9T$-$^$9!#(B} + ("gnus-warning" "duplicat\\(e\\|ion\\) of message" "duplicate") + ;; @r{$B%G!<%b%s$d%]%9%H%^%9%?!<$d;w$?$h$&$J$b$N$+$i$N(B} + ;; @r{$B%a%C%;!<%8$OB>$N$H$3$m$X!#(B} + (any mail "mail.misc") + ;; @r{$BB>$NK!B'!#(B} + [ ... ] )) +@end lisp + +$B$b$7$/$O$NK!B'!#(B} + [...])) +@end lisp + +$B$9$P$i$7$$5!G=$,$"$j$^$9(B: $B$b$7Dj$9$k$H$$$&$&$k$5$$JJ$,$"$j$^$9!#$3$l$O$b$C$H$b$G$J(B +$B$$;v$G$O$J$$$+$b$7$l$^$;$s$,!"$"$J$?$NK>$`;v$G$O$J$$$+$b$7$l$^$;$s!#(B + +$B$b$7(B @code{mail-sources} $B$H(B @code{nnmail-spool-file} $B$r(B @code{nil} $B$K@_(B +$BDj$9$k$H!"$I$N%P%C%/%(%s%I$bF~$C$F$/$k%a!<%k$rFI$b$&$H;n$_$k;v$O$J$/!"K>(B +$B$`;v$No$KK~B-$7$F$$$F!"8E(B +$B$$(B Rmail $B%U%!%$%k$,(B @code{nnbabyl} $B$G1#$5$l$F$$$k$N$r$5$C$H8+$?$$$@$1$J(B +$B$i!"$3$l$OM>J,$G$7$g$&!#$9$Y$F$N%P%C%/%(%s%I$O(B $B%P%C%/%(%s%I(B- +@code{get-new-mail} $B$H$$$&JQ?t$r;}$C$F$$$^$9!#$b$7(B @code{nnbabyl} $B$N%a!<(B +$B%kFI$_9~$_$r;HMQIT2D$K$7$?$$$N$G$"$l$P!"%0%k!<%W$N;ve$N%5!<%P!<(B +$B$r(B @code{nnbabyl-get-new-mail} $B$r(B @code{nil} $B$K@_Dj$9$k$h$&$KJT=8$7$^$9!#(B + +$BA4$F$N%a!<%k%P%C%/%(%s%I$OF~$C$F$/$k%a!<%k$rFI$_9~$`$H$-$K!"J]B8$5$l$k$Y(B +$B$-5-;v$KHO0O$r69$a$F(B @code{nn}*@code{-prepare-save-mail-hook} $B$r8F$S$^$9!#(B + +@node Choosing a Mail Back End +@subsection $B%a!<%k%P%C%/%(%s%I$rA*$V(B + +Gnus $B$O%a!<%k%0%k!<%W$rF0:n$9$k$h$&$K$9$k$H%a!<%k%9%W!<%k$rFI$_9~$_$^$9!#(B +$B%a!<%k%U%!%$%k$O$^$:$"$J$?$N%[!<%`%G%#%l%/%H%j!<$KJ#$l$N%0%k!<%W$KBP$7$F0l$D$N%U%!%$%k$r;}$D(B +* Comparing Mail Back Ends:: $BF@<:$N?<$$F6;!(B +@end menu + +@node Unix Mail Box +@subsubsection Unix $B%a!<%k%\%C%/%9(B +@cindex nnmbox +@cindex unix mail box + +@vindex nnmbox-active-file +@vindex nnmbox-mbox-file +@dfn{nnmbox} $B%P%C%/%(%s%I$O%a!<%k$rC_B"$9$k$?$a$KI8=`$N(B Un*x mbox $B%U%!%$(B +$B%k$rMQ$$$^$9!#(B@code{nnmbox} $B$O$=$l$>$l$N%a!<%k5-;v$K$=$l$,$I$N%0%k!<%W$K(B +$BB0$7$F$$$k$+$r<($9DI2C$N%X%C%@!<$r2C$($^$9!#(B + +$B;ve$N%5!<%P!<$N@_Dj(B: + +@table @code +@item nnmbox-mbox-file +@vindex nnmbox-mbox-file +$BMxMQA0!#4{DjCM(B +$B$O(B @file{~/mbox} $B$G$9!#(B + +@item nnmbox-activate-file +@vindex nnmbox-active-file +$B%a!<%k%\%C%/%9$N%"%/%F%#%V%U%!%$%k$NL>A0!#4{DjCM(B +$B$O(B @file{~/.mbox-active} $B$G$9!#(B + +@item nnmbox-get-new-mail +@vindex nnmbox-get-new-mail +@code{nil} $B$G$J$1$l$P!"(B@code{nnmbox} $B$OF~$C$FMh$?%a!<%k$rFI$_9~$s$G%0%k!<(B +$B%W$KJ,3d$7$^$9!#4{DjCM$O(B @code{t} $B$G$9!#(B +@end table + +@node Rmail Babyl +@subsubsection Rmail Babyl +@cindex nnbabyl +@cindex Rmail mbox + +@vindex nnbabyl-active-file +@vindex nnbabyl-mbox-file +@dfn{nnbabyl} $B%P%C%/%(%s%I$O%a!<%k$rC_B"$9$k$?$a$K(B Babyl $B%a!<%k%\%C%/(B +$B%9(B ($BJLL>(B @dfn{Rmail mbox}) $B$r;H$$$^$9!#(B@code{nnbabyl} $B$O$=$l$>$l$N5-;v$K(B +$B$=$l$,$I$N%0%k!<%W$KB0$7$F$$$k$+$r<($9DI2C$N%X%C%@!<$r2C$($^$9!#(B + +$B;ve$N%5!<%P!<$N@_Dj(B: + +@table @code +@item nnbabyl-mbox-file +@vindex nnbabyl-mbox-file +Rmail mbox $B%U%!%$%k$NL>A0!#4{DjCM$O(B @file{~/RMAIL} $B$G$9!#(B + +@item nnbabyl-active-file +@vindex nnbabyl-active-file +rmail box $B$N$?$a$N%"%/%F%#%V%U%!%$%k$NL>A0!#4{DjCM(B +$B$O(B @file{~/.rmail-active} $B$G$9!#(B + +@item nnbabyl-get-new-mail +@vindex nnbabyl-get-new-mail +@code{nil} $B$G$J$1$l$P!"(B@code{nnbabyl} $B$OF~$C$F$/$k%a!<%k$rFI$_9~$_$^$9!#(B +$B4{DjCM$O(B @code{t} $B$G$9!#(B +@end table + +@node Mail Spool +@subsubsection $B%a!<%k%9%W!<%k(B +@cindex nnml +@cindex mail @acronym{NOV} spool + +@dfn{nnml} $B%9%W!<%k%a!<%kMM<0$OB>$NCN$i$l$?MM<0$H$O8_49@-$,$"$j$^$;$s!#(B +$B$=$l$O>/$7Cm0U$7$F;H$o$l$k$Y$-$G$9!#(B + +@vindex nnml-directory +$B$b$7$3$N%P%C%/%(%s%I$r;H$&$H!"(BGnus $B$OF~$C$F$/$k%a!<%k$r!"$=$l$>$l$N%a!<(B +$B%k$r(B 1 $B%U%!%$%k$H$7$F%U%!%$%k$KJ,3d$7!"5-;v$rJQ(B +$B?t(B @code{nnml-directory} $B$G;XDj$5$l$?%G%#%l%/%H%j!<$N2<$NBP1~$9$k%G%#%l(B +$B%/%H%j!<$KF~$l$^$9!#%G%#%U%)%k%H$NCM$O(B @file{~/Mail/} $B$G$9!#(B + +$BA0$b$C$F%G%#%l%/%H%j!<$r:n$C$F$*$/I,MW$O$"$j$^$;$s!#$=$l$NLLE]$O(B Gnus $B$,(B +$B8+$F$/$l$^$9!#(B + +$B$b$7$"$J$?$N%"%+%&%s%H$KC_@Q$G$-$k%U%!%$%k$N?t$K87L)$J@)8B$,$"$k$J$i!"$3(B +$B$N%P%C%/%(%s%I$r;H$&$Y$-$G$O$"$j$^$;$s!#$=$l$>$l$N%a!<%k$O$=$l<+?H$N%U%!(B +$B%$%k$rF@$^$9$N$G!"?t=54V$G$?$/$5$s$N(B i$B%N!<%I$r@jM-$9$k2DG=@-$O==J,$K$"$j(B +$B$^$9!#JL$K$3$l$,LdBj$G$J$/!"?F@Z$J%7%9%F%`4IM}uBV$G(B Gnus $B$KLa$9(B ($BK\Mh$N(B @code{nnml} $B%5!<(B +$B%P!<$K$h$C$FDI2C$9$k(B) $B$3$H$,$G$-$kFC$l$N(B @code{nnml} $B%0%k!<%W$N%G%#%l%/%H%jFb$N!"DL(B +$B>o(B @file{.marks} $B%U%!%$%k(B (@code{nnml-marks-file-name} $B$r;2>H(B) $B$K3JG<$5(B +$B$l$^$9!#$^$?!"8D!9$N(B @code{nnml} $B%0%k!<%W$K$D$$$F$b%P%C%/%"%C%W$9$k$3$H(B +$B$,2DG=$G!"(B($B%P%C%/%"%C%W$r(B nnml $B%G%#%l%/%$%H%j$KLa$7$?8e$G(B) @kbd{G m} $B%-!<(B +$B$r;H$C$F$=$N%0%k!<%W$r85$KLa$7$^$9!#(B + +$B$b$72?$i$+$NM}M3$K$h$C$F(B @file{.marks} $B%U%!%$%k$,$*$+$7$/$J$C$F$$$k$H;W$C(B +$B$?$H$-$O!"C1$K$=$l$iA4It$r>C$7$F$7$^$&$3$H$,$G$-$^$9!#(BGnus $B$Oe$N%5!<%P!<$N@_Dj(B: + +@table @code +@item nnml-directory +@vindex nnml-directory +$BA4$F$N(B @code{nnml} $B%G%#%l%/%H%j!<$O$3$N%G%#%l%/%H%j!<$N2<$KCV$+$l$^$9!#(B +$B4{DjCM$O(B @code{message-directory} $B$NCM(B ($B$=$N4{DjCM$O(B @file{~/Mail}) $B$G$9!#(B + +@item nnml-active-file +@vindex nnml-active-file +@code{nnml} $B%5!<%P!<$N$?$a$N%"%/%F%#%V%U%!%$%k!#4{DjCM(B +$B$O(B @file{~/Mail/active} $B$G$9!#(B + +@item nnml-newsgroups-file +@vindex nnml-newgroups-file +@code{nnml} $B%0%k!<%W5-=R%U%!%$%k!#(B@xref{Newsgroups File Format}. $B4{DjCM(B +$B$O(B @file{~/Mail/newsgroups} $B$G$9!#(B + +@item nnml-get-new-mail +@vindex nnml-get-new-mail +@code{nil} $B$G$J$1$l$P!"(B@code{nnml} $B$OF~$C$FMh$?%a!<%kFI$_9~$_$^$9!#4{Dj(B +$BCM$O(B @code{t} $B$G$9!#(B + +@item nnml-nov-is-evil +@vindex nnml-nov-is-evil +@code{nil} $B$G$J$1$l$P!"$3$N%P%C%/%(%s%I$O$I$N(B @acronym{NOV} $B%U%!%$%k$bL5(B +$B;k$7$^$9!#4{DjCM$O(B @code{nil} $B$G$9!#(B + +@item nnml-nov-file-name +@vindex nnml-nov-file-name +@acronym{NOV} $B%U%!%$%k$NL>A0!#%G%#%U%)%k%H$O(B @file{.overview} $B$G$9!#(B + +@item nnml-prepare-save-mail-hook +@vindex nnml-prepare-save-mail-hook +$BJ]B8$9$kA0$K5-;v$KHO0O$r69$a$FA0$G$9!#%G%#%U%)%k%H$O(B @file{.marks} $B$G$9!#(B + +@item nnml-use-compressed-files +@vindex nnml-use-compressed-files +$BHs(B-@code{nil} $B$@$C$?$i(B @code{nnml} $B$O05=L$5$l$?%a%C%;!<%8%U%!%$%k$r;H$&(B +$B$3$H$r9MN8$KF~$l$^$9!#(B +@end table + +@findex nnml-generate-nov-databases +@code{nnml} $B%0%k!<%W$H(B @acronym{NOV} $B%U%!%$%k$,40A4$KNI$$>uBV$G$J$/$J$C(B +$B$F$7$^$C$?$J$i!"(B@kbd{M-x nnml-generate-nov-databases} $B$HBG$D;v$K$h$C$F!"(B +$B40A4$K99?7$9$k;v$,$G$-$^$9!#$3$NL?Na$O!"$=$l$>$lA4$F$N%U%!%$%k$r8+$k;v$K(B +$B$h$C$F(B @code{nnml} $B3,AXA4BN$r%H%m!<%k5{LV$G$5$i$$$^$9$N$G!"$=$l$,=*$o$k(B +$B$^$G$K$O;~4V$,$+$+$k$+$b$7$l$^$;$s!#$3$N5!G=$X$N$h$jNI$$%$%s%?!<%U%'!<%9(B +$B$O%5!<%P!<%P%C%U%!$G8+$D$+$k$G$7$g$&(B (@pxref{Server Commands})$B!#(B + +@node MH Spool +@subsubsection MH $B%9%W!<%k(B +@cindex nnmh +@cindex mh-e mail spool + +@code{nnmh} $B$O!"(B@acronym{NOV} $B%G!<%?%Y!<%9$r:n$i$J$$$3$H$H%"%/%F%#%V%U%!(B +$B%$%k$d0u%U%!%$%k$rJ];}$7$J$$;v$r=|$$$F!"(B@code{nnml} $B$H;w$F$$$^$9!#$=$N$3(B +$B$H$O(B @code{nnmh} $B$r(B @code{nnml} $B$h$j(B @emph{$B$+$J$j(B} $BCY$$%P%C%/%(%s%I$K$7(B +$B$F$$$^$9$,!"$=$l$O(B procmail $B$N%9%/%j%W%H$r=q$/$?$a$K$:$C$H$d$j$d$9$/$J$C(B +$B$F$b$$$^$9!#(B + +$B;ve$N%5!<%P!<$N@_Dj(B: + +@table @code +@item nnmh-directory +@vindex nnmh-directory +$BA4$F$N(B @code{nnmh} $B%G%#%l%/%H%j!<$O$3$N%G%#%l%/%H%j!<$N2<$KCV$+$l$^$9!#(B +$B4{DjCM$O(B @code{message-directory} $B$NCM(B ($B$=$N4{DjCM$O(B @file{~/Mail}) $B$G$9!#(B + +@item nnmh-get-new-mail +@vindex nnmh-get-new-mail +@code{nil} $B$G$J$1$l$P!"(B@code{nnmh} $B$OF~$C$F$/$k%a!<%k$rFI$_9~$_$^$9!#4{(B +$BDjCM$O(B @code{t} $B$G$9!#(B + +@item nnmh-be-safe +@vindex nnmh-be-safe +@code{nil} $B$G$J$1$l$P!"(B@code{nnmh} $B$O%U%)%k%@!<$K$"$k5-;v$,pJs$rD4$Y$^$9$N$G!"$3$l$r(B @code{t} $B$K@_Dj$9$k(B +$B;v$O?<9o$JB.EYDc2<$,5/$3$k$H$$$&;v$G$9!#$b$7(B @code{nnmh} $B5-;v$rFI$`$N(B +$B$K(B Gnus $B0J30$N$b$N$r;H$C$F$$$J$$$N$G$"$l$P!"$3$NJQ?t$r(B @code{t} $B$K@_Dj$9(B +$B$kI,MW$O$"$j$^$;$s!#4{DjCM$O(B @code{nil} $B$G$9!#(B +@end table + +@node Maildir +@subsubsection Maildir +@cindex nnmaildir +@cindex maildir + +@code{nnmaildir} $B$O(B Gnus $B$N%0%k!<%W$KBP1~$7$?3F!9(B +$B$N(B maildir $B$K(B maildir $B%U%)!<%^%C%H$G%a!<%k$r3JG<$7$^$9!#$3$N%U%)!<%^%C(B +$B%H$O(B @uref{http://cr.yp.to/proto/maildir.html} $B$*$h(B +$B$S(B @uref{http://www.qmail.org/man/man5/maildir.html} $B$GJ8=q2=$5$l$F$$$^(B +$B$9!#$^$?(B @code{nnmaildir} $B$O(B maildir $B$NCf$N(B @file{.nnmaildir/} $B%G%#%l%/(B +$B%H%j$KFCJL$J>pJs$r3JG<$7$^$9!#(B + +Maildir $B%U%)!<%^%C%H$O%m%C%/$rI,MW$H$7$J$$F1;~G[Aw$H9VFI$r2DG=$K$9$k$?$a(B +$B$K@_7W$5$l$^$7$?!#B>$N%P%C%/%(%s%I$G$O!"%a!<%k$r2?$i$+$N%9%W!<%k$KEO$7$F(B +$B$=$N%9%W!<%k$+$i%0%k!<%W$KJ,3d$9$k$?$a$K(B Gnus $B$r@_Dj$7$J$1$l$P$J$i$J$$$G(B +$B$7$g$&!#$=$l$O:#$^$GDL$j(B @code{nnmaildir} $B$G9T$J$&$3$H$,$G$-$^$9$,!"$b$C(B +$B$H0lHLE*$J@_Dj$O(B Gnus $B$N%0%k!<%W$H$7$F8=$o$l$k(B maildir $B$K%a!<%k$rD>@\G[(B +$BAw$9$k$3$H$G$9!#(B + +@code{nnmaildir} $B$O40A4$K?.Mj$G$-$k$3$H$rL\;X$7$F$$$^$9(B: @kbd{C-g} $B$O%a(B +$B%b%j!$l$N(B maildir +$B$K3JG<$7$^$9!#$=$l$K$h$C$F!"$"$k(B Gnus $B$N4D6-$+$iJL$N>l=j$K(B maildir $BA4BN(B +$B$r%3%T!<$9$k$3$H$,$G$-!"0u$OJ]B8$5$l$^$9!#(B + +$B2>A[%5!<%P!<$N@_Dj(B: + +@table @code +@item directory +$B$=$l$>$l$N(B @code{nnmaildir} $B%5!<%P!<(B ($B0l$D$r1[$($k%5!<%P!<$,I,MW$@$H$O$H(B +$B$F$b;W$($^$;$s$,(B) $B$KBP$7$F%G%#%l%/%H%j$r:n$j!"$=$l$r(B maildir $B$^$?(B +$B$O(B maildir $B$X$N%7%s%\%j%C%/%j%s%/$H$7$F$NL\E*(B +$B$N$?$a$K$9$G$K;H$o$l$F$$$k%G%#%l%/%H%j$rA*$s$G$O$$$1$^$;$s(B)$B!#$=$l$>$l(B +$B$N(B maildir $B$O!"$=$N%5!<%P!<$N%K%e!<%9%0%k!<%W$H$7$F(B Gnus $B$K8=$l!"%7%s%\(B +$B%j%C%/%j%s%/$N%U%!%$%kL>$,$=$N%0%k!<%W$NL>A0$K$J$j$^$9!#%G%#%l%/%H%j$K$"(B +$B$k(B @samp{.} $B$G;O$^$k$I$s$J%U%!%$%kL>$bL5;k$5$l$^$9!#%G%#%l%/%H%j$O:G=i(B +$B$K(B Gnus $B$r5/F0$7$?$H$-$H%0%k!<%W%P%C%U%!$G(B @kbd{g} $B$r%?%$%W$7$?$H$-$O$$(B +$B$D$G$bAv::$5$l!"$I$l$+$N(B maildir $B$,:o=|$^$?$ODI2C$5$l$?$H$-(B +$B$K(B @code{nnmaildir} $B$ODLCN$7$^$9!#(B + +@code{directory} $B%Q%i%a!<%?$NCM$O(B Lisp $B<0$G$J$1$l$P$J$j$^$;$s!#(B +@code{eval} $B$G=hM}$5$l$?8e$G!"(B@code{expand-file-name} $B$K$h$C$F$3$N%5!<%P!<(B +$B$N$?$a$N%G%#%l%/%H%j$N%Q%9$r3MF@$7$^$9!#$=$N7k2LF@$i$l$?J8;zNs$,!"%5!<%P!<(B +$B$,JD$8$i$l$k$^$G;H$o$l$^$9(B ($B$b$7!"<0$d(B @code{eval} $B$rCN$i$J$/$G$b?4G[$4(B +$BL5MQ(B; $BC1$J$kJ8;zNs$GF0:n$7$^$9(B)$B!#$3$N%Q%i%a!<%?$OG$0U$G$O$J$/!"@_Dj$7$J(B +$B$1$l$P$J$j$^$;$s!#(B@code{"~/Mail"} $B$d$=$l$N%5%V%G%#%l%/%H%j$r;H$&$3$H$O?d(B +$B>)$G$-$^$;$s!#$$$/$D$+$N(B Gnus $B$NB>$NItJ,$,$=$l$r%G%#%U%)%k%H$G$$$m$s$J$b(B +$B$N$K;H$&$N$G!"(B@code{nnmaildir} $B$G$b$=$l$r;H$&$H:.Mp$9$k$+$b$7$l$^$;$s!#(B +@code{"~/.nnmaildir"} $B$,0lHLE*$JCM$G$9!#(B + +@item target-prefix +$B$3$l$O(B Lisp $B<0$G$J$1$l$P$J$j$^$;$s!#(B@code{eval} $B$G=hM}$5$l$?8e$G!"(B +@code{expand-file-name} $B$K$h$C$F?7$7$$(B maildir $B$,@8@.$5$l$k%G%#%l%/%H%j(B +$B$NL>A0$r3MF@$7$^$9!#<0$O%5!<%P!<$,3+DL$7$?$H$-$@$1(B @code{eval} $B$5$l!"$=(B +$B$N7k2LF@$i$l$?J8;zNs$,!"%5!<%P!<$,JD$8$i$l$k$^$G;H$o$l$^$9!#(B + +@code{nnmaildir} $B%5!<%P!<$K%0%k!<%W$r:n$k$H!"$=$NL>A0$NF,(B +$B$K(B @code{target-prefix} $B$,IU2C$5$l$?(B maildir $B$H!"$=$N(B maildir $B$r;X$7<($9(B +$B%7%s%\%j%C%/%j%s%/$,AG$N%0%k!<%WL>$NL>A0$G:n@.$5$l$^$9!#$7$?$,$C$F!"(B +@code{directory} $B$,(B @code{"~/.nnmaildir"} $B$G!"(B +@code{target-prefix} $B$,(B @code{"../maildirs/"} $B$@$C$?>l9g$K(B @code{foo} $B$H(B +$B$$$&%0%k!<%W$r:n$k$H!"(B@code{nnmaildir} $B$O(B maildir $B$H$7(B +$B$F(B @file{~/.nnmaildir/../maildirs/foo} $B$r!"(B@file{../maildirs/foo} $B$X$N%7(B +$B%s%\%j%C%/%j%s%/$H$7$F(B @file{~/.nnmaildir/foo} $B$r:n@.$7$^$9!#(B + +$BF1$8(B @code{directory} $B$K(B maildirs $B$H%7%s%\%j%C%/%j%s%/$NN>J}$r:n@.$9$k$?(B +$B$a$K!"%9%i%C%7%e$r4^$^$J$$J8;zNs$r(B @code{target-prefix} $B$K@_Dj$9$k$3$H$,(B +$B$G$-$^$9!#$3$N>l9g$O!"L>A0$,(B @code{target-prefix} $B$G;O$^(B +$B$k(B @code{directory} $B$G8+$D$+$k$I$N(B maildir $B$b!"%0%k!<%W$H$O8+$J$5$l$^$;(B +$B$s(B ($B$,!"$=$l$i$r;X$7<($9%7%s%\%j%C%/%j%s%/$,%0%k!<%W$K$J$j$^$9(B)$B!#(B + +$BFCJL$J>l9g$H$7$F(B @code{target-prefix} $B$,(B @code{""} ($B%G%#%U%)%k%H(B) $B$@$C$?(B +$B$i!"%0%k!<%W$r:n$k$H$-$K!"(B@code{directory} $B$K$*$$$FBP1~$9$k%7%s%\%j%C%/(B +$B%j%s%/$r;}$?$J$$(B maildir $B$,:n@.$5$l$^$9!#$=$N$h$&$J%0%k!<%W$KBP$7$F(B +$B$O!"(B@code{force} $B0z?t$rM?$($J$$$H(B @code{gnus-group-delete-group} $B$,;H$((B +$B$J$$$3$H$KCm0U$7$F2<$5$$!#(B + +@item directory-files +$B$3$l$O(B @code{directory-files} $B$HF1$8%$%s%?!<%U%'!<%9$N4X(B +$B?t(B ($B$^$?$O(B @code{directory-files} $B$=$N$b$N(B) $B$G$J$1$l$P$J$j$^$;$s!#$3$l(B +$B$O(B maildir $BMQ$N%5!<%P!<$N(B @code{directory} $B$rAv::$9$k$?$a$K;H$o$l$^$9!#(B +$B$3$N%Q%i%a!<%?$OG$0U$G$9!#%G%#%U%)%k%HCM$O!"(B +@code{nnheader-directory-files-is-safe} $B$,(B @code{nil} $B$@$C$?(B +$B$i(B @code{nnheader-directory-files-safe} $B$G!"$=$l0J30$N>l9g(B +$B$O(B @code{directory-files} $B$G(B +$B$9(B (@code{nnheader-directory-files-is-safe} $B$O%5!<%P!<$,3+DL$7$?$H$-$K0l(B +$B2s$@$18!::$5$l$^$9$,!"%G%#%l%/%H%j$,Av::$5$l$k$H$-$KKh2s%A%'%C%/$5$;$?$$(B +$B$N$J$i$P!"$=$l$r9T$J$&4X?t$r$"$J$?$,<+A0$GMQ0U$9$kI,MW$,$"$j$^$9(B)$B!#(B + +@item get-new-mail +$BHs(B-@code{nil} $B$K$7$F$*$/$H!"$$$D$b$NDL$j$K%0%k!<%W$N(B maildir $B<+BN$K$*$$(B +$B$F?7Ce%a!<%k$rAv::$7$?8e$G!"$3$N%5!<%P!<(B +$B$O(B @code{nnmail-split-methods} $B$+(B @code{nnmail-split-fancy} $B$K$h(B +$B$k(B @code{mail-sources} $B$+$i!"=>Mh$N(B Gnus $B$NJ}K!$G%a!<%k$rJ}$GF1$8(B maildir $B$r(B +$B;H$C$F$O(B @emph{$B$$$1$^$;$s(B}$B!#$=$N7k2L$O1?NI$/M-1W$K$J$k$+$b$7$l$^$;$s$,!"(B +$B$=$s$J0U?^$G$O@_7W$5$l$F$$$^$;$s!#>-Mh$O0c$&7k2L$r$b$?$i$92DG=@-$,$"$j$^(B +$B$9!#$"$J$?$NJ,3d5,B'$,?7$7$$%0%k!<%W$r:n$k$h$&$K$J$C$F$$$k>l9g$O!"(B +@code{create-directory} $B%5!<%P!<%Q%i%a!<%?$rM?$($k$3$H$rK:$l$J$$$G2<$5$$!#(B +@end table + +@subsubsection $B%0%k!<%W%Q%i%a!<%?(B + +@code{nnmaildir} $B$O$$$/$D$+$N%0%k!<%W%Q%i%a!<%?$r;H$$$^$9!#$3$l$i$N$9$Y(B +$B$F$rL5;k$7$F$b0BA4$G$9!#%G%#%U%)%k%H$N(B @code{nnmaildir} $B$NF0:n$O!"B>$N%a!<(B +$B%k%P%C%/%(%s%I$N%G%#%U%)%k%H(B ($B5-;v$,0l=54V8e$K>C5n$5$l$k!"$J$I(B) $B$HF1$8$G(B +$B$9!#4|8B@Z$l>C5n$N%Q%i%a!<%?$r=|$$$F!"$3$N5!G=$O$9$Y(B +$B$F(B @code{nnmaildir} $B$KFCM-$G$9!#$7$?$,$C$F!"JL$N%P%C%/%(%s%I$G$9$G$K9T$C(B +$B$F$$$kF0:n$rC1$KF'=1$5$;$h$&$H$$$&$N$G$"$l$P!"$3$l$rL5;k$9$k$3$H$,$G$-$^(B +$B$9!#(B + +$B$3$l$i$N%Q%i%a!<%?$N$&$A$N$I$l$G$b!"$=$NCM$,%Y%/%H%k$G$"$k>l9g$O!"%*%j%8(B +$B%J%k$NCM$KBe$o$C$F!"Bh0l$NMWAG$,(B Lisp $B<0$H$7$FI>2A$5$l$?7k2L$,;H$o$l$^$9!#(B +$BCM$,%Y%/%H%k$G$J$$>l9g$O!"$=$NCM$=$N$b$N$,(B Lisp $B<0$H$7$FI>2A$5$l$^$9!#(B +($B$=$N$?$a!"$3$l$i$N%Q%i%a!<%?$OB>$H$O0c$&L>A0!"0c$&$1$l$I$b;w$?0UL#$r;}(B +$B$DB>$N%P%C%/%(%s%I$G%5%]!<%H$5$l$F$$$kF1MM$N%Q%i%a!<%?!"$r;H$$$^$9!#(B) +($B?t!"J8;zNs!"(B@code{nil}$B!"$*$h$S(B @code{t} $B$K$D$$$F$O!"(B@code{eval} $B$N4XM?(B +$B$r:F$SL5;k$9$k$3$H$,$G$-$^$9!#B>$NCM$K$D$$$F!"$=$l$,E,@Z$J>l9g$K$O!"M>J,(B +$B$J%/%*!<%H$r;H$$!"$+$D%Y%/%H%k$GCM$rJq$`$3$H$rK:$l$J$$$G2<$5$$!#(B) + +@table @code +@item expire-age +$B5-;v$,>C5n$5$l$k$^$G$NC5n$5$l$F$O$J$i$J$$$3$H$r;XDj$7$^$9!#$3$N%Q%i%a!<%?$,@_Dj(B +$B$5$l$F$$$J$$$H!"$$$D$b$N(B @code{nnmail-expiry-wait}(@code{-function}) $BJQ(B +$B?t(B (@code{expiry-wait}(@code{-function}) $B%0%k!<%W%Q%i%a!<%?$G>e=q$-$5$l(B +$B$k(B) $B$r:G8e$N$h$j$I$3$m$K$7$^$9!#(B3$BF|$NCM$,M_$7$$$J$i$P!"(B@code{[(* 3 24 60 +60)]} $B$N$h$&$J$b$N$r;H$C$F2<$5$$!#(B@code{nnmaildir} $B$O<0$rI>2A$7$F!"$=$N(B +$B7k2L$r;H$$$^$9!#5-;v$No$3$l$O5-;v$,G[Aw$5$l$?;~9o$HF1$8$G$9$,!"5-;v$NJT=8$O$=$l$rC5n0J30$N(B) $B5-;v$N0\F0$b$^$?!"5-;v$r(B) $B$G!"$+$D$=$N%Q%i%a!<%?$,F1$8L>A0$N%0%k!<%W$KB0(B +$B$5$J$$>l9g!"4|8B@Z$l>C5n$,9T$J$o$l$k:]$K!"5-;v$O>C5n$5$l$kA0$K;XDj$5$l$?(B +$B%0%k!<%W$K0\F0$5$;$i$l$^$9!#(B@emph{$B$3$l$,(B @code{nnmaildir} $B%0%k!<%W$K@_Dj(B +$B$5$l$k$H!"0\F0@h$N%0%k!<%W$K$*$$$F!"5-;v$,85$N%0%k!<%W$K$"$C$?$H$-$H$A$g(B +$B$&$IF1$8$@$18E$/$J$j$^$9!#(B} $B$7$?$,$C$F!"0\F0@h$N%0%k!<%W$K$*$1(B +$B$k(B @code{expire-age} $B$K$OCm0U$7$F2<$5$$!#$3$l$,%Q%i%a!<%?$,B0$9$k$N$HF1(B +$B$8%0%k!<%W$NL>A0$K@_Dj$5$l$k$H!"5-;v$O$^$C$?$/4|8B@Z$l>C5n$5$l$^$;$s!#%Y(B +$B%/%H%k<0$r;H$&$H!":G=i$NMWAG$,0l2s!"$=$l$>$l$N5-;v$K$D$$$FI>2A$5$l$^$9!#(B +$B$7$?$,$C$F!"5-;v$r$I$3$KCV$/$+$r7h$a$k$?$a$K!"$=$N<0(B +$B$O(B @code{nnmaildir-article-file-name} $B$J$I$K>H2q$9$k$3$H$,$G$-$^$9!#(B +@emph{$B$3$N%Q%i%a!<%?$,@_Dj$5$l$F$$$J$$$H!"(B +@code{nnmaildir} $B$O(B @code{expiry-target} $B%0%k!<%W%Q%i%a!<%?(B +$B$d(B @code{nnmail-expiry-target} $BJQ?t$r8\$_$^$;$s!#(B} + +@item read-only +$B$3$l$,(B @code{t} $B$K@_Dj$5$l$F$$$k$H!"(B@code{nnmaildir} $B$O$=$N5-;v$r$3$N%0(B +$B%k!<%W$GFI$_=P$7@lMQ$H$7$F07$$$^$9!#$3$N0UL#$O!"5-;v$O(B @file{new/} $B$+(B +$B$i(B @file{cur/} $B$K2~L>$5$l$J$$!"5-;v$O(B @file{cur/} $B$G$O$J(B +$B$/(B @file{new/} $B$G$N$_8+$D$+$k!"5-;v$O>C5n$5$l$J$$!"5-;v$OJT=8$G$-$J$$!"(B +$B$H$$$&$3$H$G$9!#(B@file{new/} $B$OB>$N(B maildir $B$N(B @file{new/} $B%G%#%l%/%H%j!"(B +$BNc$($P$_$s$J$,6=L#$,$"$k%a!<%j%s%0%j%9%H$r4^$s$G$$$k%7%9%F%`$G6&DL$N%a!<(B +$B%k%\%C%/%9!"$X$N%7%s%\%j%C%/%j%s%/$G$"$k$HA[Dj$5$l$^$9!#(B@file{new/} $B0J30(B +$B$N(B maildir $B$K$"$k$9$Y$F$N$b$N$O!"FI$_=P$7@lMQ$H$7$F07$o$l(B @emph{$B$^$;$s(B}$B!#(B +$B$7$?$,$C$F6&M-$N%a!<%k%\%C%/%9$KBP$7$F$O!"$"$J$?<+?H$N(B maildir $B$r@_Dj$9(B +$B$k(B ($B$^$?$O(B $B6&M-$N%a!<%k%\%C%/%9$K=q$-9~$_8"8B$r;}$D(B) $BI,MW$,0MA3$H$7$F$"(B +$B$j$^$9!#$"$J$?$N(B maildir $B$O5-;v$NM>J,$J%3%T!<$r$^$C$?$/4^$^$J$$$G$7$g$&!#(B + +@item directory-files +@code{directory-files} $B$HF1$8%$%s%?!<%U%'!<%9$N4X?t$G$9!#5-;v$r8+$D$1$k(B +$B$?$a$K!"$3$N%0%k!<%W$KBP1~$9$k(B maildir $B$N%G%#%l%/%H%j$rAv::$9$k$?$a$K;H(B +$B$o$l$^$9!#%G%#%U%)%k%H$O%5!<%P!<$N(B @code{directory-files} $B%Q%i%a!<%?$G@_(B +$BDj$5$l$F$$$k4X?t$G$9!#(B + +@item distrust-Lines: +$BHs(B-@code{nil} $B$G$"$k$H!"(B@code{nnmaildir} $B$O(B @code{Lines:} $B%X%C%@!<%U%#!<(B +$B%k%I$r;H$&Be$o$j$K$$$D$b5-;v$N9T?t$r?t$($^$9!#(B@code{nil} $B$@$C$?>l9g$O!"(B +$B$"$l$P$=$N%X%C%@!<%U%#!<%k%I$,;H$o$l$^$9!#(B + +@item always-marks +@code{['(read expire)]} $B$N$h$&$J0u%7%s%\%k$N%j%9%H$G$9!#(BGnus $B$,5-;v$N0u(B +$B$r(B @code{nnmaildir} $B$K?R$M$k$H$-$O$$$D$G$b!"%U%!%$%k%7%9%F%`$K3JG<$5$l$F(B +$B$$$k0u$,2?$G$"$k$+$H$OL54X78$K!"(B@code{nnmaildir} $B$O$9$Y$F$N5-;v$,$3$l$i(B +$B$N0u$r;}$C$F$$$k$HEz$($^$9!#$3$l$O9=A[$r;n$9$?$a$N5!G=$G!"$*$=$i$/7k6I$O(B +$B:o=|$5$l$k$G$7$g$&!#$=$l$O(B Gnus $BK\BN$G9T$o$l$k$+!"$"$k$$$OM-1W$G$J$1$l$P(B +$BJ|4~$5$l$k$Y$-$G$9!#(B + +@item never-marks +@code{['(tick expire)]} $B$N$h$&$J0u%7%s%\%k$N%j%9%H$G$9!#(BGnus $B$,5-;v$N0u(B +$B$r(B @code{nnmaildir} $B$K?R$M$k$H$-$O$$$D$G$b!"%U%!%$%k%7%9%F%`$K3JG<$5$l$F(B +$B$$$k0u$,2?$G$"$k$+$H$OL54X78$K!"(B@code{nnmaildir} $B$O$3$l$i$N0u$r;}$C$F$$(B +$B$k5-;v$OL5$$$HEz$($^$9!#(B@code{never-marks} $B$O(B @code{always-marks} $B$r>e=q(B +$B$-$7$^$9!#$3$l$O9=A[$r;n$9$?$a$N5!G=$G!"$*$=$i$/7k6I$O:o=|$5$l$k$G$7$g$&!#(B +$B$=$l$O(B Gnus $BK\BN$G9T$o$l$k$+!"$"$k$$$OM-1W$G$J$1$l$PJ|4~$5$l$k$Y$-$G$9!#(B + +@item nov-cache-size +@acronym{NOV} $B%a%b%j!<%-%c%C%7%e$N%5%$%:$r;XDj$9$k@0?t$G$9!#%9%T!<%I%"%C(B +$B%W$N$?$a$K!"(B@code{nnmaildir} $B$O$=$l$>$l$N%0%k!<%W$N8BDj$5$l$??t$N5-;v$K(B +$BBP$7$F!"%a%b%j!<>e$K(B @acronym{NOV} $B%G!<%?$rJ];}$7$^$9!#(B($B$3$l$O$?$V$sM-MQ(B +$B$G$O$J$/!">-Mh$O$*$=$i$/:o=|$5$l$k$G$7$g$&(B)$B!#$3$N%Q%i%a!<%?$NCM$O!"%5!<(B +$B%P!<$,3+DL$7$?8e$G:G=i$K%0%k!<%W$,8+$i$l$?$H$-!"$9$J$o$A0lHL$K$O:G=i(B +$B$K(B Gnus $B$r5/F0$7$?$H$-!"$@$1CmL\$5$l$^$9!#%5!<%P!<$,JD$8$i$l$F:F$S3+DL$5(B +$B$l$k$^$G$O!"(B@acronym{NOV} $B%-%c%C%7%e$N%5%$%:$OJQ99$5$l$^$;$s!#%G%#%U%)%k(B +$B%H$O35N,%P%C%U%!$KI=<($5$l$k5-;v$N?t$N8+@Q$j(B (@code{tick} $B0u$,$"$C(B +$B$F(B @code{read} $B$,L5$$5-;v$N?t$K>/!9$NM>J,$r2C$($?$b$N(B) $B$G$9!#(B +@end table + +@subsubsection $B5-;v$N<1JL(B +$B5-;v$O$=$l$>$l$N(B maildir $B$N(B @file{cur/} $B%G%#%l%/%H%j$K3JG<$5$l$^$9!#3F!9(B +$B$N5-;v$K$O(B @code{uniq:info} $B$N$h$&$JL>A0$,IU$1$i$l$^$9!#$3$3(B +$B$G(B @code{uniq} $B$O%3%m%s$r4^$_$^$;$s!#(B@code{nnmaildir} $B$O(B @code{:info} $B$N(B +$BItJ,$rJ];}$7$^$9$,L5;k$7$^$9!#(B($BB>$N(B maildir $B%j!<%@!<$O0lHL$K0u$r3JG<$9$k(B +$B$?$a$K$3$NItJ,$r;H$$$^$9!#(B) @code{uniq} $B$NItJ,$O5-;v$r%f%K!<%/$K<1JL$7!"(B +maildir $B$N(B @file{.nnmaildir/} $B%5%V%G%#%l%/%H%j$N?'!9$J>l=j$K5-;v$K4XO"$7(B +$B$?>pJs$r3JG<$9$k$?$a$K;H$o$l$^$9!#35N,%P%C%U%!$G5-;v$rMW5a$7$?8e$G!"5-;v(B +$B$N40A4$J%Q%9L>$,(B @code{nnmaildir-article-file-name} $BJQ?t$+$iF@$i$l$^$9!#(B + +@subsubsection NOV $B%G!<%?(B +@code{uniq} $B$K$h$C$F<1JL$5$l$k5-;v$O!"$=$N(B @acronym{NOV} $B%G!<%?(B ($B35N,%P%C(B +$B%U%!$N9T$r@8@.$9$k$?$a$K;H$o$l$k(B) $B$r(B @file{.nnmaildir/nov/uniq} $B$K3JG<$7(B +$B$^$9!#(B@code{nnmaildir-generate-nov-databases} $B4X?t$O$"$j$^$;$s!#(B($B$=$NI,(B +$BMW$O$"$^$j$"$j$^$;$s!#5-;v$N(B @acronym{NOV} $B%G!<%?$O5-;v(B +$B$+(B @code{nnmail-extra-headers} $B$,JQ2=$7$?$H$-$K<+F0E*$K99?7$5$l$^(B +$B$9!#(B) $BBP1~$9$k(B @acronym{NOV} $B%U%!%$%k$r$?$@>C$9$3$H$K$h$C$FC10l$N5-;v(B +$B$N(B @acronym{NOV} $B%G!<%?$N@8@.$r(B @code{nnmaildir} $B$K6/@)$9$k$3$H$O$G$-$^(B +$B$9!#$7$+$7(B @emph{$B$4MQ?4(B}$B!#$3$l$O(B @code{nnmaildir} $B$,$3$N5-;v$K?7$7$$5-;v(B +$BHV9f$r3d$j?6$i$;!"(B@code{seen} $B0u!"%(!<%8%'%s%H!"$*$h$S%-%c%C%7%e$K$H$C$F(B +$BLLE]$J$3$H$K$J$j$^$9!#(B + +@subsubsection $B5-;v$N0u(B +@file{.nnmaildir/marks/flag/uniq} $B%U%!%$%k$,$"$k>l9g$K!"(B@code{uniq} $B$K$h$C(B +$B$F<1JL$5$l$k5-;v$O!"(B@code{flag} $B0u$r;}$D$b$N$H9M$($i$l$^$9!#(B +Gnus $B$,(B @code{nnmaildir} $B$K%0%k!<%W$N0u$r?R$M$k$H!"(B@code{nnmaildir} $B$O$=(B +$B$N$h$&$J%U%!%$%k$rC5$7$F!"8+$D$1$?0u$N%;%C%H$rJs9p$7$^$9!#(B +Gnus $B$,(B @code{nnmaildir} $B$K0u$N%;%C%H$N3JG<$rMW5a$9$k$H!"(B +@code{nnmaildir} $B$OI,MW$JBP1~$9$k%U%!%$%k$r@8@.$7!"$^$?$O>C5n$7$^$9!#(B($B$l$N0u$N$?$a$K?7$7$$%U%!%$%k$r:n$k$N$G$O$J$/!"(Bi$B%N!<%I(B $B$r@aLs(B +$B$9$k$?$a$KC1$K(B @file{.nnmaildir/markfile} $B$X$N%O!<%I%j%s%/$rD%$j$^$9!#(B) + +@file{.nnmaildir/marks/} $B$K?7$7$$%G%#%l%/%H%j$r:n$k$3$H$K$h$C$F!"?7$7$$(B +$B0u$rAOB$$9$k$3$H$,$G$-$^$9!#0u$rJ];}$7$D$D(B maildir $B$r(B tar $B$G$^$H$a$F%5!<(B +$B%P!<$+$i$=$l$r:o=|$7!"8e$G(B tar $B$r$[$I$/$3$H$,$G$-$^$9!#0u%U%!%$%k$r:n@.(B +$B$^$?$O>C5n$9$k$3$H$K$h$C$F!"$"$J$?<+?H$,0u$rDI2C$^$?$O:o=|$9$k$3$H$,$G$-(B +$B$^$9!#(BGnus $B$,F0:n$7$F$$$F(B @code{nnmaildir} $B%5!<%P!<$,3+DL$7$F$$$k$H$-$K(B +$B$3$l$r9T$J$&>l9g$O!":G=i$K$9$Y$F$N(B @code{nnmaildir} $B%0%k!<%W$N35N,%P%C%U%!(B +$B$+$iB`=P$7$F%0%k!<%W%P%C%U%!$G(B @kbd{s} $B$r%?%$%W$7!"$=$N8e%0%k!<%W%P%C%U%!(B +$B$G(B @kbd{g} $B$+(B @kbd{M-g} $B$r%?%$%W$9$k$N$,:GNI$G$9!#$=$&$7$J$$$H(B Gnus $B$OJQ(B +$B99$rB*$($F$/$l$:$K!"$=$l$i$r85$KLa$7$F$7$^$&$+$b$7$l$^$;$s!#(B + +@node Mail Folders +@subsubsection $B%a!<%k%U%)%k%@!<(B +@cindex nnfolder +@cindex mbox folders +@cindex mail folders + +@code{nnfolder} $B$O$=$l$>$l$N%a!<%k%0%k!<%W$r0c$C$?%U%!%$%k$KC_B"$9$k%P%C(B +$B%/%(%s%I$G$9!#$=$l$>$l$N%U%!%$%k$OI8=`$N(B Un*x mbox $BMM<0$G$9!#(B +@code{nnfolder} $B$O5-;vHV9f$HE~CeF|$r5-O?$7$F$*$/$?$a$NDI2C$N%X%C%@!<$r2C(B +$B$($^$9!#(B + +@cindex self contained nnfolder servers +@cindex marks +$B0u%U%!%$%k(B ($BLuCm(B: marks file) $B$,;H$o$l$k$H(B ($B$=$l$,%G%#%U%)%k%H$G$9$,(B)$B!"(B +@code{nnfolder} $B%5!<%P!<$O(B @code{tar} $B$J$I$r;H$C$F%P%C%/%"%C%W$7$?$j!"8e(B +$B$G$"$J$?$,IU$1$?0u$,$9$Y$FJ]$?$l$?>uBV$G(B Gnus $B$KLa$9(B ($BK\Mh(B +$B$N(B @code{nnfolder} $B%5!<%P!<$K$h$C$FDI2C$9$k(B) $B$3$H$,$G$-$kFCo(B @file{.mrk} (@code{nnfolder-marks-file-name} $B$r;2>H(B) $B$,IU2C$5$l(B +$B$?L>A0$N%U%!%$%k$K3JG<$5$l$^$9!#$^$?!"8D!9$N(B @code{nnfolder} $B%0%k!<%W$K(B +$B$D$$$F$b%P%C%/%"%C%W$9$k$3$H$,2DG=$G!"(B($B%P%C%/%"%C%W$r(B nnfolder $B%G%#%l%/(B +$B%$%H%j$KLa$7$?8e$G(B) @kbd{G m} $B%-!<$r;H$C$F$=$N%0%k!<%W$r85$KLa$7$^$9!#(B + +$B;ve$N%5!<%P!<$N@_Dj(B: + +@table @code +@item nnfolder-directory +@vindex nnfolder-directory +$BA4$F$N(B @code{nnfolder} $B%a!<%k%\%C%/%9$O$3$N%G%#%l%/%H%j!<$N2<$KCV$+$l$^(B +$B$9!#4{DjCM$O(B @code{message-directory} $B$NCM(B ($B$=$N4{DjCM(B +$B$O(B @file{~/Mail}) $B$G$9!#(B + +@item nnfolder-active-file +@vindex nnfolder-active-file +$B%"%/%F%#%V%U%!%$%k$NL>A0!#4{DjCM$O(B @file{~/Mail/active} $B$G$9!#(B + +@item nnfolder-newgroups-file +@vindex nnfolder-newsgroups-file +$B%0%k!<%W5-=R%U%!%$%k$NL>A0!#(B@xref{Newsgroups File Format}. $B4{DjCM(B +$B$O(B @file{~/Mail/newsgroups"} $B$G$9!#(B + +@item nnfolder-get-new-mail +@vindex nnfolder-get-new-mail +@code{nil} $B$G$J$1$l$P!"(B@code{nnfolder} $B$OF~$C$F$/$k%a!<%k$rFI$_9~$_$^$9!#(B +$B4{DjCM$O(B @code{t} $B$G$9!#(B + +@item nnfolder-save-buffer-hook +@vindex nnfolder-save-buffer-hook +@cindex backup files +$B%U%)%k%@!<$rJ]B8$9$kA0$Ko$N%P%C%/%"%C%W$NJQL>$r$9$k;v$KCm0U$7$F2<$5$$!#(B +$B$3$N5!G=$rL58z$K$7$?$$$N$G$"$l$P!"%U%!%$%k(B @file{.emacs} $B$GC5n$5$l$k%a%C%;!<%8$KHO0O$r69$a$i$l$FC5n$9$k$^$($K2?$i$+$N>pJs$r(B +$B$r;H$C$F$$$k$H$-$K$N$_F0:n$7$^$9$,!#(B + +@node Comparing Mail Back Ends +@subsubsection $B%a!<%k%P%C%/%(%s%I$NHf3S(B + +$B$^$:!"MQ8l$H$7$F!"(B@dfn{$B%P%C%/%(%s%I(B} (back end) $B$ODc$`$J$i!"F)2aE*$G$"$j!"$=$l$O2?$+$r@.$7?k$2$k$b$N$G(B +$B$9!#$=$N$3$3$m$O!"%a!<%k$O$I$3$+$i$+Mh$J$1$l$P$J$i$:!"E,@Z$J%P%C%/%(%s%I(B +$B$NA*Br$O!"%a!<%k$r(B Gnus $B$N$9$06a$/$K@\5-;v$N%G%#%l%/%H%j!<%9%W!<%k$KF'$_9~$`$H(B +$B$$$&$b$N$G$7$?!#$=$l$G$b!"$?$^$?$^%5!<%P!<(B ($B$b$7$/$O!"(BNFS $B$G%9%W!<%k$,FI(B +$B$a$k$h$&$J>l9g(B) $B$K$$$k$h$&$J>l9g$O!"$3$l$i$NJ}K!$rA*$V$?$a(B +$B$K(B @code{nntp} $B$d(B @code{nnspool} $B%P%C%/%(%s%I$N$I$A$i$+$rA*$V$3$H$,$G$-(B +$B$^$7$?!#(B + +$B%a!<%k%P%C%/%(%s%I$rA*Br$9$k$3$H$N%4!<%k$O!"85$N7A<0$r07$&$N$KE,$7$?J}K!(B +$B$H!">-Mh;HMQ$9$k$?$a$KJXMx$J7A<0$K%a!<%k$r;D$9$3$H$NN>J}$rF1;~$KI=8=$9$k(B +$B$3$H$G$9!#$=$l$>$l$K$ONI$$E@$H0-$$E@$,$$$/$D$+$"$j$^$9(B: + +@table @code +@item nnmbox + +UNIX $B%7%9%F%`$ONr;KE*$KC10l$N!"Hs>o$K0lHLE*$J!">e2A$G$-$k(B) $BJQ99$r$;$:$KJ#@=$9$k$3$H$G$9!#$=$l$O(B Gnus $B$N4D6-$N;H(B +$BMQ2DG=HO0O$K%a!<%k$r0\F0$9$k(B ``$B:G$b6r$+$J(B''$BJ}K!$G$9!#$3$l$ODj$a$i$l$?>l(B +$B=j$K0\F0$9$k$N$rB.$/$7$^$9$,!"(BGnus $B$,$I$3$K2?$,$"$k$+$rD4$Y$k$H$-$O!"2r(B +$B@O$,CY$/$J$j$^$9!#(B + +@item nnbabyl + +$B$`$+$7$`$+$7!"(BTOPS $B$H8F$P$l$k%*%Z%l!<%F%#%s%0%7%9%F%`$d!";w$?$h$&$J$b$N(B +$B$ruBV%S%C%H$r%U%!(B +$B%$%k$N$=$l$>$l$N%a%C%;!<%8$N@hF,$K2C$($k$3$H$r$7$F$$$^$7$?!#(B +Rmail $B$O(B Emacs $B$N:G=i$N%a!<%k%j!<%@!<$G!"(BRichard Stallman $B$K$h$C$F=q$+$l!"(B +Stallman $B$O$=$N(B TOPS/Babyl $B4D6-$N=P?H$G$"$k$?$a!"(BRmail $B$r4{$KB8:_$7$F$$(B +$B$?%a!<%k%U%!%$%k$N0lB2$rM}2r$9$kMM$K=q$-$^$7$?!#(BGnus ($B$3$NLdBj$K4X$7$F(B +$B$O(B VM $B$b(B) $B$3$N7A<0$r%5%]!<%H$7B3$1$F$$$^$9!#$=$l$O!"$=$N%a!<%i!e$N7A<0$NN>J}$O%a!<%k$r%U%!%$%k%7%9%F%`$NC1FH$N%U%!%$%k$KF~$l!"%a!<%k$r(B +$B8+$k$?$S$K!"%U%!%$%kA4BN$r2r@O$7$J$1$l$P$J$j$^$;$s!#(B + +@item nnml + +@code{nnml} $B$O$[$H$s$I(B @code{nnspool} $B@\B3$N(B Usenet $B%7%9%F%`$rA`:n$7$F$$(B +$B$k$h$&$J46$8$N$9$k%P%C%/%(%s%I$G$9!#(B($Bo$K$?$/$5$s>CHq$7$^$9!#$9$J$o$A!"%U%!%$(B +$B%k%7%9%F%`$G?7$7$$%U%!%$%k$rF~$l$k$?$a$N2DG=$J>l=j$rDj5A$9$k;q8;$r$?$/$5(B +$B$s@jM-$7$^$9!#%7%9%F%`4IM}e$G@83h$7$F$$$k$J$i!"(B@code{nnml} $B$OHs>o$KBg$-$JMxE@$,(B +$B$"$j$^$9!#(B + +$B$^$?!"(BFAT16 $B$N(B Windows $B$N@$3&$K@8$-$F$$$k$J$i!"LdBj$,$"$k$G$7$g$&!#$?$/(B +$B$5$s$N>.$5$J%U%!%$%k$GB?$/$N>l=j$r/$7$+!"A4$/$J$$$+$H$$$&DxEY$G$9(B -- @code{nnmh} $B$O0UL#E*(B +$B$K$O(B ``@code{nnml} $B$K%"%/%F%#%V%U%!%$%k$H(B overview $B$N$J$$$b$N(B'' $B$HEy2A$G(B +$B$9!#$3$l$O5DO@$N$"$k$H$3$m$G$9$,!":G0-$NA*Br$G$9!#$H$$$&$N$O!"8D!9$N%U%!(B +$B%$%k$N:n@.$NCY$5$,!"%0%k!<%W$G2?$,?7$7$$$+$rCN$k$H$-$N2r@O$N$?$a$N;HMQ$N(B +$BCY$5$,7k$SIU$/$+$i$G$9!#(B + +@item nnfolder + +$B4pK\E*$K(B @code{nnfolder} $B$N8z2L$O%0%k!<%WKh$N(B @code{nnmbox} ($B>e$G@bL@$5(B +$B$l$F$$$k:G=i$NJ}K!(B) $B$G$9!#$9$J$o$A!"(B@code{nnmbox} $B<+?H$O(B @emph{$BA4$F(B} $B$N(B +$B%a!<%k$r0l$D$N%U%!%$%k$KF~$l$^$9(B; @code{nnfolder} $B$O%a!<%k%0%k!<%W$=$l$>(B +$B$l$,(B Unix mail box $B%U%!%$%k$r;}$D$h$&$K>/$7:GE,2=$r$7$^$9!#(B +@code{nnmobx} $B$h$j$b!"$=$l$>$l$N%0%k!<%W$rJL$K2r@O$9$k$N$GB.$/!"$=$N$&$((B +$B%a!<%k$r0\F0$5$;$k$N$K:G>.8B$NO+NO$rMW5a$9$kC1=c$J(B Unix mail box $B7A<0$r(B +$BDs6!$7$^$9!#2C$($F!"(BGnus $B$,$=$l$>$l$NJL$N%0%k!<%W$K$I$N$/$i$$$N%a%C%;!<(B +$B%8$,$"$k$+$rD4$Y$k$?$a$N(B ``$B%"%/%F%#%V(B'' $B%U%!%$%k$r0];}$7$^$9!#(B + +$B$b$7$?$/$5$s$NNL$N%a%C%;!<%8$rC5n$dB>$N$3$H$,$i$r@_Dj$9$k$N$K!"(B@code{nnmaildir} $B$OB>$N%a!<%k(B +$B%P%C%/%(%s%I$H$O>/!90[$J$C$?!"8_49@-$NL5$$%0%k!<%W%Q%i%a!<%?$r;H$$$^$9!#(B + +@code{nnmaildir} $B$OBgJ}(B @code{nnml} $B$H;w$?$b$N$G$9$,!"$$$/$i$+82Cx$J0c$$(B +$B$,$"$j$^$9!#$=$l$>$l$N%a%C%;!<%8$OJL!9$N%U%!%$%k$K3JG<$5$l$^$9$,!"%U%!%$(B +$B%kL>$O(B Gnus $B$N5-;vHV9f$H4X78$,$"$j$^$;$s!#$^(B +$B$?(B @code{nnmaildir} $B$O(B @code{nnml} $B$N(B overview $B$KAjEv$9$k%U%!%$%k$r5-;v(B +$B$4$H$K0l$D3JG<$9$k$N$G!"(B@code{nnml} $B$NLsFsG\$NNL$N(B i$B%N!<%I$r;H$$$^$9!#(B +(@code{df -i} $B$r;H$C$F(B i$B%N!<%I$N3d$jEv$F$,$I$l$[$I$?$/$5$s$"$k$+$rD4$Y$F(B +$B2<$5$$!#(B) $B$=$N$?$a$KCY$/$J$C$?$jB?$/$N>l=j$r$NHs%V%m%C%/9=B$$N%U%!%$%k(B +$B%7%9%F%`$X$NE>49$r8!F$$7$F2<$5$$!#(B + +maildir $B$O@\JN,$G$-$k$3$H$r0UL#$7$^$9!#(B@code{mail-sources} $B$K$*$1(B +$B$k(B @code{directory} $B$N9`$K$O;w$?8z2L$,$"$j$^$9$,!"G[Aw$5$l$F$/$k%a!<%k$r(B +$B%9%W!<%k$9$k$?$a$N%a!<%k%\%C%/%9$N0lB7$$(B (mbox $B7A<0$G$O$=$N$?$a$K%a%C%;!<(B +$B%8$NK\J8$,2u$l$k(B) $B$H!"B>$N(B ($B2?$G$"$l$"$J$?$N9%$_$N7A<0$N(B) $B%0%k!<%W$H$7$F(B +$B;H$o$l$kAH$,I,MW$G$9!#(Bmaildir $B$O(B @code{new/} $B%5%V%G%#%l%/%H%j$KCV$+$l$k(B +$BAH$_9~$_%9%W!<%k$G$9!#%a!<%kJ,3d$,Fs=E%A%'%C%/$N$h$&$J07$$$re$2$k$?$a$K$+$J$j$NNL$N%a%b%j$r;H$$$^$9!#(B +(@code{nnml} $B$N>l9g$O%U%!%$%k$K3JG<$7!"(B@code{nnmh} $B$G$O2?EY$b5-;v%U%!%$(B +$B%k$r2r@O$7$FF@$k$b$N$4$H$r!"$=$l$O%a%b%j>e$KJ];}$7$^$9!#(B) $B$3$l$,$"$J$?$K(B +$B$H$C$FLdBj$J$i$P!"(B@code{nov-cache-size} $B%0%k!<%W%Q%i%a!<%?$r2?$+>.$5$J(B +$BCM(B (0 $B$O$*$=$i$/$@$a$@$,(B 1 $B$@$C$?$i$?$V$sF0$/(B) $B$K@_Dj$9$k$3$H$K$h$C$F!"(B +$B>/$J$$%a%b%j$r;H$&$h$&$K$9$k$3$H$,$G$-$^$9!#$3$N%-%c%C%7%e5!9=$O!"$*$=$i(B +$B$/>-Mh$O:o=|$5$l$k$G$7$g$&!#(B + +$B5/F0$OB>$N%P%C%/%(%s%I$h$j$b(B @code{nnmaildir} $B$,CY$$$G$7$g$&!#%U%!%$%k%7(B +$B%9%F%`$K0MB8$7$F$$$kItJ,0J30$N$9$Y$F$OB.$$$G$7$g$&!#(B + +@code{nnmaildir} $B$O(B @code{nnoo} $B$r;H$o$J$$$N$G!"(B@code{nnmaildir} $B$+$iGI(B +$B@8$7$?%P%C%/%(%s%I$r=q$/$N$K(B @code{nnoo} $B$O;H$($^$;$s!#(B +@end table + +@node Browsing the Web +@section Browsing the Web +@cindex web +@cindex browsing the web +@cindex www +@cindex http + +$B%&%'%V$K4p$E$$$?5DO@$N>l$O$I$s$I$s9-$^$C$F$$$^$9!#B?$/$NJ,Ln$G!"%&%'%V$N(B +$B7G<(HD$O:G$b=EMW$J>l$K$J$j!"%a!<%j%s%0%j%9%H$d%K%e!<%9%0%k!<%W$N=EMW@-$r(B +$BfJ$i$;$F$$$^$9!#M}M3$O4JC1$G$9(B---$B?7$7$$MxMQl(B +$B=j$r%/%j%C%/$9$k$@$1$G!"5DO@$N>l$,$"$j$^$9!#%a!<%j%s%0%j%9%H$G$O!"LLE]$J(B +$B9XFI/$7Hw$($D$D$"$j(B +$B$^$9!#(B + +@menu +* Archiving Mail:: +* Web Searches:: $BJ8;zNs$K%^%C%A$9$k5-;v$+$i%0%k!<%W$r:n$k(B +* Slashdot:: Slashdot $B$N%3%a%s%H$rFI$`(B +* Ultimate:: Ultimate Bulletin Board $B%7%9%F%`(B +* Web Archive:: $B%&%'%V$KJ]4I$5$l$?%a!<%j%s%0%j%9%H$rFI$`(B +* Web Newspaper:: $B%&%'%V$KJ]4I$5$l$??7J9$rFI$`(B +* RSS:: RDF Site Summary $B$rFI$`(B +* Customizing w3:: Gnus $B$+$i(B Emacs/W3 $B$rA`:n$9$k(B +@end menu + +@samp{Web Newspaper} $B$r=|$/$9$Y$F$N%&%'%V%=!<%9$O!"F0:n$5$;$k$?$a(B +$B$K(B Emacs/W3 $B$H(B url $B%i%$%V%i%j$,I,MW$G$9!#(B + +$B$3$l$i$N%&%'%V%=!<%9$N0lHV$NLdBj$OD94|4V$OF0:n$7$J$$2DG=@-$,9b$$$3$H$G$9!#(B +@acronym{HTML} $B%G!<%?$+$i>pJs$r=8$a$k$N$O$;$$$<$$?dB,$G!"9=B$$,JQ2=$7$?(B +$B$H$-$K$O!"(BGnus $B%P%C%/%(%s%I$OF0:n$7$^$;$s!#$G$b!"$"$kDxEY?7$7$$%P!<%8%g(B +$B%s$N%P%C%/%(%s%I$r;H$C$F$$$l$PBg>fIW$N$O$:$G$9!#(B + +$B$3$l$i$N%&%'%VJ}K!$K6&DL$9$k$3$H$O!"%&%'%V%=!<%9$O$7$P$7$PMn$A$F$$$?$j!"(B +$B;HMQ2DG=$G$J$+$C$?$j!"C1=c$K3Z$7$`$K$OCY$9$.$k$3$H$,$"$k!"$H$$$&$3$H$G$9!#(B +$B$=$&$$$&>l9g$K$O!"(BGnu Agent (@pxref{Gnus Unplugged}) $B$K5-;v$N%@%&%s%m!<(B +$B%I$rG$$;$F!"%m!<%+%k%G%#%9%/$+$i9%$-$J$H$-$KFI$`$h$&$K$9$k$3$H$,$G$-$^$9!#(B +$B$3$l$G!"(BWorld Wide Wait $B$H$O$*$5$i$P$G$9!#(B + +@node Archiving Mail +@subsection $B%a!<%k$NJ]B8(B +@cindex archiving mail +@cindex backup of mail + +$B$$$/$D$+$N%P%C%/%(%s%I!"FC$K(B @code{nnml}, @code{nnfolder} $B$*$h(B +$B$S(B @code{nnmaildir} $B$O!"$=$l$>$l$N%0%k!<%W$N5-;v$N0u$rK\Ev$KJ];}$7$^$9!#(B +$B$3$l$i$N%5!<%P!<$G!"%0%k!<%W$N0u$rJ]$A$D$DJ]B8$7$?$j85$KLa$9$N$O$+$J$j4J(B +$BC1$G$9!#(B + +($B$G$b!"%0%k!<%W%l%Y%k$H%0%k!<%W%Q%i%a!<%?$r$bJ];}$9$k$K$O!":#$^$G$H$*(B +$B$j(B @file{.newsrc.eld} $B$N?@$K!"Iq$$$H@8lS$rJ{$2$J$1$l$P$J$j$^$;$s$,!#(B) + +@code{nnml}, @code{nnfolder} $B$^$?$O(B @code{nnmaildir} $B%5!<%P!<$K$^$k$4$H(B +$BJ]B8$9$k$K$O!"%5!<%P!<$N%G%#%l%/%H%j$r:F5"E*$K%3%T!<$7$^$9!#(BGnus $B$r=*N;(B +$B$9$kI,MW$OL5$$$N$G!"J]B8$O(B @code{cron} $B$d$=$l$KN`$9$k$b$N$,9T$J$&$3$H$,(B +$B$G$-$^$9!#%G!<%?$rI|5"$5$;$k$K$O%G%#%l%/%H%jLZ(B (tree) $B$r85$KLa$9$3$H$G9T(B +$B$J$$!"$=$N%G%#%l%/%H%j$r;X$7<($9$h$&$K(B Gnus $B$N%5!<%P!<$NDj5A$KDI2C$7$^$9!#(B +@ref{Article Backlog}, @ref{Asynchronous Fetching} $B$*$h$S$=$NB>$O!"%G!<(B +$B%?$r>e=q$-$7$FJ}$r%3%T!<$9$kI,MW$,$"$j$^$9!#%0%k!<%W$r85$KLa$9(B +$B$N$O!"%0%k!<%W%P%C%U%!$G(B @kbd{G m} $B%-!<$r;H$$$^$9!#$=$N:G8e$Nl9g(B @kbd{G m} $B$OITMW$G$9!#(B + +@node Web Searches +@subsection $B%&%'%V8!:w(B +@cindex nnweb +@cindex Google +@cindex dejanews +@cindex gmane +@cindex Usenet searches +@cindex searching the Usenet + +$B$=$l$O!"$J$s$H$$$&$+!"(BUsenet $B$+$iJ8;zNs$K%^%C%A$9$k5-;v$r8!:w$9$k$N$O$H(B +$B$F$bAG@2$i$7$$$s$@$1$I!"$=$N!"$"$N%&%'%V%V%i%&%6!<$C$F$d$D$r;H$C$F!"$=$s(B +$B$G$b$C$F!"@kEA$rFI$^$;$i$l$k$C$F$$$&$N$O!"$=$N!"$J$s$H$$$&$+!"$[$s$H$&(B +$B$K(B @emph{$B!VITMM$M!W(B} $B$H$$$&$+!"$=$l$G!"(BGnus $B$G$O%V%i%&%6!<$r;H$o$:$K!"$=(B +$B$N!"(B@emph{$BD6$+$C$3$h$/(B}$B$=$l$,$G$-$k!"$C$F$3$H$G$9!#(B + +@code{nnweb} $B%P%C%/%(%s%I$O!"6/NO$J8!:w%(%s%8%s$KBP$7$F4JC1$J%$%s%?!<%U%'!<(B +$B%9$rDs6!$7$^$9!#(B@code{nnweb} $B%0%k!<%W$r:n@.$7!"8!:w%Q%?!<%s$rF~NO$7!"$=(B +$B$7$F$=$N%0%k!<%W$KF~$C$FB>$NIaDL$N%0%k!<%W$N$h$&$K5-;v$rFI$_$^$9!#%0%k!<(B +$B%W%P%C%U%!(B (@pxref{Foreign Groups}) $B$N(B @kbd{G w} $BL?Na$K$h$C$F$*%s!&%G!<%H%k(B} ($BB8:_M}M3(B) $B$G$"$j!"A[%5!<%P!$K$J$C$F$$$k$3$H$KCm0U$7$F2<$5$$!#(B + +@item nnweb-search +@vindex nnweb-search +$B8!:w%(%s%8%s$KM?$($k8!:wJ8;zNs!#(B + +@item nnweb-max-hits +@vindex nnweb-max-hits +$BI=<($9$k8!:w7k2L$N:GBg?t!#=i4|CM$O(B 999 $B$G$9!#(B + +@item nnweb-type-definition +@vindex nnweb-type-definition +$B7?!&Dj5AO"A[%j%9%H!#$3$NO"A[%j%9%H$O!"$5$^$6$^$J8!:w%(%s%8%s$N$l$N?7$7$$%K%e!<%95-;v$r?7$7(B +$B$$(B Gnus $B$N%0%k!<%W$H$7$F9XFI$7!"$3$l$i$N%0%k!<%W$KF~$k$3$H$G%3%a%s%H$rFI(B +$B$`$3$H$,$G$-$^$9!#(B($B=i4|@_Dj$N9XFIJ}K!$G$O!"?7$7$$%0%k!<%W$r%>%s%S$H$7$F(B +$B9XFI$9$k$3$H$KCm0U$7$F$/$@$5$$!#B>$NJ}K!$b;H$($^(B +$B$9(B (@pxref{Subscription Methods})$B!#(B + +$B$b$7$"$J$?$,8E$$(B @code{nnslashdot} $B%0%k!<%W$r:o=|$7$?$$$N$J$i$P!"(B +@kbd{G DEL} $B$,:G$b/$7(B @acronym{HTML} $B$KJQ49$5$l$^$9!#FC$K!"(B@samp{> } $B$G0zMQ(B +$B$5$l$?%F%-%9%H$O$=$NBe$o$j$K(B @samp{blockquote} $B$G0zMQ$5$l!"=pL>$K$O$=$l(B +$B$>$l$N9T$N:G8e$K(B @samp{br} $B$,DI2C$5$l$^$9!#$=$l0J30$O!"%a%C%;!<%8%P%C%U%!(B +$B$KD>@\(B @acronym{HTML} $B$r=q$/$3$H$,$G$-$^$9!#(BSlashdot $B$O$$$/$D(B +$B$+(B @acronym{HTML} $B$rA*JL$9$k$3$H$K5$$r$D$1$F$/$@$5$$!#(B + +$B0J2<$NJQ?t$G?6$kIq$$$rJQ$($k$3$H$,$G$-$^$9(B: + +@table @code +@item nnslashdot-threaded +@code{nnslashdot} $B$,%0%k!<%W$r%9%l%C%I$GI=<($9$k$+$I$&$+!#=i4|CM(B +$B$O(B @code{t} $B$G$9!#%9%l%C%I$rI=<($G$-$k$?$a$K$O!"(B@code{nnslashdot} $B$O%0%k!<(B +$B%W$KF~$k:]$K$=$NA4$F$N%3%a%s%H$r$G$9!#(B + +@item nnslashdot-password +@vindex nnslashdot-password +$BEj9F;~$K;H$&%Q%9%o!<%I$G$9!#(B + +@item nnslashdot-directory +@vindex nnslashdot-directory +@code{nnslashdot} $B$,%U%!%$%k$rJ]B8$9$k>l=j$G$9!#=i4|CM(B +$B$O(B @file{~/News/slashdot/} $B$G$9!#(B + +@item nnslashdot-active-url +@vindex nnslashdot-active-url +$B%K%e!<%95-;v$H%3%a%s%H$ruBV$KJ]$C$F$*$/$?$a$K>pJs$rF@$k$3$H$,2D(B +$BG=$G$9!#(B + +@code{nnultimate} $B$r;O$a$k$?$a$N0lHV4JC1$JJ}K!$O%0%k!<%W%P%C%U%!$G0J2<$N(B +$B$h$&$J$b$N$r$9$k$3$H$G$9(B: @kbd{B nnultimate RET +http://www.tcj.com/messboard.ubbcgi/ RET}$B!#(B($B6=L#$N$"$k2q5D<<(B +$B$N(B @acronym{URL} (@samp{Ultimate.cgi} $BEy$r:G8e$K4^$s$G$$$J$$$b$N(B) $B$KJQ$((B +$B$F$/$@$5$$!#(BUltimate $B%&%'%V%5%$%H$K$O$?$/$5$s5s$2$i$l$F$$$^$9!#(B) $B$=$l$+(B +$B$i%5!<%P!<%P%C%U%!$G6=L#$N$"$k%0%k!<%W$r9XFI$7!"%0%k!<%W%P%C%U%!$+$i$=$l(B +$B$i$rFI$s$G$/$@$5$$!#(B + +$B0J2<$N(B @code{nnutimate} $BJQ?t$rJQ992DG=$G$9(B: + +@table @code +@item nnultimate-directory +@vindex nnultimate-directory +@code{nnultimate} $B$,%U%!%$%k$rJ]B8$9$k%G%#%l%/%H%j!<$G$9!#=i4|CM(B +$B$O(B @file{~/News/ultimate/} $B$G$9!#(B +@end table + +@node Web Archive +@subsection Web Archive +@cindex nnwarchive +@cindex Web Archive + +$B%a!<%j%s%0%j%9%H$NCf$K$ONc$($P!"(B +@uref{http://www.egroups.com/} $B$d(B @uref{http://www.mail-archive.com/} $B$N(B +$B$h$&$K%&%'%V%5!<%P!<$K$7$+%"!<%+%$%V$,L5$$$b$N$b$"$j$^$9!#$H$F$b@0A3$H$7(B +$B$FNI$$3&LL$G!"(BGnus $B$,%0%k!<%W$r:G?7$N>uBV$KJ]$C$F$*$/$?$a$K>pJs$rF@$k$3(B +$B$H$,2DG=$G$9!#(B + +@findex gnus-group-make-warchive-group +@code{nnwarchive} $B$r;O$a$k$?$a$N0lHV4JC1$JJ}K!$O%0%k!<%W%P%C%U%!$G0J2<$N(B +$B$h$&$J$b$N$r$9$k$3$H$G$9(B: @kbd{M-x gnus-group-make-warchive-group RET +@var{an_egroup} RET egroups RET www.egroups.com RET +@var{your@@email.address} RET}$B!#(B(@var{an_egroup} $B$r9XFI$7$F$$$k%a!<%j%s(B +$B%0%j%9%H$K!"(B@var{your@@emailaddress} $B$rEE;R%a!<%k%"%I%l%9$KCV$-49$($F2<(B +$B$5$$!#(B) $B$^$?$O(B @kbd{B nnwarchive RET mail-archive RET} $B$G%P%C%/%(%s%I$r(B +$B%V%i%&%:$7$F2<$5$$!#(B + +$B0J2<$N(B @code{nnwarchive} $BJQ?t$rJQ$($k$3$H$,2DG=$G$9(B: + +@table @code +@item nnwarchive-directory +@vindex nnwarchive-directory +@code{nnwarchive} $B$,%U%!%$%k$rJ]B8$9$k%G%#%l%/%H%j!<$G$9!#=i4|CM(B +$B$O(B @file{~/News/warchive} $B$G$9!#(B + +@item nnwarchive-login +@vindex nnwarchive-login +$B%&%'%V%5!<%P!<$G$N%"%+%&%s%HL>$G$9!#(B + +@item nnwarchive-passwd +@vindex nnwarchive-passwd +$B%&%'%V%5!<%P!<$G$N%"%+%&%s%H$N%Q%9%o!<%I$G$9!#(B +@end table + +@node RSS +@subsection RSS +@cindex nnrss +@cindex RSS + +$B$$$/$D$+$N%5%$%H$O(B RDF site summary (@acronym{RSS}) $B$r;}$C$F$$$^$9!#(B +@acronym{RSS} $B$O!"%K%e!<%9$K4XO"$9$k%5%$%H(B (BBC $B$d(B CNN $B$N$h$&$J(B) $B$No$K?7$7$/$7$F$*$/$?$a$N>pJs$rF@$k$3$H$,$G$-$^$9!#(B + +$BCm(B: @code{utf-8} coding system $B$r%5%]!<%H$9$k(B Emacs $B$r;H$&$N$,NI$$$G$9!#(B +@acronym{RSS} $B$O!"Hs(B-@acronym{ASCII} $B%F%-%9%H$r%(%s%3!<%I$9$k$?$a$K!"%G%#(B +$B%U%)%k%H$G(B UTF-8 $B$r;H$&$+$i$G$9!#$=$l$O$^$?!"%G%#%U%)%k%H$G(B +$BHs(B-@acronym{ASCII} $B%0%k!<%WL>$K$b;H$o$l$^$9!#(B + +@kindex G R ($B35N,(B) +Feed $B$r9VFI$9$k$K$O!"35N,%P%C%U%!$+$i(B @kbd{G R} $B$r;H$C$F2<$5$$(B---feed $B$N(B +$B=j:_!"%?%$%H%k$*$h$S@bL@$NF~NO$r5a$a$i$l$k$G$7$g$&!#%?%$%H%k$O$I$s$JJ8;z(B +$B$G$b$h$/!"$=$l$O%0%k!<%WL>$H%0%k!<%W$N%G!<%?!&%U%!%$%k$NL>A0$K;H$o$l$^$9!#(B +$B@bL@$O>JN,$G$-$^$9!#(B + +$B4JC1$K(B @code{nnrss} $B$r$O$8$a$kJ}K!$O!"%0%k!<%W%P%C%U%!$G(B @kbd{B nnrss +RET RET y} $B$N$h$&$J$3$H$r>'$(!"$=$7$F%0%k!<%W$r9VFI$9$k$3$H$G$9!#(B + +@code{nnrss} $B%P%C%/%(%s%I$O!"$=$l$>$l$N(B @code{nnrss} $B%0%k!<%W$N$?$a$N%G!<(B +$B%?!&%U%!%$%k$r(B @code{nnrss-directory} ($B2<5-;2>H(B) $B$KJ]B8$7$^$9!#(B +$BHs(B-@acronym{ASCII} $BJ8;z$r4^$s$G$$$k%U%!%$%kL>(B +$B$O!"(B@code{nnmail-pathname-coding-system} $BJQ?t$G;XDj$5$l$?(B coding +system $B$G%(%s%3!<%I$5$l$^$9!#$=$l$,(B @code{nil} $B$G$"$k$H!"(BEmacs $B$G(B +$B$O(B coding system $B$O%G%#%U%)%k%H(B +$B$G(B @code{default-file-name-coding-system} $B$NCM$K$J$j$^$9!#$"$J$?(B +$B$,(B XEmacs $B$r;H$C$F$$$F!"Hs(B-@acronym{ASCII} $B%0%k!<%WL>$r;H$$$?$1$l$P!"(B +@code{nnmail-pathname-coding-system} $BJQ?t$NCM$rE,@Z$K@_Dj$7$J$1$l$P$J$j(B +$B$^$;$s!#(B + +@cindex OPML +$B$"$J$?$N9VFIL\O?$r(B @acronym{OPML} $B%U%)!<%^%C%H(B (Outline Processor Markup +Language) $B$G%m!<%I(B/$B%;!<%V$9$k$?$a$K!"0J2<$N%3%^%s%I$r;H$&$3$H$b$G$-$^$9!#(B + +@defun nnrss-opml-import file +@acronym{OPML} $B%U%!%$%k$NF~NO$rB%$7!"$=$N%U%!%$%k$K$"$k$=$l$>$l(B +$B$N(B feed $B$r9VFI$7$^$9!#(B +@end defun + +@defun nnrss-opml-export +$B8=:_$N(B @acronym{RSS} $B9VFIL\O?$r(B @acronym{OPML} $B%U%)!<%^%C%H$G%P%C%U%!$K(B +$B=q$-=P$7$^$9!#(B +@end defun + +$B0J2<$N(B @code{nnrss} $BJQ?t$,JQ992DG=$G$9(B: + +@table @code +@item nnrss-directory +@vindex nnrss-directory +@code{nnrss} $B$,%U%!%$%k$r=q$-9~$`%G%#%l%/%H%j!<$G!"%G%#%U%)%k%H(B +$B$O(B @file{~/News/rss/} $B$G$9!#(B + +@item nnrss-file-coding-system +@vindex nnrss-file-coding-system +@code{nnrss} $B%0%k!<%W$N%G!<%?!&%U%!%$%k$rFI$_=q$-$9$k$H$-$K;H$o$l(B +$B$k(B coding system $B$G$9!#%G%#%U%)%k%H(B +$B$O(B @code{mm-universal-coding-system} $B$NCM(B ($B$=$N%G%#%U%)%k%H$O(B Emacs $B$G(B +$B$O(B @code{emacs-mule}$B!"(BXEmacs $B$G$O(B @code{escape-quoted}) $B$G$9!#(B + +@item nnrss-use-local +@vindex nnrss-use-local +@findex nnrss-generate-download-script +@code{nnrss-use-local} $B$r(B @code{t} $B$K@_Dj$9$k$H!"(B +@code{nnrss} $B$O(B @code{nnrss-directory} $B$K$"$k%m!<%+%k%U%!%$%k$+$i(B feed +$B$rFI$_$^$9!#(B@code{nnrss-generate-download-script}$B%3%^%s%I$r;H$&$3$H$K$h$C(B +$B$F!"(B@command{wget} $B$r;H$C$?%@%&%s%m!<%I!&%9%/%j%W%H$r:n$k$3$H$,$G$-$^$9!#(B +@end table + +$B35N,%P%C%U%!$K@bL@$rI=<($5$;$?$$$J$i$P!"0J2<$N%3!<%I$,Lr$KN)$D$G$7$g$&!#(B + +@lisp +(add-to-list 'nnmail-extra-headers nnrss-description-field) +(setq gnus-summary-line-format "%U%R%z%I%(%[%4L: %-15,15f%]%) %s%uX\n") + +(defun gnus-user-format-function-X (header) + (let ((descr + (assq nnrss-description-field (mail-header-extra header)))) + (if descr (concat "\n\t" (cdr descr)) ""))) +@end lisp + +$B0J2<$N%3!<%I$O!"35N,%P%C%U%!$+$iD>@\(B nnrss $B$N(B url $B$r%*!<%W%s$9$k$N$KJXMx(B +$B$+$b$7$l$^$;$s!#(B +@lisp +(require 'browse-url) + +(defun browse-nnrss-url( arg ) + (interactive "p") + (let ((url (assq nnrss-url-field + (mail-header-extra + (gnus-data-header + (assq (gnus-summary-article-number) + gnus-newsgroup-data)))))) + (if url + (progn + (browse-url (cdr url)) + (gnus-summary-mark-as-read-forward 1)) + (gnus-summary-scroll-up arg)))) + +(eval-after-load "gnus" + #'(define-key gnus-summary-mode-map + (kbd "") 'browse-nnrss-url)) +(add-to-list 'nnmail-extra-headers nnrss-url-field) +@end lisp + +@node Customizing w3 +@subsection w3 $B$N%+%9%?%^%$%:(B +@cindex w3 +@cindex html +@cindex url +@cindex Netscape + +Gnus $B$O%&%'%V%Z!<%8$rH$5$;(B +$B$k$K$O$I$&$7$?$i$h$$$+!"$H$$$&$N$,$"$j$^$9!#0J2<$O0l$D$NJ}K!$G$9!#(B + +@lisp +(eval-after-load "w3" + '(progn + (fset 'w3-fetch-orig (symbol-function 'w3-fetch)) + (defun w3-fetch (&optional url target) + (interactive (list (w3-read-url-with-default))) + (if (eq major-mode 'gnus-article-mode) + (browse-url url) + (w3-fetch-orig url target))))) +@end lisp + +$B$3$l$r$"$J$?$N(B .emacs $B%U%!%$%k$K=q$-9~$`$3$H$K$h$C$F!"(BGnus $B$N5-;v%P%C%U%!(B +$B$G(B @acronym{HTML} $B%j%s%/$rC!$1$P!"(B@code{browse-url} $B$r;H$C$F$=$N%j%s%/$r(B +$B;2>H$9$k$h$&$K$J$k$G$7$g$&!#(B + +@node IMAP +@section IMAP +@cindex nnimap +@cindex @acronym{IMAP} + +@acronym{IMAP} $B$O%a!<%k(B ($B$b$7$/$O!"%K%e!<%9!"$b$7$/$O(B @dots{}) $B$rFI$`$?(B +$B$a$N%M%C%H%o!<%/%W%m%H%3%k$G$9!#8=BeIw$N(B @acronym{NNTP} $B$H9M$($F$/$@$5$$!#(B +@acronym{IMAP} $B%5!<%P!<$X$N@\B3$O%K%e!<%9%5!<%P!<$X$N@\B3$HHs>o$K;w$F$$(B +$B$F!"$=$N%5!<%P!<$N%M%C%H%o!<%/%"%I%l%9$r;XDj$9$k$@$1$K$J$C$F$$$^$9!#(B + +@acronym{IMAP} $B$K$OFs$D$NFCH$7$F2<$5$$!#(B + +@acronym{IMAP} $B$r%a!<%k$rCyB"$9$k%W%m%H%3%k$H$7$F;H$$$?$$$H$-$O!"(B +@code{gnus-secondary-select-methods} $B$K(B nnimap $B$rEPO?$7$F2<$5$$!#$3$l$K(B +$B$h$C$F(B Gnus $B$O(B @acronym{IMAP} $B%5!<%P!<$KCyB"$5$l$F$$$k%a!<%k$rA`:n$9$k$h(B +$B$&$K$J$j$^$9!#$3$l$,$3$3$G@bL@$9$k;H$$J}$G$9!#(B + +$B$$$/$D$+$N(B @acronym{IMAP} $B%5!<%P!<$r(B @file{~/.gnus.el} $B$G@_Dj$9$k$H!"$?(B +$B$V$s0J2<$N$h$&$J$b$N$K$J$k$G$7$g$&!#(B($BCm(B: @acronym{TLS}/@acronym{SSL} $B$G(B +$B$O30It%W%m%0%i%`$H%i%$%V%i%j$,I,MW$G$9!#0J2<$r;2>H$7$F2<$5$$!#(B) + +@lisp +(setq gnus-secondary-select-methods + '((nnimap "simpleserver") ; @r{$BIaDL$N@_Dj(B} + ; @r{SSH $B%]!<%H$r%U%)%o!<%I$7$?%5!<%P!<(B:} + (nnimap "dolk" + (nnimap-address "localhost") + (nnimap-server-port 1430)) + ; @r{$B%m!<%+%k%[%9%H$G1?E>$7$F$$$k(B UW $B%5!<%P!<(B:} + (nnimap "barbar" + (nnimap-server-port 143) + (nnimap-address "localhost") + (nnimap-list-pattern ("INBOX" "mail/*"))) + ; @r{$BF?L>$G;H$($k(B cyrus $B$N8x=0%5!<%P!<(B:} + (nnimap "cyrus.andrew.cmu.edu" + (nnimap-authenticator anonymous) + (nnimap-list-pattern "archive.*") + (nnimap-stream network)) + ; @r{$BI8=`$G$O$J$$%]!<%H$N(B @acronym{SSL} $B%5!<%P!<(B:} + (nnimap "vic20" + (nnimap-address "vic20.somewhere.com") + (nnimap-server-port 9930) + (nnimap-stream ssl)))) +@end lisp + +$B?7$7$$%5!<%P!<$rDj5A$7$?8e$G!"(B@kbd{U} $B$N$h$&$J(B Gnus $B$NDL>o$N%3%^%s%I$r%0(B +$B%k!<%W%P%C%U%!$G;H$&(B (@pxref{Subscription Commands}) $B$+!"$^$?$O%5!<%P!<(B +$B%P%C%U%!(B (@pxref{Server Buffer}) $B$r2p$7$F!"$=$N%5!<%P!<$N%0%k!<%W$r9VFI(B +$B$9$k$3$H$,$G$-$^$9!#(B + +$B0J2<$NJQ?t$O2>A[(B @code{nnimap} $B%5!<%P!<$r:n@.$9$k$?$a$K;H$&$3$H$,$G$-$^(B +$B$9!#(B + +@table @code +@item nnimap-address +@vindex nnimap-address + +$B1s3V(B @acronym{IMAP} $B%5!<%P!<$N%"%I%l%9$G$9!#;XDj$5$l$F$$$J$$>l9g$O2>A[%5!<(B +$B%P!<$N$b$N$K$J$j$^$9!#(B + +@item nnimap-server-port +@vindex nnimap-server-port +$B@\B3$r;n$_$k%5!<%P!<$N%]!<%H$G$9!#%G%#%U%)%k%H$O%]!<%H(B 143$B!"$^$?(B +$B$O(B @acronym{TLS}/@acronym{SSL} $B$G$O(B 993 $B$G$9!#(B + +$B$3$l$O@0?t$G$J$1$l$P$J$j$^$;$s!#0J2<$O%5!<%P!<;XDj$NNc$G$9!#(B + +@lisp +(nnimap "mail.server.com" + (nnimap-server-port 4711)) +@end lisp + +@item nnimap-list-pattern +@vindex nnimap-list-pattern +$B;HMQ2DG=$J%a!<%k%\%C%/%9$r@)8B$9$k$?$a$NJ8;zNs$+%j%9%H$G$9!#$3$l$O!"%5!<(B +$B%P!<$KHs>o$KB?$/$N%a!<%k%\%C%/%9$,$"$k$1$l$I!"6=L#$N$"$k$b$N$O>/$7$@$1$G(B +$B$"$k$H$-$K;HMQ$7$^$9!#%5!<%P!<$K$O%[!<%`%G%#%l%/%H%j!<(B +$B$r(B @acronym{IMAP} $B7PM3$G=P$9$b$N$b$"$j$^$9$N$G!"$=$N>l9g$O$*$=$i$/%a!<%k(B +$B%\%C%/%9$r(B @file{~/Mail/*} $B$K@)8B$7$?$$$G$7$g$&!#(B + +$BJ8;zNs$O(B REFERENCE $B$H>e$NJ8;zNs$H$N(B cons $B$G$"$k$3$H$b$G$-$^$9!#$I(B +$B$N(B REFERENCE $B$,;HMQ$5$l$k$+$O%5!<%P!Z$K$h$k(B @acronym{IMAP} $B@\B3$r5/F0(B +$B$9$k$?$a$N%3%^%s%I9T$N%j%9%H$r;XDj$7$^$9!#$3$l$i$O@\B3$,3NN)$9$k$^$G!"$^(B +$B$?$O%j%9%H$,;H$$?T$/$5$l$k$^$G!"=g$0$j$K;n$5$l$^$9!#%G%#%U%)%k%H$G$O!"(B +@uref{http://www.gnu.org/software/gsasl/} $B$K$"$k(B GNU SASL $B$K$h(B +$B$k(B @samp{gsasl} $B$H!"(BCyrus IMAPD $B$K$h$k(B @samp{imtest} $B%W%m%0%i(B +$B%`(B (@code{imap-kerberos4-program} $B;2>H(B) $B$,;n$5$l$^$9!#(B + +@vindex imap-ssl-program +@acronym{SSL} $B@\B3$N$?$a$N(B OpenSSL $B%W%m%0%i%`(B +$B$O(B @uref{http://www.openssl.org/} $B$+$iF~l9g!"JQ(B +$B?t(B @code{imap-shell-program} $B$O2?$N%W%m%0%i%`$r8F$V$+$r;XDj$7$^$9!#(B + +@item nnimap-authenticator +@vindex nnimap-authenticator + +$B%5!<%P!<$K@\B3$9$k$?$a$K;H$o$l$kG'>Z$G$9!#=i4|@_Dj$G$O!"(Bnnimap $B$O%5!<%P!<(B +$B$,;HMQ2DG=$J0lHV0BA4$JG'>Z$r;HMQ$7$^$9!#(B + +$B0J2<$O%5!<%P!<;XDj$NNc$G$9!#(B + +@lisp +(nnimap "mail.server.com" + (nnimap-authenticator anonymous)) +@end lisp + +@code{nnimap-authenticator} $B$NCM$O%7%s%\%k$G$J$1$l$P$J$i$J$$$3$H$KCm0U$7(B +$B$F2<$5$$(B! + +@itemize @bullet +@item +@dfn{gssapi:} GSSAPI ($BIaDL$O(B Kerberos 5) $BG'>Z$G$9!#30It%W%m%0%i(B +$B%`(B @code{gsasl} $B$^$?$O(B @code{imtest} $B$,I,MW$G$9!#(B +@item +@dfn{kerberos4:} Kerberos 4 $B$K$h$kG'>Z$G$9!#30It%W%m%0%i(B +$B%`(B @code{imtest} $B$,I,MW$G$9!#(B +@item +@dfn{digest-md5:} DIGEST-MD5 $B$G0E9f2=$5$l$?(B $BMxMQ(B/$B%Q%9%o!<%I(B $B$G$9!#30(B +$BIt%i%$%V%i%j(B @file{digest-md5.el} $B$,I,MW$G$9!#(B +@item +@dfn{cram-md5:} CRAM-MD5 $B$G0E9f2=$5$l$?(B $BMxMQ(B/$B%Q%9%o!<%I(B $B$G$9!#(B +@item +@dfn{login:} LOGIN $B7PM3$G$N@8$N(B $BMxMQ(B/$B%Q%9%o!<%I(B $B$G$9!#(B +@item +@dfn{anonymous:} $BEE;R%a!<%k%"%I%l%9$r%Q%9%o!<%I$H$7$FM?$(!"(B +``anonymous'' $B$H$7$F%m%0%$%s$7$^$9!#(B +@end itemize + +@item nnimap-expunge-on-close +@cindex expunging +@vindex nnimap-expunge-on-close + +$B%Q%k%a%K%G%9$H0c$C$F!"(B@acronym{IMAP} $B$N@_7W\$7$/@bL@$9$k$H!"(B +@acronym{IMAP} $B$OC5n$7$J$$!"5-;v$K(B @code{Deleted} $B$H$$$&(B +$B0u$rIU$1$k35G0$,$"$j!"$3$l(B ($B$($C$H!"(B@code{Deleted} $B$H$$$&0u$rIU$1$k$3$H(B +$B$G$9(B) $B$,(B nnimap $B$,(B Gnus $B$G5-;v$r>C5n$9$k$H$-$K$9$k$3$H$G(B +$B$9(B (@kbd{B DEL} $B$J$I$G(B)$B!#(B($BLuCm(B: $B%Q%k%a%K%G%9$O5*85A0(B 5 $B@$5*$N%.%j%7%"(B +$B$N(B Elea $BGI$NE/3XC5n$5$l$F$$$J$$$N(B +$B$G!"C5n$9$k$?$a$NJ}K!$,I,MW$H$J$j$^$9!#=[4D$7$F$$$k$h$&$K46$8$^$9(B +$B$+(B? + +$BEAE}E*$K!"(Bnnimap $B$O%a!<%k%\%C%/%9$rJD$8$k$H$-$K(B @code{Deleted} $B$H$$$&0u(B +$B$NIU$$$?A4$F$N5-;v$r>C5n$7$F$-$^$7$?$,!":#$O%5!<%P!C5n$7$^$9!#(B +@item never +$B7h$7$F5-;v$r>C5n$7$^$;$s!#8=:_$O!">C5n$N0u$,IU$$$?5-;v$r(B nnimap $B$GI=<($9(B +$B$kJ}K!$O$"$j$^$;$s$,!"B>$N(B @acronym{IMAP} $B%/%i%$%"%s%H$O$G$O$G$-$k$+$b$7(B +$B$l$^$;$s!#C5n$5$l$?5-;v$r:o=|$9$k$+$I$&$+(B +$B$r?R$M$^$9!#(B +@end table + +@item nnimap-importantize-dormant +@vindex nnimap-importantize-dormant + +$BHs(B-@code{nil} ($B%G%#%U%)%k%H(B) $B$@$C$?$i!"B>$N(B @acronym{IMAP} $B%/%i%$%"%s%H(B +$B$N$?$a$KJ]N15-;v$r0uIU$-$H$7$F$b0u$rIU$1$^$9!#(BGnus $B$NFbIt$G$O!"J]N15-;v(B +$B$O85!9$9$G$KJ]N15-;v$H$7$F$N$_0u$,IU$1$i$l$F$$$^$9!#$3$l$O!"B>(B +$B$N(B @acronym{IMAP} $B%/%i%$%"%s%H$K$*$1$kJ]N15-;v$r!"$"$?$+$b0uIU$-$N$h$&$K(B +$B$-$oN)$?$;$^$9!#(B($BJL$N8@$$J}$r$9$k$H!"(BGnus $B$OFs$D$N0u$rIU$1!"(B +@acronym{IMAP} $B$O$?$C$?0l$D$@$H$$$&$3$H$G$9!#(B) + +$B$?$V$s$3$l$r$$$8$j$^$o$9$N$O!"$"$J$?$,%f!<%6C10L$NJ]N1%U%i%0$rIU$1$h$&$H(B +$B$9$k$@$1$NM}M3$K$h$k$G$7$g$&!#$3$s$J46$8$G(B: + +@lisp +(setcdr (assq 'dormant nnimap-mark-to-flag-alist) + (format "gnus-dormant-%s" (user-login-name))) +(setcdr (assq 'dormant nnimap-mark-to-predicate-alist) + (format "KEYWORD gnus-dormant-%s" (user-login-name))) +@end lisp + +$B$3$N>l9g!"$"$J$?$O%f!<%6C10L$NJ]N1%U%i%0$r!"B>$N%f!<%6$K0uIU$-$H$7$F8+$i(B +$B$l$?$/$J$$$H;W$C$F$$$^$9!#(B + +@item nnimap-expunge-search-string +@cindex expunging +@vindex nnimap-expunge-search-string + +$B$3$NJQ?t$K$O!"4|8B@Z$l>C5n$9$k$N$,K>$^$7$$5-;v$rC5$9$H$-$K%5!<%P!<$KAw$C(B +$B$?(B @acronym{IMAP} $B$N8!:w%3%^%s%I$,F~$C$F$$$^$9!#%G%#%U%)%k%H(B +$B$O(B @code{"UID %s NOT SINCE %s"} $B$G!"$3$3$G:G=i$N(B @code{%s} $B$O(B UID $B$GCV$-(B +$B49$($i$l!"FsHVL\$N(B @code{%s} $B$OF|IU$GCV$-49$($i$l$^$9!#(B + +$B$?$V$s;H$$$b$N$K$J$kJL$NCM$O(B @code{"UID %s NOT SENTSINCE %s"} $B$G!"(B +nnimap $B$K5-;v$NFbItE*$JF|IU$NBe$o$j$K(B Date: $B$r;H$&$h$&$K$5$;$^$9!#$5$i$J(B +$B$k>pJs$d;H$&$3$H$,$G$-$kJ8;zNs$K$D$$$F$O!"(BRFC 2060 $B$N%;%/%7%g%s(B 6.4.4 $B$r(B +$B8+$F$/$@$5$$!#(B + +@item nnimap-authinfo-file +@vindex nnimap-authinfo-file + +$B%5!<%P$K%m%0%$%s$9$k$?$a$K;H$&G'>Z>pJs(B (authinfo) $B$r4^$`%U%!%$%k$G$9!#$=(B +$B$N7A<0$O(B ($B$[$H$s$I(B) @code{ftp} $B$N(B @file{~/.netrc} $B%U%!%$%k$HF1$8$G$9!#87(B +$BL)$JDj5A$O!"JQ?t(B @code{nntp-authinfo-file} $B$r8+$F2<$5$$!#$=$7(B +$B$F(B @ref{NNTP} $B$b8+$F2<$5$$!#(BIMAP $B%5!<%P!l9g!"$=(B +$B$l$O(B @code{port imap} $B$^$?$O(B @code{port 143} $B$G$J$1$l$P$J$i$J$$$3$H$KCm(B +$B0U$7$F2<$5$$!#JX59>e(B Gnus $B$O(B @code{port imap} $B$NF15A8l$H$7(B +$B$F(B @code{port imaps} $B$ru67$N85$G!"(B +$B4v$i$+$N%5!<%P!<$,!"$3$l$rI,MW$H$9$k$h$&$G$9!#(BCourier 1.7.1 $B$O$=$&$@$H$$(B +$B$&Js9p$,$"$j$^$7$?!#(B +@end table + +@menu +* Splitting in IMAP:: nnimap $B$G%a!<%k$rJ,3d$9$k(B +* Expiring in IMAP:: nnimap $B$K$h$k%a!<%k$N4|8B@Z$l>C5n(B +* Editing IMAP ACLs:: $B%a!<%k%\%C%/%9$X$NB>$NMxMQA06u4V$r;H$&(B($B;H$o$J$$(B)$BJ}K!(B +* Debugging IMAP:: $B$b$N$4$H$,F/$+$J$$$H$-$K$9$k$Y$-$3$H(B +@end menu + +@node Splitting in IMAP +@subsection IMAP $B$G$NJ,3d(B +@cindex splitting imap mail + +$BJ,3d$O(B Gnus $B$NMxMQl@j(B +$BM-N($rA}$7$F!"$$$/$D$b$N(B IMAP $B%5!<%P!<$K$h$C$F%5%]!<%H$5$l$k$h$&$K$J$j$^(B +$B$7$?!#9,$$$K(B Gnus $B$b$=$l$r%5%]!<%H$7$^$9!#(B@xref{Sieve Commands}.) + +$B4XO"$9$kJQ?t$O;0$D$G$9(B: + +@table @code +@item nnimap-split-crosspost +@cindex splitting, crosspost +@cindex crosspost +@vindex nnimap-split-crosspost + +@code{nil} $B$G$J$1$l$P!"$$$/$D$+$NJ,3dJ}K!$,%a!<%k$H9gCW$7$?$H$-$KAj8_Ej(B +$B9F$r$7$^$9!#(B@code{nil} $B$J$i$P!"(B@code{nnimap-split-rule} $B$G:G=i$K8+$D$+$C(B +$B$?$b$N$,;H$o$l$^$9!#(B + +Nnmail $B$GBP1~$9$k$b$N(B: @code{nnmail-crosspost}. + +@item nnimap-split-inbox +@cindex splitting, inbox +@cindex inbox +@vindex nnimap-split-inbox + +$BJ,3d$N85$H$J$k(B @acronym{IMAP} $B$N%a!<%k%\%C%/%9$NL>A0$r;XDj$7$?J8;zNs$+J8(B +$B;zNs$N%j%9%H$G$9!#=i4|CM$O(B @code{nil} $B$G!"J,3d$O;HMQ$7$J$$$h$&$K$J$C$F$$(B +$B$^$9(B! + +@lisp +(setq nnimap-split-inbox + '("INBOX" ("~/friend/Mail" . "lists/*") "lists.imap")) +@end lisp + +Nnmail $B$KBP1~$9$k$b$N$O$"$j$^$;$s!#(B + +@item nnimap-split-rule +@cindex splitting, rules +@vindex nnimap-split-rule + +@code{nnimap-split-inbox} $B$G8+$D$+$C$??7$7$$%a!<%k$O$3$NJQ?t$K=>$C$FJ,3d(B +$B$5$l$^$9!#(B + +$B$3$NJQ?t$O%j%9%H$N%j%9%H$+$i@.$j$^$9!#I{%j%9%H$N:G=i$NMWAG(B +$B$O(B @acronym{IMAP} $B$N%a!<%k%\%C%/%9$G!"Fs$D$a$NMWAG$N@55,I=8=$K9gCW$7$?5-(B +$B;v$N0\F0@h$r;XDj$7$^$9!#$o$+$j$^$7$?$+(B? $B$$$$$(!";d$b$o$+$j$^$;$s!#Nc$,I,(B +$BMW$G$9!#(B + +@lisp +(setq nnimap-split-rule + '(("INBOX.nnimap" + "^Sender: owner-nnimap@@vic20.globalcom.se") + ("INBOX.junk" "^Subject:.*MAKE MONEY") + ("INBOX.private" ""))) +@end lisp + +$B$3$l$O(B nnimap $B%a!<%j%s%0%j%9%H$+$i$NA4$F$N5-;v$r%a!<%k%\%C%/(B +$B%9(B INBOX.nnimap $B$KF~$l!"(BSubject: $B9T$K(B MAKE MONEY $B$N$"$kA4$F$N5-;v(B +$B$r(B INBOX.junk $B$KF~$l!"$=$NB>A4$F$N$b$N$r(B INBOX.private $B$KF~$l$^$9!#(B + +$B:G=i$NJ8;zNs$O!"(Breplace-match $B$G9gCW$7$?%F%-%9%H$+$iI{I=8=$rA^F~$9$k$H$-(B +$B$K;HMQ$5$l$k$N$HF1$8$h$&$J!"(B@samp{\\1} $B7A<0$r4^$`$3$H$,$G$-$^$9!#Nc$($P(B: + +@lisp +("INBOX.lists.\\1" "^Sender: owner-\\([a-z-]+\\)@@") +@end lisp + +$B:G=i$NMWAG$r%7%s%\%k(B @code{junk} $B$K$7$F!"%^%C%A$9$k%a%C%;!<%8$rC1$K>C$9(B +$B$Y$-$G$"$k$3$H$rI=$9$3$H$b$G$-$^$9!#5$$rIU$1$F;H$C$F2<$5$$!#(B + +$BFs$DL\$NMWAG$O4X?t$G$"$k$3$H$b$G$-$^$9!#$=$N>l9g$O!"5-;v$N%X%C%@!<$,$"$k(B +$B%P%C%U%!$G!"$=$N5,B'$N:G=i$NMWAG$r0z?t$H$7$F8F$P$l$^$9!#%a!<%k$,$=$N%0%k!<(B +$B%W$KB0$9$k$H9M$($k>l9g$O!"(B@code{nil} $B$G$J$$CM$rJV$9I,MW$,$"$j$^$9!#(B + +Nnmail $B$NMxMQe$NNc$N$h$&$K(B)$B!#$3$l(B +$B$O(B nnimap $B$G$OI,MW$G$O$"$j$^$;$s!#@55,I=8=$N$I$l$K$b9gCW$7$J$$5-;v(B +$B$O(B inbox $B$+$i0\F0$5$l$^$;$s!#(B(inbox $B$KL$FI5-;v$rBgNL$KCV$$$F$*$/$H!"J,3d(B +$B$N%3!<%I$O?7$7$$%a!<%k$r!$A(B'' $B$^$9!#Aj8_Ej(B +$B9F$r$7$F$$$k>l9g$O!"A4$F$N9gCW$7$?5,B'$,(B ``$B>!$A(B'' $B$^$9!#(B + +$B$3$NJQ?t$O$=$NCM$H$7$F4X?t$r;}$D$3$H$b$G$-$^$9!#$=$N4X?t$O5-;v$N%X%C%@!<(B +$B$NItJ,$KHO0O$,69$a$i$l$?>uBV$G8F$P$l!"5-;v$N0\F0@h$@$H;W$&%0%k!<%W$rJV$9(B +$B$b$N$G$J$1$l$P$J$j$^$;$s!#(B@code{nnimap-split-fancy} $B$r;2>H$7$F2<$5$$!#(B + +$BJ,3d%3!<%I$OI,MW$J$i%a!<%k%\%C%/%9$r:n@.$7$^$9!#(B + +$B0[$J$k2>A[%5!<%P!A[%5!<%P!$Oe5-$NJ,3d$N5,B'$NJ}$G$9!#(B + +Nnmail $B$GBP1~$9$k$b$N(B: @code{nnmail-split-methods}. + +@item nnimap-split-predicate +@cindex splitting +@vindex nnimap-split-predicate + +$B$3$N=R8l$K%^%C%A$9$k(B @code{nnimap-split-inbox} $B$K$"$k%a!<%k$OJ,3d$5$l$^(B +$B$9!#$3$l$OJ8;zNs$G4{DjCM$O(B @samp{UNSEEN UNDELETED} $B$G$9!#(B + +$B$b$7$"$J$?$,(B inbox $B$K$"$k%a!<%k$rFI$`$?$a$KJL$N(B @acronym{IMAP} $B%/%i%$%"(B +$B%s%H$r;H$C$F$$$k$,!"9XFIEY$K4X$o$i$:$K$9$Y$F$N5-;v$r(B Gnus $B$KJ,3d$5$;$?$$(B +$B$J$i$P!"$3$l$OLr$KN)$D$+$b$7$l$^$;$s!#$=$N>l9g$O(B @samp{UNDELETED} $B$KJQ$((B +$B$l$PNI$$$G$7$g$&!#(B + +@item nnimap-split-fancy +@cindex splitting, fancy +@findex nnimap-split-fancy +@vindex nnimap-split-fancy + +$B$b$7$"$J$?$,FC5iJ,3d$r;H$$$?$$$J$i$P!"(B@code{nnimap-split-rule} $B$NCM(B +$B$r(B @code{nnmail-split-fancy} $B$K@_Dj$9$k$3$H$,$G$-$^$9!#(B +@xref{Fancy Mail Splitting}. + +$B$7$+$7(B nnmail $B$H(B nnimap $B$H$G0[$J$kFC5iJ,3dJ}<0$r;}$D$h$&$K$9$k$K$O!"(B +@code{nnimap-split-rule} $B$NCM$r(B @code{nnimap-split-fancy} $B$K@_Dj$7$F!"(B +nnimap $BFCM-$NFC5iJ,3dJ}<0$r(B @code{nnimap-split-fancy} $B$KDj5A$7$F2<$5$$!#(B + +$BNc(B: + +@lisp +(setq nnimap-split-rule 'nnimap-split-fancy + nnimap-split-fancy ...) +@end lisp + +Nnmail $B$GBP1~$9$k$b$N(B: @code{nnmail-split-fancy}. + +@item nnimap-split-download-body +@findex nnimap-split-download-body +@vindex nnimap-split-download-body + +$BJ,3d$7$F$$$k$H$-$K$9$Y$F$N5-;v$r%@%&%s%m!<%I$9$k$K$OHs(B-@code{nil} $B$K@_Dj(B +$B$7$F2<$5$$!#$3$l$OIaDL$OI,MW$G$O$J$/!"J*;v$rAjEv$KCY$/$7$F$7$^$&$G$7$g$&!#(B +$B5-;v$rJ,3d$9$k$?$a$KK\J8$rJ,@O$9$k9bEY$J4X?t$r;H$$$?$$>l9g$K$O!"I,MW$+$b(B +$B$7$l$^$;$s!#(B +@end table + +@node Expiring in IMAP +@subsection IMAP $B$G$N4|8B@Z$l>C5n(B +@cindex expiring imap mail + +@code{nnimap} $B$O40A4$J(B @code{nnmail} $BM3Mh$N%P%C%/%(%s%I$G$O$"$j$^$;$s$,!"(B +$B$?$$$F$$$N4|8B@Z$l>C5n(B (@pxref{Expiring Mail}) $B$NI8=`5!G=$r%5%]!<%H$7$^(B +$B$9!#(B@acronym{IMAP} $B$NJ,3d(B (@pxref{Splitting in IMAP}) $B$G(B +$B$O(B @code{nnmail} $B$NJQ?t$rJ#@=$7$J$$(B ($BNc$($P(B @var{nnimap-expiry-wait} $B$r(B +$B@8@.$7$J$$(B) $BE@$,0c$&$N$G$9$,!"(B@code{nnmail} $B$NJQ?t$rN.MQ$7$^$9!#0J2<(B +$B$O(B @code{nnimap} $B$N4|8B@Z$l>C5n=hM}$G;H$o$l$kJQ?t$G$9!#(B + +$B4|8B@Z$l>C5n$N0u$,$I$N$h$&$KE,@Z$K(B @acronym{IMAP} $B%5!<%P!<$K5-O?$5$l$k$+(B +$B$K$D$$$F$b$3$3$G8@5Z$7$F$*$-$^$7$g$&!#4|8B@Z$l>C5n$N0u$O(B @code{imap} $B%/(B +$B%i%$%"%s%HFCM-$N0u$G$"$k(B @code{gnus-expire} $B$KJQ49$5$l!"%a%C%;!<%8$K5-O?(B +$B$5$l$^$9!#$3$l$O!"B>$N%/%i%$%"%s%H$O%a%C%;!<%8$N%/%i%$%"%s%HFCM-$N%U%i%0(B +$B$r8+$k$+$b$7$l$J$$$N$KBP$7$F!"(BGnus $B$O$?$V$s(B @code{gnus-expire} $B$N0u$rE,(B +$B@Z$K07$$M}2r$9$k$@$1$G$"$k$3$H$r0UL#$7$^$9!#$^$?$3$l$O%5!<%P!<$,!"%/%i%$(B +$B%"%s%HFCM-$N%U%i%0$N%a%C%;!<%8$X$N915WE*$JJ]B8$r%5%]!<%H$7$J$1$l$P$J$i$J(B +$B$$$3$H$b0UL#$7$^$9!#9,$$$K!"$?$$$F$$$O%5%]!<%H$7$^$9!#(B + +@table @code +@item nnmail-expiry-wait +@item nnmail-expiry-wait-function + +$B$3$l$i$NJQ?t$O40A4$K%5%]!<%H$5$l$F$$$^$9!#4|8B@Z$l>C5n$NCM$O!"?t!"%7%s%\(B +$B%k$N(B @code{immediate} $B$^$?$O(B @code{never} $B$G$9!#(B + +@item nnmail-expiry-target + +$B$3$NJQ?t$O%5%]!<%H$5$l$F$$$F!"FbItE*$K$O$3$l$r07$&(B @code{nnmail} $B4X?t$r(B +$B8F$V$3$H$K$h$C$F$5$l$k(B) $B$H$$$&:GE,2=$b4^$_$^$9!#(B +@end table + +@node Editing IMAP ACLs +@subsection IMAP $B$N(B ACL $B$rJT=8$9$k!#(B +@cindex editing imap acls +@cindex Access Control Lists +@cindex Editing @acronym{IMAP} ACLs +@kindex G l ($B%0%k!<%W(B) +@findex gnus-group-nnimap-edit-acl + +ACL $B$O(B Access Control List ($B;HMQ@)8B0lMw(B) $B$NN,$G$9!#(B@acronym{IMAP} $B$G(B +$B$O(B ACL $B$OB>$NMxMQ\$7$$;X<($H$H$b$K(B ACL $BJT=8%&%#%s%I%&$,8=$l$^$9!#(B + +$B;HMQ$NNc(B: + +@itemize @bullet +@item +$B%a!<%j%s%0%j%9%H$N%a!<%k%\%C%/%9$G(B ``anyone'' $B$K(B ``lrs'' $B5v(B +$B2D(B (lookup, read, seen/unseen $B%U%i%0$NJ];}(B) $B$rM?$($k$3$H$G!"F1$8%5!<%P!<(B +$B$NB>$NMxMQ/$J$/$H$b(B Cyrus $B$N%5!<%P!<$K$*$$$F$O!"(B``plussing'' $B$,F0:n$9$k$?$a$K(B ($B$D(B +$B$^$j!"(Buser+mail@@domain $B$,(B INBOX.mailbox $B$H$$$&(B @acronym{IMAP} $B$N%a!<%k(B +$B%\%C%/%9$K$J$k(B)$B!"MxMQC5n$5$l$?5-;v$rC5n$5$l$?5-;v$rI=<($9$kJ}K!$O$"$j$^$;$s!#$?$@>C5n$G$-$k$@$1(B +$B$G$9!#(B + +@node A note on namespaces +@subsection $BL>A06u4V$K4X$9$kCm0U(B +@cindex @acronym{IMAP} namespace +@cindex namespaces + +@acronym{IMAP} $B%W%m%H%3%k$K$OL>A06u4V(B (namespaces) $B$H8F$P$l$k35G0$,$"$j!"(B +$B0J2<$N(B RFC2060 $B$NJ8=q$G5-=R$5$l$F$$$^$9!#(B + +@example +5.1.2. $B%a!<%k%\%C%/%9L>A06u4VL?L>5,B'(B + + $B=,47$K$h$j(B "#" $B$G;O$^$C$F$$$k$9$Y$F$N%a!<%k%\%C%/%9L>$N:G=i$N3,AXMWAG(B + $B$O!";D$j$NL>A0$N(B "$BL>A06u4V(B" $B$r<($7$F$$$k!#$3$l$O!"$=$l$>$lFH<+$NL>A0(B + $B6u4V$r;}$D0[$J$k%a!<%k%\%C%/%9J]4I$N4V$G$N!"[#Kf$5$rA06u4V$rB>$N%a!<%k%\%C%/%9$+$iJ,N%$9$k$?$a$K!"(B + "#news" $BL>A06u4V$rMQ$$$F$b$h$$!#$3$&$7$F(B comp.mail.misc $B%K%e!<%9%0(B + $B%k!<%W$O(B "#news.comp.mail.misc" $B$H$$$&%a!<%k%\%C%/%9L>$r;}$A!"L>A0(B + "comp.mail.misc" $B$OJL$N%*%V%8%'%/%H(B ($BNc$($P!"%f!<%6$N8D?M%a!<%k%\%C(B + $B%/%9(B) $B$r;X$9$3$H$O$"$j$&$k!#(B + +($BLuCp(B: http://kame.zit.to/~obata/imap/rfc/rfc2060ja.txt $B$h$jE>:\(B) +@end example + +$B$3$3$K$O(B Gnus $B$K$*$1$k(B @acronym{IMAP} $B$NZ$9$kJ8=q$,(B +$BL5$$$N$G$9$,!"$$$/$D$+$N%5!<%P!<$O(B Gnus $B$N%a!<%k%\%C%/%9$NL>A0$N;H$$J}$G(B +$B$OF0:n$7$J$$$d$jJ}$GL>A06u4V@\F,<-$r;H$C$F$$$^$9!#(B + +$B6qBNE*$K$O!"%o%7%s%H%sBg3X$N(B @acronym{IMAP} $B%5!<%P!<(B +$B$O(B @code{#driver.mbx/read-mail} $B$N$h$&$J%a!<%k%\%C%/%9L>$r;H$C$F$$$F!"$=(B +$B$l$O(B @sc{create} $B$H(B @sc{append} $B%3%^%s%I$G$@$1M-8z$G$9!#%a!<%k%\%C%/%9$,(B +$B:n$i$l$?8e(B ($B$^$?$O%a%C%;!<%8$,%a!<%k%\%C%/%9$KDI2C$5$l$?8e(B) $B$G$O!"$=$l$O(B +$BL>A06u4V@\F,<-$rIU$1$:$K%"%/%;%9!"$9$J$o$A(B @code{read-mail} $B$5$l$J$1$l$P(B +$B$J$j$^$;$s!#(BGnus $B$O%f!<%6!<$,(B CREATE $B$H(B APPEND $B%3%^%s%I$@$1$GF~NO$7$?%a!<(B +$B%k%\%C%/%9L>$rJ]>Z$G$-$J$$$N$G!"@dBP$KL>A06u4V@\F,<-$,IU$$$?%a!<%k%\%C%/(B +$B%9L>$r(B Gnus $B$G;H$C$F$O$$$1$^$;$s!#(B + +@code{#driver.*/} $B@\F,<-$K$D$$$F$N$5$i$J$k;H$$J}$N>pJs$O(B UoW IMAPD $B$NJ8(B +$B=q$r8+$F2<$5$$!#$=$l$i$O6/NO$J9)6q$J$N$G!"$I$s$J8z2L$,$"$k$+$,3N$+$J>l9g(B +$B$@$1;H$C$F2<$5$$!#(B + +@node Debugging IMAP +@subsection IMAP $B$N%G%P%C%0(B +@cindex IMAP debugging +@cindex protocol dump (IMAP) + +@acronym{IMAP} $B$O(B @acronym{NNTP} $B$d(B @acronym{POP3} $B$h$j$b$C$HJ#;($J%W%m(B +$B%H%3%k$G$9!#e$N%P%0$,L5$$$H$O8@$$@Z$l$J$$$N$G!";d$?$A$O!"$9$0$K$=$l(B +$B$i$rD>$9$?$a$K:GA1$r?T$/$7$^$9!#$"$J$?$,4qL/$J?6$kIq$$$K=P2q$C$?$H$7$?$i!"(B +$B%5!<%P!<$+(B Gnus $B$N$I$A$i$+$K%P%0$,$"$k2DG=@-$,$"$j$^$9!#(B + +$B$"$J$?$,0lHLE*$J%M%C%H%o!<%/!&%W%m%H%3%k$K@:DL$7$F$$$k$J$i$P!"(BGnus $B$H%5!<(B +$B%P!<$N4V$G$d$j$H$j$5$l$k%W%m%H%3%k!&%@%s%W$rFI$`$3$H$K$h$C$F!"$*$=$i$/$$(B +$B$/$D$+$N)Ne$7$^$9!#(B + +@vindex imap-log +$B%W%m%H%3%k!&%@%s%W$O!"$=$l$rM-8z$K$7$F$$$k$H$?$/$5$s$N%G!<%?$r@8@.$9$k$N(B +$B$G!"%G%#%U%)%k%H$G$OL58z$K$J$C$F$$$^$9!#M-8z$K$9$k$K$O!"0J2<$N$h$&(B +$B$K(B @code{imap-log} $B$r@_Dj$7$F2<$5$$(B: + +@lisp +(setq imap-log t) +@end lisp + +$B$3$l$O(B @code{imap.el} $B%Q%C%1!<%8$K!"%5!<%P!<$H$N$d$j$H$j$r2?$G$b5-O?$5$;(B +$B$^$9!#$=$N5-O?$O(B @samp{*imap-log*} $B$H$$$&%P%C%U%!$K3JG<$5$l$^$9!#$H$-$H(B +$B$7$F(B @code{BAD} $B$H$$$&;%$,IU$1$i$l$k!"%(%i!<%a%C%;!<%8$rC5$7$F2<$5$$!#$G(B +$B$b!"%P%0$rDs=P$9$k$H$-$O!"$9$Y$F$N%G!<%?$r4^$a$k$h$&$K$7$F2<$5$$!#(B + +@node Other Sources +@section $B$=$NB>$N%0%k!<%W8;(B + +Gnus $B$O$?$@C1$K%K%e!<%9$d%a!<%k$rFI$`0J>e$N$3$H$,$G$-$^$9!#0J2<(B +$B$K<($9J}K!$K$h$C$F!"(BGnus $B$G%G%#%l%/%H%j!<$d%U%!%$%k$r!"$"$?$+$b(B +$B%K%e!<%9%0%k!<%W$G$"$k$+$N$h$&$K1\Mw$9$k$3$H$,$G$-$k$h$&$K$J$j$^(B +$B$9!#(B + +@menu +* Directory Groups:: $B%G%#%l%/%H%j!<$r%K%e!<%9%0%k!<%W$N$h$&$KFI$`(B +* Anything Groups:: Dired? $BC/$,(B dired $B$J$s$F;H$&$N(B? +* Document Groups:: $B8DJL$N%U%!%$%k72$O%0%k!<%W$NAG(B +* SOUP:: @sc{soup} $B%Q%1%C%H$r(B ``$B%*%U%i%$%s(B'' $B$GFI$`(B +* Mail-To-News Gateways:: $B%a!<%k$+$i%K%e!<%9$X$N%2!<%H%&%'%$$rDL$7$F5-;v$rEj9F$9$k(B +@end menu + +@node Directory Groups +@subsection $B%G%#%l%/%H%j!<%0%k!<%W(B +@cindex nndir +@cindex directory groups + +$B$b$7!"$?$/$5$s$N5-;v$,8DJL$N%U%!%$%k$H$7$FF~$C$F$$$k%G%#%l%/%H%j!<$,$"$l(B +$B$P!"$=$l$r%K%e!<%9%0%k!<%W$H$7$F07$&$3$H$,$G$-$^$9!#$b$A$m$s!"%U%!%$%k$O(B +$B?t;z$N%U%!%$%kL>$r$b$C$F$$$J$1$l$P$J$j$^$;$s!#(B + +$B$3$3$G(B Emacs $B$NAG@2$i$7$$%Q%C%1!<%8$NCf$G$b:G$bAG@2$i$7(B +$B$$(B @code{ange-ftp} ($B$H$=$N8e7Q$N(B @code{efs}) $B$K$D$$$F?($l$kNI$$5!2q$G$7$g(B +$B$&!#;d$,(B @code{nndir} $B$r=q$$$?$H$-$O!"$3$l(B --- $B%G%#%l%/%H%j!<$rFI$`%P%C(B +$B%/%(%s%I$K$D$$$F$O$"$^$j9M$($F$$$^$;$s$G$7$?!#$H$s$G$b$J$$$3$H$@$M!#(B + +@code{ange-ftp} $B$O$3$N>p67$r7`E*$KJQ2=$5$;$^$7$?!#Nc$($P!"(B +@code{ange-ftp} $B%U%!%$%k(B +$BL>(B @file{/ftp.hpc.uh.edu:/pub/emacs/ding-list/} $B$r%G%#%l%/%H%j!$H$7$F(B +$BF~NO$7$?$H$9$k$H!"(B@code{ange-ftp} $B$"$k$$$O(B @code{efs} $B$OC5n$r9T$J$&$3$H$O$G$-$^$;$s!#(B@code{nndir} $B$,;H$($k(B +$B$b$N$J$i2?$G$b(B @code{nnmh} $B$"$k$$$O(B @code{nnml} $B$r;H$&$3$H$,$G$-$k$N$G!"(B +$B$b$7FI$_=P$7@lMQ$G$O$J$$(B @code{nndir} $B$,I,MW$@$H;W$C$?$i!"$3$l$i$N$I$A$i(B +$B$+$NJ}K!$K@Z$jBX$($k$3$H$b$G$-$^$9!#(B + +@node Anything Groups +@subsection $B$J$s$G$b%0%k!<%W(B +@cindex nneething + +($B0l$D$N%9%W!<%kIw%G%#%l%/%H%j!<$H2r$lA':w$7$F$^$o$j$^$9!#$b$7$=$N%U%!%$%k$,5-;v$N$h$&$K8+$((B +$B$?$J$i(B ($B$9$J$o$A!":G=i$N?t9T$,%X%C%@!<$N$h$&$K8+$($?$i(B) $B$=$l$r%X%C%@!<$H(B +$B$7$F;H$$$^$9!#$b$7$=$l$,%X%C%@!<$N$J$$$?$@$NE,Ev$J%U%!%$%k(B ($BNc$($P(B C $B$N(B +$B%=!<%9%U%!%$%k(B) $B$G$"$C$?$J$i!"(B@code{nneething} $B$O%X%C%@!<$r5u6u$+$i:n$j(B +$B=P$7$^$9!#$3$l$O%U%!%$%k$N=jM-A0!"F|IU$r;H$$!"$3$l$i$NMWAG$KBP$7$F(B +$B$G$-$k$3$H$r2?$G$b$d$j$^$9!#(B + +$B$3$l$O$"$J$?$K$H$C$F$OA4$F<+F0E*$K5/$3$k$3$H$G!"$"$J$?$O%K%e!<%9%0%k!<%W(B +$B$K$H$F$bNI$/;w$?2?$+$r8+$;$i$l$k$3$H$K$J$k$G$7$g$&!#$[$s$H$&$K@#J,0c$o$J(B +$B$$!"%K%e!<%9%0%k!<%W$N$h$&$J$b$N$r!#5-;v$rA*Br$9$k$H!"$=$l$O$$$D$b$N$h$&(B +$B$K!"5-;v%P%C%U%!$KI=<($5$l$k$G$7$g$&!#(B + +$B%G%#%l%/%H%j!<$rI=$o$7$F$$$k9T$rA*Br$9$k$H!"(BGnus $B$O$"$J$?$r$3(B +$B$N(B @code{nneething} $B%0%k!<%W$N$?$a$N?7$7$$35N,%P%C%U%!$KO"$l$F9T$/$G$7$g(B +$B$&!#0J2pJs$r21$($F$*$-$^$;$s!#$b$7(B @kbd{G m} $B$GIaDL$K8G(B +$BDj(B @code{nneething} $B%0%k!<%W$r:n$k$H!"(BGnus $B$O5-;vHV9f$H%U%!%$%kL>$NBP1~(B +$BI=$r21$($F$*$-!"$3$N%0%k!<%W$rB>$N%0%k!<%W$HF1MM$K07$&$3$H$,$G$-$k$h$&$K(B +$B$J$j$^$9!#8GDj(B @code{nneething} $B%0%k!<%W$r:nF0$5$;$k$H!"L$FI5-;v$,$$$/$D(B +$B4^$^$l$F$$$k$+$rCN$i$5$l$?$j!"$J$I$J$I!#(B + +$B$$$/$D$+$NJQ?t$,$"$j$^$9!#(B + +@table @code +@item nneething-map-file-directory +@vindex nneething-map-file-directory +$BA4$F$N8GDj(B @code{nneething} $B%0%k!<%W$NBP1~I=$O$3$N%G%#%l%/%H%j!<$K3JG<$5(B +$B$l$^$9!#$3$N=i4|@_DjCM$O(B @file{~/.nneething/} $B$G$9!#(B + +@item nneething-exclude-files +@vindex nneething-exclude-files +$B$3$N@55,I=8=$K%^%C%A$9$k%U%!%$%k$O$9$Y$FL5;k$5$l$^$9!#<+F0J]B8%U%!%$%k$J(B +$B$I$r=|$/$N$KJXMx$K;H$($^$9!#$=$7$F$=$l$,$^$5$K=i4|@_Dj$G9T$J$o$l$kF0:n$G(B +$B$9!#(B + +@item nneething-include-files +@vindex nneething-include-files +$B$=$N%U%!%$%k$r%0%k!<%W$K4^$a$k$+$r<($9@55,I=8=$G$9!#$3$NJQ?t(B +$B$,(B @code{nil} $B$G$J$1$l$P!"$3$N@55,I=8=$K9gCW$9$k%U%!%$%k$@$1$,4^$^$l$^$9!#(B + +@item nneething-map-file +@vindex nneething-map-file +$BBP1~I=%U%!%$%k$NL>A0!#(B +@end table + +@node Document Groups +@subsection $BJ8=q%0%k!<%W(B +@cindex nndoc +@cindex documentation group +@cindex help group + +@code{nndoc} $B$O0l$D$N%U%!%$%k$r%K%e!<%9%0%k!<%W$H$7$FFI$`$3$H$r$G$-$k$h(B +$B$&$K$9$k!"$A$g$C$H5$$NMx$$$?$d$D$G$9!#$$$/$D$+$N%U%!%$%kAw7A<0!#(B +@cindex forwarded messages + +@item forward +$BE>Aw$5$l$?5-;v!#(B + +@item nsmail +Netscape $B$N%a!<%k%\%C%/%9!#(B + +@item mime-parts +@acronym{MIME} $BItJ,%a%C%;!<%8(B (multipart)$B!#(B + +@item standard-digest +$BI8=`(B (RFC 1153) $B$^$H$aAw$j7A<0!#(B + +@item mime-digest +@acronym{MIME} $B$N$^$H$aAw$j%a%C%;!<%8!#(B + +@item lanl-gov-announce +$B%m%9%"%i%b%99qN)8&5f=j(B (LANL) Gov Announce $B$+$i$NH/I=%a%C%;!<%8!#(B + +@item rfc822-forward +RFC822 $B$GE>Aw$5$l$?%a%C%;!<%8!#(B + +@item outlook +Outlook $B$N%a!<%k%\%C%/%9!#(B + +@item oe-dbx +Outlook Express $B$N(B dbx $B%a!<%k%\%C%/%9!#(B + +@item exim-bounce +Exim MTA $B$+$iD7$MJV$5$l$?%a%C%;!<%8!#(B + +@item forward +$BHs8x<0$N5,B'$GE>Aw$5$l$?%a%C%;!<%8!#(B + +@item rfc934 +RFC934 $B7A<0$GE>Aw$5$l$?%a%C%;!<%8!#(B + +@item mailman +mailman $B$N$^$H$aAw$j!#(B + +@item clari-briefs +Clarinet $B$N%K%e!<%99`L\$rMWLs$7$?$^$H$aAw$j!#(B + +@item slack-digest +$BHsI8=`$^$H$aAw$j7A<0(B --- $B$@$$$?$$$O$&$^$/%^%C%A$9$k$,!"$G$b07$$$O2<J,$J%X%C%@!<$rA^F~$7$h(B +$B$&$H$7$?$j$O$7$^$;$s(B --- $BC1=c$K!"%U%!%$%k$r$=$N%0%k!<%W$NA[%5!<%P!A0(B (@dfn{name}) $B$H$=$l$KB3$/@55,I=8=$H2>A[JQ?t@_(B +$BDj$NNs$+$i$J$j$^$9!#0J2<$,$3$l$K;H$($kJQ?t$G$9(B --- $BJQ?t$N?t$K05E]$5$l$J(B +$B$$$G$/$@$5$$!#$[$H$s$I$NJ8=ql9g!"$3$l$O5-;v$N@hF,$K%]%$%s%H$r0\F0$5$;$k4X?t$G$J$/$F$O$J$j(B +$B$^$;$s!#(B + +@item nndoc-head-begin +$B$3$l$,$"$k>l9g!"$3$l$O5-;v$N%X%C%@!<$K%^%C%A$9$k@55,I=8=$G$J$/$F$O$J$j$^(B +$B$;$s!#(B + +@item nndoc-head-end +$B$3$l$O5-;v$N%X%C%@!<$N:G8e$K%^%C%A$7$J$/$F$O$J$j$^$;$s!#$3$N=i4|@_DjCM(B +$B$O(B @samp{^$} --- $B6u9T$G$9!#(B + +@item body-begin-function +$B$3$l$,$"$k>l9g!"$3$N4X?t$O5-;v$N%\%G%#$N3+;O0LCV$K%]%$%s%H$r0\F0$5$;$k4X(B +$B?t$G$J$/$F$O$J$j$^$;$s!#(B + +@item body-begin +$B$3$l$O5-;v$N%\%G%#$N3+;O0LCV$K%^%C%A$7$J$/$F$O$J$j$^$;$s!#$3$N=i4|@_DjCM(B +$B$O(B @samp{^\n} $B$G$9!#(B + +@item body-end-function +$B$3$l$,$"$k>l9g!"$3$N4X?t$O5-;v$N%\%G%#$N:G8e$N0LCV$K%]%$%s%H$r0\F0$5$;$k(B +$B4X?t$G$J$/$F$O$J$j$^$;$s!#(B + +@item body-end +$B$3$l$,$"$l$P!"5-;v$N%\%G%#$N:G8e$K%^%C%A$7$J$/$F$O$J$j$^$;$s!#(B + +@item file-end +$B$3$l$,$"$k>l9g!"$3$l$O%U%!%$%k$N:G8e$K%^%C%A$7$J$/$F$O$J$j$^$;$s!#$3$N@5(B +$B5,I=8=$N8e$m$N%F%-%9%H$OA4$F!"40A4$KL5;k$5$l$^$9!#(B +@end table + +$B$3$N$h$&$K!"$3$l$i$NJQ?t$r;H$C$F(B @code{nndoc} $B$OJ8=q%U%!%$%k$r!"$=$l$>$l(B +$B%X%C%@!<$H%\%G%#$r;}$C$?5-;v$NO"$J$j$H$7$F2rK6$9$k$3$H$,$G$-$^$9!#$7$+$7!"(B +$BA4$F$NJ8=ql9g$KM-MQ$G$9!#(B + +@item article-transform-function +$B$3$l$,$"$l$P!"$3$N4X?t$O5-;v$,MW5a$5$l$?$H$-$K8F$S=P$5$l$^$9!#$3$l$O!"5-(B +$B;v$N%X%C%@!<$H%\%G%#$NN>J}$K$h$j9-HO0O$JJQ7A$r9T$J$&$?$a$K;H$o$l$k$b$N$G(B +$B$9!#(B + +@item generate-head-function +$B$3$l$,$"$l$P!"$3$N4X?t$O(B Gnus $B$,M}2r$G$-$k%X%C%@!<$r@8@.$9$k$?$a$K8F$S=P(B +$B$5$l$^$9!#$3$l$O5-;vHV9f$r%Q%i%a!<%?$H$7$F8F$S=P$5$l!"LdBj$N5-;v$N$-$l$$(B +$B$J%X%C%@!<$r@8@.$9$k$3$H$r5a$a$i$l$^$9!#$3$l$OA4$F$N5-;v$N%X%C%@!<$,MW5a(B +$B$5$l$k$H$-$K8F$S=P$5$l$^$9!#(B +@end table + +$B;d$,:n$C$?Cf$G:G$bJ#;($JNc(B --- $BI8=`$^$H$aAw$j7A<0$r8+$F$_$^$7$g$&!#(B + +@example +(standard-digest + (first-article . ,(concat "^" (make-string 70 ?-) "\n\n+")) + (article-begin . ,(concat "\n\n" (make-string 30 ?-) "\n\n+")) + (prepare-body-function . nndoc-unquote-dashes) + (body-end-function . nndoc-digest-body-end) + (head-end . "^ ?$") + (body-begin . "^ ?\n") + (file-end . "^End of .*digest.*[0-9].*\n\\*\\*\\|^End of.*Digest *$") + (subtype digest guess)) +@end example + +70 $BJ8;z$N%@%C%7%e(B(`-')$B$N9T$h$jA0$OA4$FL5;k$5$l$k$H$$$&$N$,J,$+$j$^$9!#$^(B +$B$?(B @samp{^End of} $B$G;O$^$k9T$h$j8e$m$bA4$FL5;k$5$l$^$9!#3F5-;v$O(B 30 $BJ8;z(B +$B$N%@%C%7%e$N9T$G;O$^$j!"%X%C%@!<$H%\%G%#$N6h@Z$j$N9T$O0l8D$N%9%Z!<%9$r4^(B +$B$`$3$H$,$"$j!"$=$7$F%\%G%#$O$=$l$,EO$5$l$kA0(B +$B$K(B @code{nndoc-unquote-dashes} $B$rDL$5$l$^$9!#(B + +$B$"$J$?FH<+$NJ8=qDj5A$r(B @code{nndoc} $B$K@\B3$9$k$K$O!"(B +@code{nndoc-add-type} $B4X?t$r;HMQ$7$^$9!#$3$l$OFs$D$N%Q%i%a!<%?$r$H$j$^(B +$B$9(B --- $B0l$DL\$O$=$NDj5A<+?H$G!"Fs$DL\$N(B ($B>JN,2DG=$J(B) $B%Q%i%a!<%?$O$3$NDj(B +$B5A$r!"J8=ql9g$O(B @code{nil} $B$rJV$7!"$=(B +$B$Nl9g$O(B @code{t} $B$rJV$7!"$=$N$_$=$K3Z$r$5$;$kJ}$r$9$k$N$b;~$K$OJXMx$G$9!#(B + +@sc{soup} $B$H8F$P$l$k%U%!%$%k7A<0$O%K%e!<%9$H%a!<%k$r%5!<%P!<$+$i2H$N%^%7(B +$B%s$X$HE>Aw$7!"$=$l$r$^$?La$9$?$a$K3+H/$5$l$^$7$?!#$A$g$C$HLLE]$/$5$$$+$b(B +$B$7$l$J$$$1$I$M!#(B + +$B$O$8$a$K$$$/$D$+MQ8l$r!#(B + +@table @dfn +@item server +$B$3$l$O30$N@$3&$K7R$,$C$F$$$F!"$"$J$?$,%K%e!<%9$H%a!<%k$rAw$N@$3&$H$$$+$J$k7A$G$b@\B3$5$l$F$$$^$;$s!#(B + +@item packet +$B%a%C%;!<%8$HL?Na$r4^$s$@$b$N!#%Q%1%C%H$K$OFsA0$G$9!#$3$3$G(B @var{x} $B$O?t;z$G$9!#(B + +@item response packets +($BJV?.%Q%1%C%H(B) $B$3$N%Q%1%C%H$O<+Bp%^%7%s$G:n$i$l$k%Q%1%C%H$G!"IaDL$O$"$J(B +$B$?$N=q$$$?JV;v$,4^$^$l$F$$$^$9!#$3$l$i$O=i4|@_Dj$G(B +$B$O(B @file{SoupinX.tgz} $B$H$$$&L>A0$G$9!#$3$3$G(B @var{x} $B$O?t;z$G$9!#(B +@end table +@end table + +@enumerate + +@item +$B$^$:(B @sc{soup} $B%Q%1%C%H$r:n$k$?$a$K%5!<%P!<$K%m%0%$%s$7$^$9!#(B +@sc{soup} $B$N$?$a$N@lMQ$N%V%D(B (@code{awk} $B%W%m%0%i%`$N$h$&$J(B) $B$r;H$C$F$b(B +$BNI$$$7!"(BGnus $B$N(B @sc{soup} $BL?Na$r;H$C$F%Q%1%C%H$r:n$C$F$bNI$$$G(B +$B$9(B (@kbd{O s} $B$"$k$$$O(B @kbd{G s b} $B$=$7$F(B @kbd{G s p}) + +(@pxref{SOUP Commands})$B!#(B + +@item +$B%Q%1%C%H$r<+Bp$KE>Aw$7$^$9!#EEAw$7$^$9!#(B + +@item +Gnus $B$+$i(B @kbd{G s s} $BL?Na$r;H$C$F$3$N%Q%1%C%H$+$i%a!<%k$r=P$7$^$9!#(B + +@item +$B$"$H$O$3$l$r;`$L$^$GB3$1$^$9!#(B + +@end enumerate + +$B$D$^$j4pK\E*$KFs$$$^$9!#(B + +@item G s w +@kindex G s w ($B%0%k!<%W(B) +@findex gnus-soup-save-areas +$BA4$F$N(B @sc{soup} $B%G!<%?%U%!%$%k$rJ]B8$7$^(B +$B$9(B (@code{gnus-soup-save-areas})$B!#(B + +@item G s s +@kindex G s s ($B%0%k!<%W(B) +@findex gnus-soup-send-replies +$BJV?.%Q%1%C%H$+$iA4$F$NJV?.$rAw=P$9$k(B (@code{gnus-soup-send-replies})$B!#(B + +@item G s p +@kindex G s p ($B%0%k!<%W(B) +@findex gnus-soup-pack-packet +$BA4$F$N%U%!%$%k$r(B @sc{soup} $B%Q%1%C%H$K:-Jq$9(B +$B$k(B (@code{gnus-soup-pack-packet})$B!#(B + +@item G s r +@kindex G s r ($B%0%k!<%W(B) +@findex nnsoup-pack-replies +$BA4$F$NJV?.$rJV?.%Q%1%C%H$K:-Jq$9$k(B (@code{nnsoup-pack-replies})$B!#(B + +@item O s +@kindex O s ($B35N,(B) +@findex gnus-soup-add-article +$B$3$N35N,%b!<%IL?Na$O!"8=:_$N5-;v$r(B @sc{soup} $B%Q%1%C%H$KDI2C$7$^(B +$B$9(B (@code{gnus-soup-add-article})$B!#$3$l$O%W%m%;%9(B/$B@\F,0z?t$N=,47$K=>$$$^(B +$B$9(B (@pxref{Process/Prefix})$B!#(B +@end table + +Gnus $B$,$3$l$i$N!#=i4|@_DjCM(B +$B$O(B @samp{gnus-prefix}$B!#(B + +@item gnus-soup-packer +@vindex gnus-soup-packer +@sc{soup} $B%Q%1%C%H$r:-Jq$9$kL?NaJ8;zNs$N7A<0!#=i4|@_DjCM(B +$B$O(B @samp{tar cf - %s | gzip > $HOME/Soupout%d.tgz}$B!#(B + +@item gnus-soup-unpacker +@vindex gnus-soup-unpacker +@sc{soup} $B%Q%1%C%H$rl=j!#=i4|@_DjCM$O(B @file{~/}$B!#(B + +@item gnus-soup-packet-regexp +@vindex gnus-soup-packet-regexp +@code{gnus-soup-packet-directory} $BFb$N(B @sc{soup} $B%Q%1%C%H$K%^%C%A$9$k@5(B +$B5,I=8=!#(B +@end table + +@node SOUP Groups +@subsubsection SOUP $B%0%k!<%W(B +@cindex nnsoup + +@code{nnsoup} $B$O(B @sc{soup} $B%Q%1%C%H$rFI$`$?$a$N%P%C%/%(%s%I$G$9!#$3$l$O(B +$BF~$C$F$-$?%Q%1%C%H$rFI$_!"$=$l$r$l$N%a%C%;!<%8$H:w0z%U%!%$%k$r$3$N%G%#%l%/(B +$B%H%j!<$K0\F0$5$;$k!#=i4|@_Dj$O(B @file{~/SOUP/}$B!#(B + +@item nnsoup-replies-directory +@vindex nnsoup-replies-directory +$BA4$F$NJV?.$O!"JV?.%Q%1%C%H$K:-Jq$5$l$kA0$K$3$N%G%#%l%/%H%j!<$K3JG<$5$l$k!#(B +$B=i4|@_Dj$O(B @file{~/SOUP/replies/}$B!#(B + +@item nnsoup-replies-format-type +@vindex nnsoup-replies-format-type +$BJV?.%Q%1%C%H$N(B @sc{soup} $B7A<0!#=i4|@_DjCM(B +$B$O(B @samp{?n} (rnews) $B$G!"$3$NJQ?t$K$O?($k$Y$-$G$O$J$$$H;d$O;W$$$^$9!#$?(B +$B$V$sJ8=q$KL@5-$9$Y$-$G$5$($J$+$C$?$M!#$A$'$C(B! $B$b$&pJs$r3JG<$9$k>l=j!#$3$l$O(B @code{nntp} $B$N0UL#(B +$B$G$N(B ``$B%"%/%F%#%V%U%!%$%k(B'' $B$G$O$J$/!"(BEmacs Lisp $B$N%U%!%$%k$G$9!#$3$N%U%!(B +$B%$%k$rL5$/$7$F$7$^$C$?$j!"2?$+2u$7$F$7$^$C$?$i!"$"$J$?$O;`$K$^$9!#=i4|@_(B +$BDjCM$O(B @file{~/SOUP/active} $B$G$9!#(B + +@item nnsoup-packer +@vindex nnsoup-packer +$BJV?.(B @sc{soup} $B%Q%1%C%H$r:-Jq$9$kL?NaJ8;zNs$N7A<0!#=i4|@_DjCM(B +$B$O(B @samp{tar cf - %s | gzip > $HOME/Soupin%d.tgz}$B!#(B + +@item nnsoup-unpacker +@vindex nnsoup-unpacker +$BF~$C$F$/$k(B @sc{soup} $B%Q%1%C%H$rl=j!#=i4|@_DjCM$O(B @file{~/}$B!#(B + +@item nnsoup-packet-regexp +@vindex nnsoup-packet-regexp +$BF~$C$F$-$?(B @sc{soup} $B%Q%1%C%H$K%^%C%A$9$k@55,I=8=!#=i4|@_DjCM(B +$B$O(B @samp{Soupout}$B!#(B + +@item nnsoup-always-save +@vindex nnsoup-always-save +@code{nil} $B0J30$G$"$l$P!"%a%C%;!<%8$rEj9F$7$?8e$KJV?.%P%C%U%!$rJ]B8$9$k!#(B +@end table + +@node SOUP Replies +@subsubsection SOUP $BJV?.(B + +$BC1$K(B @code{nnsoup} $B$r;H$&$@$1$G$O!"(B@sc{soup} $BJV?.%Q%1%C%HCf$N$"$J$?$NEj(B +$B9F$H%a!<%k$NAw?.$,!"KbK!$N$h$&$K<+F0E*$K=*N;$9$k$o$1$G$O$"$j$^$;$s!#$=$l(B +$B$r5/$3$9$K$O$b$&$A$g$C$HF/$+$J$/$F$O$$$1$^$;$s!#(B + +@findex nnsoup-set-variables +@code{nnsoup-set-variables} $BL?Na$O!"$"$J$?$NA4$F$N%U%)%m!<%"%C%W5-;v$HJV(B +$B?.$r(B @sc{soup} $B%7%9%F%`$K3NA[%0%k!<%W(B +@cindex nnvirtual +@cindex virtual groups + +nnvirtual $B%0%k!<%W(B (@dfn{nnvirtual group}) $B$O$N%0%k!<%W$N=89g0J>e(B +$B$N2?J*$G$b$"$j$^$;$s!#(B + +$BNc$($P!"$b$7>.$5$J%0%k!<%W$r$?$/$5$sFI$`$N$,7y$K$J$C$F$-$?$i!"$=$l$i$r0l(B +$B$D$NBg$-$J%0%k!<%W$KF~$l$F!"7y$K$J$k$/$i$$5pBg$GA[%0%k!<%WFb$GIU$1$i$l$?A4$F$N0u$O!"$=$N9=@.%0%k!<%W$N5-;v$K$/$C$D$1$i(B +$B$l$^$9!#$D$^$j!"$b$72>A[%0%k!<%WFb$G5-;v$K2D;k5-;v$N0u$r$D$1$k$H!"$=$N5-(B +$B;v$O$b$H$b$H$N9=@.%0%k!<%W$NCf$G$b2D;k5-;v$K$J$j$^$9!#(B($B$=$7$F5U$b@.$jN)(B +$B$A$^$9(B --- $B9=@.%0%k!<%WFb$GIU$1$?0u$O2>A[%0%k!<%WFb$G$bI=<($5$l$^$9!#(B) +$B6u$N2>A[%0%k!<%W$r:n$k$K$O!"%0%k!<%W%P%C%U%!$G(B @kbd{G V} +(@code{gnus-group-make-empty-virtual}) $B$rl9g$O!"Hs>o$KNI$$(B +$B$+$bCN$l$^$;$s!#$b$7$"$J$?$,(B @samp{soc.motss} $B$r!"F|K\$N%5!<%P!<$H%N%k%&%'!<(B +$B$N%5!<%P!<$NN>J}$+$iFI$_$?$1$l$P!"%0%k!<%W$N@55,I=8=$H$7$F0J2<$NCM$,;H$((B +$B$^$9!#(B + +@example +"^nntp\\+server\\.jp:soc\\.motss$\\|^nntp\\+server\\.no:soc\\.motss$" +@end example + +($B$G$b$A$g$C$HCm0U!#(B@kbd{G m} $B$G%0%k!<%W$r:n@.$9$k$H$-$O!"%P%C%/%9%i%C%7%e(B +$B$rFs=E$KIU$1$F$O$$$1$^$;$s!#$=$7$FJ8;zNs$N:G=i$H:G8e$N0zMQ5-9f$bJ}$N%0%k!<%W$N5-;v$OA4It40A4(B +$B$K0l$D$N%0%k!<%W$K$J$j!"=EJ#$bL5$$$O$:$G$9!#%9%l%C%II=<((B ($B$H$=$NB>(B) $B$bDL(B +$B>oDL$j$&$^$/F0:n$9$k$G$7$g$&$1$I!"5-;v$NJB$V=g=x$K$OLdBj$,$"$k$+$b$7$l$^(B +$B$;$s!#F|IU$K$h$kJB$YBX$($O$3$3$G$O;EMM30$H$J$k$+$b$7$l$^$;(B +$B$s(B (@pxref{Selecting a Group})$B!#(B + +$B$J$*!"$3$3$G0l$D$@$1@)8B$,$"$j$^$9(B --- $B2>A[%0%k!<%W$K4^$^$l$k%0%k!<%W$O(B +$BA4$F@8$-$F$$$k(B($B$9$J$o$A!"9XFI$^$?$OHs9XFI$N(B)$B>uBV$G$J$/$F$O$J$j$^$;$s!#:o(B +$B=|$"$k$$$O%>%s%S%0%k!<%W$O(B @code{nnvirtual} $B%0%k!<%W$N9=@.%0%k!<%W$K$J$k(B +$B$3$H$O$G$-$^$;$s!#(B + +@vindex nnvirtual-always-rescan +@code{nnvirtual-always-rescan} $B$,(B @code{nil} $B0J30$G$"$l$P!"(B +@code{nnvirtual} $B$O2>A[%0%k!<%W$KF~$C$?$H$->o$K!"L$FI5-;v$rAv::$7$^$9!#(B +$B$3$NJQ?t$,(B @code{nil} ($B$3$l$,=i4|@_Dj(B)$B$G$"$C$F!"2>A[%0%k!<%W$r:n@.$7$?8e(B +$B$K9=@.%0%k!<%WFb$N5-;v$rFI$s$@>l9g$O!"$=$N9=@.%0%k!<%W$GFI$^$l$?5-;v$O!"(B +$B2>A[%0%k!<%W$KF~$C$?$H$-$KI=<($5$l$k$G$7$g$&!#$b$76&DL$N9=@.%0%k!<%W$r;}(B +$B$DFs$D$N2>A[%0%k!<%W$,$"$k>l9g$K$b$3$N1F6A$,$"$j$^$9!#$=$N>l9g$O$3$NJQ?t(B +$B$r(B @code{t} $B$K$7$?J}$,NI$$$G$9!#$"$k$$$O2>A[%0%k!<%W$KF~$k;~$K!"Kh2s$=$N(B +$B%0%k!<%W$N>e$G(B @code{M-g} $B$rC!$$$F$bNI$$$G$9(B --- $B$3$l$O$[$\F1MM$N8z2L$,(B +$B$"$j$^$9!#(B + +@code{nnvirtual} $B$O%a!<%k$H%K%e!<%9$NN>J}$N%0%k!<%W$r9=@.%0%k!<%W$H$9$k(B +$B;v$,$G$-$^$9!#(B@code{nnvirtual} $B%0%k!<%W$N5-;v$KJVEz$9$k$H$-$O!"(B +@code{nnvirtual} $B$O5-;v$N=P=j$N9=@.%0%k!<%W$N%P%C%/%(%s%I$K$=$l$,%K%e!<(B +$B%9$N%P%C%/%(%s%I$G$"$k$+%a!<%k$N%P%C%/%(%s%I$G$"$k$+$r?R$M$J$1$l$P$J$j$^(B +$B$;$s!#$7$+$7!"(B@kbd{^} $B$r$7$?$H$-$K$O!"IaDL$O9=@.%P%C%/%(%s%I$,$3$l$rCN$k(B +$B3N$+$JJ}K!$O$J$/!"$=$N>l9g$O!"(B@code{nnvirtual} $B$O(B Gnus $B$K5-;v$O%K%e!<%9(B +$B$G$J$$%P%C%/%(%s%I$+$iMh$?$H9p$2$k;v$K$J$j$^$9!#(B($B0BA4$N$?$a$K!#(B) + +$B$3$N$h$&$J>l9g$O!"%a%C%;!<%8%P%C%U%!$G$N(B @kbd{C-c C-n} $B$,1~Ez$7$h$&$H$7(B +$B$F$$$k5-;v$+$i(B @code{Newsgroups} $B9T$rH4$-=P$7$FA^F~$7$^$9!#(B + +@code{nnvirtual} $B%0%k!<%W$O!"9=@.%0%k!<%W$+$i5-;v$H0u0J30$O7Q>5$7$^$;$s!#(B +$BNc$($P%0%k!<%W%Q%i%a!<%?$b$=$&$J$N$G$9$,!"$=$l$i$O7Q>5$5$l$^$;$s!#(B + +@node Kibozed Groups +@subsection Kiboze $B%0%k!<%W(B +@cindex nnkiboze +@cindex kibozing + +@dfn{Kiboze} $B$9$k!"$H$O!"(B``$B%K%e!<%9%9%W!<%kA4It(B ($B$"$k$$$O$=$N0lIt(B) $B$+(B +$B$i(B grep $B$9$k$3$H(B'' $B$H(B @acronym{OED} ($B%*%C%/%9%U%)!<%IBg<-E5(B) $B$K$h$C$FDj(B +$B5A$5$l$F$$$^$9!#(B@code{nnkiboze} $B$O$3$l$r$"$J$?$N$?$a$K9T$C$F$/$l$k%P%C%/(B +$B%(%s%I$G$9!#4r$7$$$M(B! $B$3$l$G$I$s$J(B @acronym{NNTP} $B%5!<%P!<$G$b!"Lr$KN)$?(B +$B$J$$MW5a$G;_$^$C$F$7$^$&$^$G9s;H$9$k$3$H$,$G$-$k$M!#$"$"!"$J$s$F9,$;$J$s(B +$B$@(B! + +@kindex G k ($B%0%k!<%W(B) +kiboze $B%0%k!<%W$r:n@.$9$k$K$O!"%0%k!<%W%P%C%U%!$G(B @kbd{G k} $BL?Na$r;H$$$^(B +$B$9!#(B + +@code{nnkiboze} $BJ}K!$K$*$1$k%"%I%l%9Ms$O!"(B@code{nnvirtual} $B$HF1MM$K!"(B +@code{nnkiboze} $B$K(B ``$B4^$a$?$$(B'' $B%0%k!<%W$K%^%C%A$9$k@55,I=8=$G$9!#$3$3(B +$B$,(B @code{nnkiboze} $B$H(B @code{nnvirtual} $B%P%C%/%(%s%I$N:G$bN`;w$7$F$$$kE@(B +$B$G$9!#(B + +$B$3$N9=@.%0%k!<%W$rNs5s$9$k@55,I=8=$K2C$($F!"(B@code{nnkiboze} $B%0%k!<%W$K$O!"(B +$B%0%k!<%WFb$N$I$N5-;v$r4^$a$k$+$r7h$a$k%9%3%"%U%!%$%k$,$J$/$F$O$J$j$^$;(B +$B$s(B (@pxref{Scoring})$B!#(B + +@kindex M-x nnkiboze-generate-groups +@findex nnkiboze-generate-groups +$B$"$J$?$NM_$7$$(B @code{nnkiboze} $B%0%k!<%W$r:n@.$7$?8e$K$O!"(B +@kbd{M-x nnkiboze-generate-groups} $B$rpJs$r3JG<$9$k!"(B@file{.newsrc} $B$NJd=u%U%!(B +$B%$%k$G$9!#(B + +@code{nnkiboze} $B%0%k!<%WFb$N4{FI$H$J$C$?5-;v$O!"$=$N5-;v(B +$B$N(B @acronym{NOV} $B9T$,(B @acronym{NOV} $B%U%!%$%k$+$i:o=|$5$l$^$9!#(B + +@node Namazu Groups +@subsection Namazu $B$r;H$C$F%a!<%k$N;3$+$i5-;v$rl9g$K$O!"FC$K!#$G$b!"BgDq$N>l9g!"2ACM$"$k5-;v$O$4$/>/?t$G!"$=$N(B +$B5-;v$rBgNL$N5-;v$N;3$+$i8+$D$1=P$9$N$O!"$H$F$b:$Fq$J$3$H$G$9!#(B + +$B$3$&$$$C$?$3$H$3$=!"%3%s%T%e!<%?$,$7$F$/$l$k$Y$-;E;v$G$9$h$M!#(BGnus $B$O!"(B +Namazu $B$r;H$C$F!"%a!<%k$N;3$+$i$"$J$?$N9%$-$J%-!<%o!<%I$r4^$`5-;v$r8+(B +$B$D$1=P$9J}K!$rDs6!$7$^$9!#(B + +$B:G=i$KHa$7$$$*CN$i$;$,$R$H$D!#(B@file{gnus-namazu.el} $B$O!"8=;~E@$G$O!"(B +@code{nnml} $B%P%C%/%(%s%I$"$k$$$O(B @code{nnmh} $B%P%C%/%(%s%I$K$h$C$FJ]B8(B +$B$5$l$F$$$k5-;v$H!"(B@code{gnus-cache-enter-article} $B$K$h$C$F1JB32=$5$l$?(B +$B5-;v$7$+!"$7$F!"$^$:!"(BNamazu $B$r;H$($k$h$&$K$7$^$7$g$&!#>\$7$$(B +$B$3$H$O!"A[%0%k!<%W$r:n@.$7$^$9(B (@pxref{Virtual +Groups})$B!#(B + +@kbd{C-c C-n}$B$K$h$C$F8F$S=P$5$l$kL?Na(B @code{gnus-namazu-search} $B$O!"(B +Gnus $B$NDL>o$N?t;z@\F,<-$d!"%W%m%;%9@\F,<-$rM}2r$7$^$9!#$G$9$+$i!"$"$J(B +$B$?$,!"$"$k%0%k!<%W$@$1$rBP>]$H$7$F8!:w$rl9g!"8!:w(B +$BBP>]$O!"<+F0E*$K$=$N%0%k!<%W$K8BDj$5$l$^$9!#Nc$($P!"$"$J$?$,$"$k%0%k!<(B +$B%W$r1\MwCf$K!"$=$N%0%k!<%W$K$*$1$k<+J,$N2a5n$r?6$jJV$j$?$/$J$C$?$i!"]$K$J$i$J$$$3$H$K$J$j$^$9!#(B +@file{gnus-namazu.el} $B$O!"(B@code{gnus-namazu-index-update-interval} $B$K(B +$B;XDj$5$l$?4|4VKh$K<+F0E*$K:w0z$r99?7$9$k5!G=$rDs6!$7$F$$$^$9!#%G%#%U%)%k(B +$B%H$N@_Dj$G$O!"(B3$BF|$*$-$K:w0z$r99?7$9$k$h$&$K$J$C$F$$$^$9$,!"$b$C$HIQHK(B +$B$K(B ($BNc$($P(B1$BF|$*$-(B) $B$K99?7$9$k$h$&$K$7$?$$$J$i$P!"0J2<$N@_Dj(B +$B$r(B @file{~/.gnus.el} $B$KDI2C$7$F$/$@$5$$!#(B + + +@example +(setq gnus-namazu-index-update-interval 86400) +@end example + +$B5U$K!":w0z$N99?7$r<+F0E*$K9T$$$?$/$J$$$J$i$P!"0J2<$N;XDj(B +$B$r(B @file{~/.gnus.el} $B$KDI2C$7$F$/$@$5$$!#(B + +@example +(setq gnus-namazu-index-update-interval nil) +@end example + +@findex{gnus-namazu-update-all-indices} +$B$3$N>l9g!":w0z$rH$7$F(B +$B2<$5$$!#Be$o$j$K!"FCJL$JJ}K!$G$"$J$?$N%a!<%k$N$$$/$D$+$r07$&!"$9$J$o$A$3(B +$B$l$O%j%^%$%s%@(B ($BM=Dj$r;W$$=P$5$;$k$b$N(B) $B$H$7$F;H$o$l$^$9!#(B + +$BE57?E*$J6Z=q$-$O!"$3$&$G$9!#(B + +@itemize @bullet +@item +$B$"$J$?$O%"%s%G%#!&%^%/%I%&%'%k$+%V%k!<%9!&%&%#%j%9(B ($B$"$J$?$N9%$_$K9g$o$;(B +$B$F!"$I$A$i$+$rA*$s$G2<$5$$(B) $B$H!"0l%v7n8e$K%G!<%H$NLsB+$r$7$^$7$?!#$=$l$r(B +$BK:$l$k$o$1$K$O$$$-$^$;$s!#(B +@item +$B$=$3$G!"<+J,08$F$K%j%^%$%s%@$N%a%C%;!<%8$r(B ($BC5n$N0u$,IU$$$F$$$l$P!"%a%C%;!<%8$O<+F0E*$K>C5n$5$l$^$9!#(B +@end itemize + +Gnus Diary $B%P%C%/%(%s%I$O!"(B($B>o$KC$5$l$k$3$H$,L5$$(B) $BDj4|E*$JM=Dj$r!"(B +$BQ\D"LL$J?M$?$A$HF1$8$h$&$K07$&G=NO$r;}$C$F$$$F!"K\Ev$N%a!<%k!&%P%C%/%(%s(B +$B%I$N$h$&$KF0:n$7!"$$$m$s$J$d$jJ}$G@_Dj$9$k$3$H$,$G$-$^$9!#$3$N$9$Y$F$,!"(B +$B0J2<$N3F9`$G@bL@$5$l$^$9!#(B + +@menu +* The NNDiary Back End:: $B4pK\E*$J@_Dj$H;H$$J}(B +* The Gnus Diary Library:: nndiary $B$N>e0L3,AX$K$"$k} $B$NMM<0$GI=(B +$B$5$l!"(B@code{} $B$NItJ,$O(B @code{Minute}, @code{Hour}, +@code{Dom}, @code{Month}, @code{Year}, @code{Time-Zone} $B$*$h(B +$B$S(B @code{Dow} $B$N$&$A$N0l$D$G$9!#(B@code{Dom} $B$O!VF|(B(Day of Month)$B!W$r!"(B +@code{Dow} $B$O!VMKF|(B(Day ofWeek)$B!W$r0UL#$7$^$9!#$3$l$i$N%X%C%@!<(B +$B$O(B crontab $B$N;EMM$N$h$&$KF/$$$F!"M=DjF|$rDj5A$7$^$9!#(B + +@itemize @bullet +@item +@code{Time-Zone} $B$N$b$N0J30$N$9$Y$F$N%X%C%@!<$K$D$$$F!"%X%C%@!<$NCM$O@1(B +$B0u(B ($B2DG=$J$9$Y$F$NCM$r0UL#$7$^$9(B) $B$+%3%s%^$G6h@Z$i$l$?%U%#!<%k%I$N%j%9%H(B +$B$G$9!#(B +@item +$B%U%#!<%k%I$O@0?t$+HO0O$G$9!#(B +@item +$BHO0O$H$O!"%@%C%7%e(B (-) $B$G6h@Z$i$l$?Fs$D$N@0?t$G$9!#(B +@item +$B2DG=$JCM$O!"$=$l$>$l(B @code{Minute} $B$K$O(B 0--59$B!"(B@code{Hour} $B$K$O(B 0--23$B!"(B +@code{Dom} $B$K$O(B 1--31$B!"(B@code{Month} $B$K$O(B 1--12$B!"(B@code{Year} $B$K$O(B 1971 $B$h(B +$B$jBg$-$$CM!"$=$7$F(B @code{Dow} $B$K$O(B 0--6 (0 $B$,F|MKF|(B) $B$G$9!#(B +@item +$BFCJL$J>l9g$H$7$F!"(B@code{Dom} $B$^$?$O(B @code{Dow} $B$K$*$1$k@10u$O!V2DG=$J$9(B +$B$Y$F$NCM!W$G$O$J$/!"!V$b$&0lJ}$N%U%#!<%k%I$@$1$r;H$&!W0UL#$K$J$j$^$9!#N>(B +$BJ}$H$b@10u$K$7$?>l9g$O!"$I$A$i$r;H$C$F$bF1$87k2L$K$J$k$3$H$KCm0U$7$F2<$5(B +$B$$!#(B +@item +@code{Time-Zone} $B%X%C%@!<$O!"CM$r0l$D$7$+;}$F$J$$(B ($BNc$($P(B @code{GMT}) $BE@(B +$B$GFCJL$G$9!#@10u$O!V2DG=$J$9$Y$F$NCM!W$G$O$J$/(B ($B$=$l$O0UL#$r$J$5$J$$$N$G(B)$B!"(B +$B!V8=:_$N%m!<%+%k$J%?%$%`%>!<%s!W$r0UL#$7$^$9!#$3$3$G$O$?$$$F$$@10u$r;H$&(B +$B$G$7$g$&!#$7$+$7!"MxMQ$G$-$k%?%$%`%>!<%s$NCM$K$D$$$F$O!"JQ(B +$B?t(B @code{nndiary-headers} $B$r8+$F2<$5$$!#(B +@end itemize + +1999$BG/$+$i(B 2010$BG/$^$G$NKh=57nMKF|$HKh7n$N0lF|$N(B 12:00, 20:00, 21:00, +22:00, 23:00 $B$*$h$S(B 24:00 $B$r@_Dj$9$k$?$a$K!"%a%C%;!<%8$K2C$($kF|Dx%X%C%@!<(B +$B$N6qBNNc$G$9(B ($B$=$N;~2?$r$7$?$iNI$$$+$O!"<+J,$G9M$($F2<$5$$(B): + +@example +X-Diary-Minute: 0 +X-Diary-Hour: 12, 20-24 +X-Diary-Dom: 1 +X-Diary-Month: * +X-Diary-Year: 1999-2010 +X-Diary-Dow: 1 +X-Diary-Time-Zone: * +@end example + +@node Running NNDiary +@subsubsection NNDiary $B$rF0$+$9(B +@cindex running nndiary +@cindex nndiary operation modes + +@code{nndiary} $B$K$OFs$D$NF0:n%b!<%I$,$"$j$^$9!#0l$D$O%G%#%U%)%k%H$N(B +$B!VEAE}7?(B(traditional)$B!W!"$b$&0l$D$O!V<+N'7?(B(autonomous)$B!W$G$9!#EAE}7?$N(B +$B%b!<%I$G$O!"(B@code{nndiary} $B$O$=$l<+?H$,?7Ce%a!<%k$r@\(B +$BAw$C$F!"$=$l$i$rC$9$k$3$H$r4j$$$^$9$,(B)$B!"<+N'7?$N%b!<%I$G$O:F%9%W!<%k(B +$B$,$G$-$^$;$s!#(B + +$B<+N'7?$N%b!<%I$G(B @code{nndiary} $B$r;H$&$?$a$K$O!"$$$/$D$+$N$3$H$r$d$C$F$b(B +$B$i$o$J$1$l$P$J$j$^$;$s(B: + +@itemize @bullet +@item +$B?7Ce%a!<%k$r(B @code{nndiary} $B$,<+J,$GA[%5!<%P!<(B (@code{(nndiary "diary")} $B$,9T$J$&$Y$-$G(B +$B$"$k$h$&$J$b$N(B) $B$rDI2C$7$F$bNI$$$G$7$g$&!#(B + +$B$&$^$/$$$1$P!"(BGnus $B$r:F5/F0$9$k$H!"$[$H$s$I$9$Y(B +$B$F(B (@file{nndiary.el} $B$N(B TODO $B$N9`$r;2>H(B) $B$,4|BTDL$j$K(B ($B<+N'7?$N%b!<%I$G(B +$B$O!"(B@kbd{g} $B$d(B @kbd{M-g} $B$r%0%k!<%W%P%C%U%!$G%?%$%W$9$l$P?7$7$$F|Dx%a!<(B +$B%k$r$b$C$F$=$l$i$rJ,3d$9$k$7!"(B +@kbd{F} $B$O?7$7$$F|Dx%0%k!<%W$r8+$D$1$F$/$l$k!"$J$I(B) $BF0:n$9$k$G$7$g$&!#(B + +@node Customizing NNDiary +@subsubsection NNDiary $B$N%+%9%?%^%$%:(B +@cindex customizing nndiary +@cindex nndiary customization + +$B$5$"(B @code{nndiary} $B$,N)$A>e$,$C$FF0:n$7$F$$$^$9!#$=$l$r%+%9%?%^%$%:$9$k(B +$B$H$-$,Mh$^$7$?!#%+%9%?%^%$%:$9$k$?$a$N%0%k!<%W$O(B @code{nndiary} $B$G$9(B ($B$X(B +$B$(!<(B)$B!#$I$N%*%W%7%g%s$r%+%9%?%^%$%:$7E]$7$?$$$+$r8+$D$1$k$?$a$K!"$=$l$K(B +$BL\$rDL$7$F2<$5$$!#$"$J$?$,JQ99$7$?$$$N$O!"$*$=$i$/0J2<$N$?$C$?Fs$D$NJQ?t(B +$B$G$7$g$&(B: + +@defvar nndiary-reminders +$BM=Dj$r;W$$=P$5$;$F$b$i$$$?$$;~9o$N%j%9%H(B ($BNc$($P;0=54VA0!"$=$l$+$iFsF|A0!"(B +$B$=$l$+$i0l;~4VA0!"$=$7$F$=$N$H$-(B) $B$G$9!#!V;W$$=P$5$;$F$b$i$&!W$N0UL#$O!"(B +$B?7Ce%a!<%k$rDj$5$l$^$9(B ($B$=$l$,%G%#%U%)%k%H$G$9(B)$B!#(B +@end defvar + +@node The Gnus Diary Library +@subsection Gnus Diary $B%i%$%V%i%j(B +@cindex gnus-diary +@cindex the Gnus diary library + +@code{nndiary} $B$re0L3,AX$K=q$+$l(B +$B$?(B @code{gnus-diary} $B$H$$$&%i%$%V%i%j$,$"$C$F!"$?$/$5$s$NJXMx$J$3$H$r$d$C(B +$B$F$/$l$^$9!#(B + +$B$=$l$r;H$&$?$a$K$O!"0J2<$N9T$r(B @file{gnusrc} $B%U%!%$%k$K2C$($F2<$5$$(B: + +@lisp +(require 'gnus-diary) +@end lisp + +$B$5$i$K!"$I$s$J(B @code{gnus-user-format-function-[d|D]} (@pxref{Summary +Buffer Lines}) $B$b!";H$C$F$O$$$1$^$;$s!#(B@code{gnus-diary} $B$O$=$l$i$NN>J}(B +$B$rDs6!$7$^$9(B ($B$"$J$?$,$=$l$i$r;H$C$F$$$?$i!"$9$_$^$;$s(B)$B!#(B + +@menu +* Diary Summary Line Format:: $B$h$jNI$$35N,9T;EMM(B +* Diary Articles Sorting:: $B%a%C%;!<%8$rJB$YBX$($k5$$NMx$$$?J}K!(B +* Diary Headers Generation:: $Bo(B @samp{From Joe: Subject} $B$N$h$&$J$b$N(B) $B$GF|Dx%a%C(B +$B%;!<%8$rI=<($9$k$N$O!"$^$C$?$/Lr$KN)$A$^$;$s!#$?$$$F$$$O$"$J$?$,%a%C%;!<(B +$B%8$r=q$$$??M$G!"$*$*$+$?M=Dj$NF|IU$r8+$?$$$H;W$C$F$$$k$G$7$g$&!#(B + +@code{gnus-diary} $B$O!"35N,9T;EMM$G;H$&Fs$D$NDI2C$NMxMQC$5$l$J$$$3$H$r=|$$$F!"%a%C%;!<%8$,4|8B@Z$l>C5n2DG=$G$"$k$3$H$KCmL\(B +$B$7$F2<$5$$(B): + +@example + E Sat, Sep 22 01, 12:00: Joe's birthday (in 6 months, 1 week) +@end example + +$B>e5-$N$h$&$J$b$N$rF@$k$?$a$K!"IaCJ$@$C$?$i!"$"$J$?$O0J2<$N9T$rF|Dx%0%k!<(B +$B%W$N%Q%i%a!<%?$K2C$($h$&$H$9$k$G$7$g$&(B: + +@lisp +(gnus-summary-line-format "%U%R%z %uD: %(%s%) (%ud)\n") +@end lisp + +$B$G$b(B @code{gnus-diary} $B$O$=$l$r<+F0$G9T$J$$$^$9(B (@pxref{Diary Group +Parameters})$B!#$"$J$?$O$7$+$7!"0J2<$N%f!<%6!&%*%W%7%g%s72$GDs6!$5$l$k35N,(B +$B9T;EMM$r!"%+%9%?%^%$%:$9$k$3$H$,$G$-$^$9(B: + +@defvar gnus-diary-summary-line-format +$BF|Dx%0%k!<%W$G;H$&35N,9T;EMM$rDj5A$7$^$9(B (@pxref{Summary Buffer Lines})$B!#(B +@code{gnus-diary} $B$O$=$l$r!"F|Dx%0%k!<%W$N%Q%i%a!<%?$r<+F0$G99?7$9$k$?$a(B +$B$K;H$$$^$9!#(B +@end defvar + +@defvar gnus-diary-time-format +$BF|Dx$N35N,%P%C%U%!$KF|IU$rI=<($9$k$?$a$N=qK!;EMM$rDj5A$7$^$9!#$3$l(B +$B$OMxMQ\:Y$OJQ?t$N@bL@J8$r8+$F2<(B +$B$5$$!#(B +@end defvar + +@defvar gnus-diary-delay-format-function +$BF|Dx$N35N,%P%C%U%!$KCY1d(B ($B;D$j;~4V(B) $B$rI=<($9$k$?$a$N@07A4X?t$rDj5A$7$^$9!#(B +$B$3$l$OMxMQ\:Y$OJQ?t$N@b(B +$BL@J8$r8+$F2<$5$$!#(B +@end defvar + +@node Diary Articles Sorting +@subsubsection $BF|Dx5-;v$NJB$YBX$((B +@cindex diary articles sorting +@cindex diary summary lines sorting +@findex gnus-summary-sort-by-schedule +@findex gnus-thread-sort-by-schedule +@findex gnus-article-sort-by-schedule + +@code{gnus-diary} $B$OJB$YBX$($N$?$a$N4X?t(B (@pxref{Sorting the Summary +Buffer}) $B$H$7$F(B @code{gnus-summary-sort-by-schedule}$B!"(B +@code{gnus-thread-sort-by-schedule} $B$*$h(B +$B$S(B @code{gnus-article-sort-by-schedule} $B$rDs6!$7$^$9!#$3$l$i$N4X?t$K$h$C(B +$B$F!":G$b6a$$M=Dj$+$i:G$b1s$$J}$^$G!"F|Dx$N35N,%P%C%U%!$r@0M}$9$k$3$H$,$G(B +$B$-$^$9!#(B + +@code{gnus-diary} $B$O<+F0E*$K!"35N,%P%C%U%!$N!VJB$YBX$((B(sort)$B!W%a%K%e!<(B +$B$K(B @code{gnus-summary-sort-by-schedule} $B$rAH$_9~$_!"B>$NFs$D$rBh0lo$N%a!<%k$rF|DxMQ$N$b$N$KJQ49$9$kA`:n$r4JC1$K$9$k$?$a$K!"(B +@code{message-mode} $B$H(B @code{article-edit-mode} $B$K$*$$(B +$B$F(B @kbd{C-c D c} $B%-!<$H$7$F@_Dj$b$5$l$F$$$^$9!#(B + +$B@\F,0z?t$rH<$C$F$3$N4X?t$r8F$V$H!"$=$l$i$,$"$k$+!"@5$7$$$+$I$&$+$H$OL54X(B +$B78$K!"F|Dx%X%C%@!<$NF~NO$r6/@)$7$^$9!#$=$&$d$C$F!"Nc$($P4{$K@5$7$/@_Dj$5(B +$B$l$?%a%C%;!<%8$NF|Dx$r!"$H$F$b4JC1$KJQ99$9$k$3$H$,$G$-$^$9!#(B + +@node Diary Group Parameters +@subsubsection $BF|Dx%0%k!<%W$N%Q%i%a!<%?(B +@cindex diary group parameters + +$B?7$7$$F|Dx%0%k!<%W$r:n$k$+!"$^$?$O$=$l$r3+$/$H!"(B@code{gnus-diary} $B$O<+F0(B +$BE*$K%0%k!<%W%Q%i%a!<%?$r8!::$7!"I,MW$J$i35N,9T;EMM$rF|DxMQ$KFC2=$7$?CM$K(B +$B@_Dj$7!"F|DxMQ$NJB$YBX$(4X?t$rAH$_9~$_!"$5$i$K$=$N%0%k!<%W$NEj9FMM(B +$B<0(B (posting-style) $B$Ke$N@bL@$rFI$s$G$/$l$?$b$N$H$7$F!"0J2<$O(B @code{nndiary} $B$G%a!<%k(B +$B$rAw?.$9$k$3$H$K4X$9$k!"Fs$D$N:G8e$NCm0U;v9`$G$9(B: + +@itemize @bullet +@item +@code{nndiary} $B$O(B @emph{$BK\Ev$N(B} $B%a!<%k!&%P%C%/%(%s%I$G$9!#K\Ev$K$"$J$?$O(B +$BK\Ev$NF|Dx%a%C%;!<%8$rK\Ev$KAw$j$^$9!#$3$l$O!"F|Dx%a%C%;!<%8$rAw$k$3$H$K(B +$B$h$C$F!"C/$K$G$b(B ($BH`$i$,(B Gnus $B$H(B @code{nndiary} $B$r;H$C$F$$$k$N$J$i$P(B) $BM=(B +$BDj$rEA$($k$3$H$,$G$-$k$3$H$r$b0UL#$7$^$9!#(B +@item +$B$7$+$7$J$,$i(B @code{nndiary} $B$O(B @code{request-post} $B%a%=%C%I$r;}$C$F$b$$(B +$B$k$N$G!"F|Dx%0%k!<%W$G(B @kbd{C-u m} $B$NBe$o$j$K(B @kbd{C-u a} $B$r;H$&$3$H$K$h$C(B +$B$F!"%a%C%;!<%8$re$G%M%C%H%o!<%/$K1JB3E*$K@\B3$7$FAv$i$;$F$$$^$7$?!#%K%e!<%9$NG[Aw(B +$B$O%K%e!<%9%5!<%P!<$K$h$C$Fe$i$J$$$h$&$K!"(B +$BA4$F$N%K%e!<%9$H%a!<%k$r5[$$>e$2!"EEOC$r@Z$j!"?t;~4V3]$1$FFI$_!"$=$7$FAw(B +$B$j$?$$JV?.$rA4$FAw?.$9$k!"$H$$$&e$G%K%e!<(B +$B%9$rFI$`?M$,$"$J$?$7$+$$$J$1$l$P!"%K%e!<%9%5!<%P!<$N5!G=$r%K%e!<%9%j!<%@!<(B +$B$KG$$;$k$h$&$K$9$k$3$H$OM}$K$+$J$C$F$$$^$9!#(B + +Gnus $B$r(B ``$B%*%U%i%$%s(B'' $B$N%K%e!<%9%j!<%@!<$H$7$F;EN)$F$k$N$O6K$a$F4JC1$G(B +$B$9!#C$9J}K!(B +* Agent Regeneration:: $BDL?.@ZCG$dB>$N;v8N$+$i2sI|$9$kJ}K!(B +* Agent and IMAP:: $B%(!<%8%'%s%H$r(B @acronym{IMAP} $B$G;H$&J}K!(B +* Outgoing Messages:: $BEj9F!"%a!<%k$r=P$9$H$-$K$J$K$,5/$3$k$N$+(B? +* Agent Variables:: $B%+%9%?%^%$%:$O3Z$7(B +* Example Setup:: $B%*%U%i%$%s?M4V$N$?$a$N(B @file{~/.gnus.el} $B$NNc(B +* Batching Agents:: @code{cron} $B%8%g%V$K$h$k%K%e!<%9$N%K%e!<%9%j!<%@!<$OM-L5$r8@$o$:$"$J$?$K%I%8$rF'$^$;$k$+$b$7$l$^(B +$B$;$s$,!"(BGnus $B$G$O$"$J$?$KA*Br8"$,$"$j$^$9(B! + +Gnus $B$OuBV$K$b$"$j$^$;$s!#(B +$B$b$C$H@53N$K8@$($P!"%5!<%P!<$4$H$K$=$l$>$l$N>uBV$r;}$A$^$9!#$3$l$O!"$$$/(B +$B$D$+$N%5!<%P!<$,@\B3$G$-$J$$$H$-$K!"B>$N%5!<%P!<$O@\B3$G$-$k$3$H$r0UL#$7(B +$B$^$9!#$5$i$K!"(B Agent $B$K$h$C$F$$$/$D$+$N%5!<%P!<$r$9$Y$FL5;k$9$k$3$H$,$G(B +$B$-$^$9(B ($B$=$N0UL#$O!"$=$l$i$,$$$D$b(B plugged $B$K$J$C$F$$$k$N$H;w$F$$$k$H$$(B +$B$&$3$H$G$9(B)$B!#(B + +Agent $B$r@Z$jN%$7$F$b!"$J$<(B Gnus $B$,%M%C%H$K@\B3$7$F$$$k$N$+$,$$$V$+$7$/;W(B +$B$o$l$?$H$-!"9T$&$Y$-uBV$O(B @dfn{offline} $B$G$9!#%5!<%P!<$O$H$-$I$-E~C#2DG=$G$O$J$/(B +$B$J$j$^$9!#(BGnus $B$,$3$N$3$H$rCN$k$H!"$=$N%5!<%P!<$r(B offline $B$N>uBV$K@Z$j49(B +$B$($F$bNI$$$+$I$&$+$r?R$M$^$9!#$O$$!"$HEz$($?$J$i$P!"(B(offline $B$KLa$7$FNI(B +$B$$$+$H(B Gnus $B$,?R$M$?>l9g0J30$O(B) $B%5!<%P!<$OB?>/(B unplugged $B$@$C$?$H$-$N$h(B +$B$&$K?6$kIq$$$^$9!#(B + +$B%(!<%8%'%s%H$r;H$C$?E57?E*$J(B Gnus $B$NBPOCA`:n$r8+$F$_$^$7$g$&!#(B + +@itemize @bullet + +@item +@findex gnus-unplugged +Gnus $B$r(B @code{gnus-unplugged} $B$G5/F0$7$^$9!#$3$l$O(B Gnus $B%(!<%8%'%s%H$r@Z(B +$B$jN%$5$l$F$$$k>uBV$G5/F0$7$^$9!#$3$N>uBV$G$O!"$9$G$KH$7$F2<$5$$!#(B + +@item +$B$=$7$F!"$=$N>l$G$9$0$K?7$7$$%K%e!<%9$rFI$`$3$H$b$G$-$^$9$7!"%K%e!<%9$r%m!<(B +$B%+%k%^%7%s$K%@%&%s%m!<%I$9$k$3$H$b$G$-$^$9!#8eH$7$F$/$@$5$$!#(B) + +@item +$B5-;v$ruBV$K$5$;!"(B +PPP $B4X78(B($B$J$I(B)$B$rJD$8$^$9!#$=$&$7$F%K%e!<%9$r%*%U%i%$%s$GFI$`$3$H$,$G$-$^(B +$B$9!#(B + +@item +$B$=$7$FBhFs%9%F%C%W$KLa$j$^$9!#(B +@end itemize + +$B0J2<$K%(!<%8%'%s%H$r=i$a$F(B($B$+$=$3$i$K(B)$B;H$&$H$-$KI,MW$J$$$/$D$+$N:n6H$r<((B +$B$7$^$9!#(B + +@itemize @bullet + +@item +$B$I$N%5!<%P!<$r%(!<%8%'%s%H$GLLE]$r8+$k$+$r7h$a$^$9!#$b$7%a!<%k%P%C%/%(%s(B +$B%I$,$"$l$P!"$=$l$r%(!<%8%'%s%H$KLLE]$r8+$5$;$k$N$O$*$=$i$/L50UL#$G$7$g$&!#(B +$B%5!<%P!<%P%C%U%!!<$K0\F0$7(B ($B%0%k!<%W%P%C%U%!!<$G(B @kbd{^})$B!"%(!<%8%'%s%H(B +$B$K07$C$FM_$7$$%5!<%P!<(B($BJ#?t2D(B)$B$G(B @kbd{J a} $B$r2!$9(B (@pxref{Server Agent +Commands}) $B$+!"$^$?$O%(!<%8%'%s%H$K07$C$FM_$7$/$J$$$N$K<+F0E*$KDI2C$5$l(B +$B$?%5!<%P!<$G(B @kbd{J r} $B$r2!$7$^$9!#%G%#%U%)%k%H$G(B +$B$O(B @code{gnus-select-method} $B$H(B @code{gnus-secondary-select-methods} $B$K(B +$B$"$k$9$Y$F$N(B @code{nntp} $B$H(B @code{nnimap} $B%5!<%P!<$,%(!<%8%'%s%H2=$5$l$^(B +$B$9!#(B + +@item +$B%@%&%s%m!<%IJ}?K$r7hDj$7$^$9!#$"$J$?$NJ}?K$rJ}$O!"B??t$N%0%k!<%W$KE,MQ$9$kJ}?K$N@_(B +$BDj$rMQ0U$7$F$$$^$9!#$I$l$r;H$&$+$O40A4$K$"$J$?$N@UG$$G$9!#N>J}$r:.$<$F;H(B +$B$&>l9g$O!"%H%T%C%/%Q%i%a!<%?$OJ,N`$rL58z$K$9$k$3$H$r9MN8$KF~$l$J$1$l$P$J(B +$B$i$J$$$G$7$g$&!#$"$J$?$NJ}?K$K$=$0$o$J$$>/?t$N%0%k!<%W$,$"$k$N$J$i$P!"$=(B +$B$l$i$N@_Dj$rJQ99$9$k$?$a$K%0%k!<%W%Q%i%a!<(B +$B%?(B (@pxref{Group Parameters}) $B$r;H$&$3$H$,$G$-$^$9!#(B + +@item +$B$($($H(B@dots{}$B!"0J>e$G$9!#(B +@end itemize + +@node Agent Categories +@subsection $B%(!<%8%'%s%HJ,N`(B + +$B%K%e!<%9G[Aw5!9=$H%K%e!<%9%j!<%@!<$rE}9g$9$k0l$D$NBg$-$JM}M3$O!"$I$N5-;v(B +$B$r%@%&%s%m!<%I$9$k$+$K$D$$$F!"$h$jNI$$@)8f$r2DG=$H$9$k$3$H$G$9!#G|Bg$JNL(B +$B$N5-;v$r%@%&%s%m!<%I$7$F$b$"$^$j0UL#$O$J$/!"$=$l$i$rFI$s$G$b$"$^$jLLGr$/(B +$B$J$$$3$H$,J,$+$k$@$1$G$9!#2?$r%@%&%s%m!<%I$9$k$+$NA*Br$O$b$C$H?5=E$G$"$k(B +$B$Y$-$G$"$j!"$=$N5-;v$,LLGr$$$HJ,$+$C$?;~E@$G!"%@%&%s%m!<%I$9$k$?$a$N0u$r(B +$B$NJ,N`$KB0$5$J$$%0%k!<%W(B +$B$O(B @code{$B=i4|(B} $BJ,N`$KB0$7$^$9!#(BGnus $B$OJ,N`$N:n@.$H4IM}$N$?$a$NFH<+$N%P%C(B +$B%U%!!<$r;}$C$F$$$^$9!#(B + +$B$b$7$=$&$7$?$1$l$P!"%0%k!<%W%Q%i%a!<%?(B (@pxref{Group Parameters}) $B$H%H%T%C(B +$B%/%Q%i%a!<%?(B (@pxref{Topic Parameters}) $B$r!"%(!<%8%'%s%H$r@)8f$9$kBeBXl=j$G@_Dj$9$k$3$H$,$G$-$k$N$G!"$I$N%=!<(B +$B%9$,?.MQ$G$-$k$+$r7h$a$k$?$a$N5,B'$r@_$1$^$7$?!#$3$N5,B'$O!"%Q%i%a!<%?$N(B +$B%=!<%9$,A0!"$=$NJ,N`$KB0$9$k%0%k!<%W$N%j%9%H!"$*$h$S%+%9%?%^%$%:2DG=$J(B +$BJQ?t$r>e=q$-$9$kB?$/$NG$0U$J%Q%i%a!<%?$+$i@.$j$^$9!#%(!<%8%'%s%H%Q%i%a!<(B +$B%?$N40A4$J%j%9%H$r0J2<$K<($7$^$9!#(B + +@cindex Agent Parameters +@table @code +@item agent-cat-name +$BJ,N`$NL>A0!#(B + +@item agent-groups +$B$3$NJ,N`$K$"$k%0%k!<%W$N%j%9%H!#(B + +@item agent-predicate +($BDL>o(B) $B$I$N5-;v$r%@%&%s%m!<%I$9$k$N$,E,Ev$+$H$$$&Bg$^$+$JNX3T$rM?$($k=R(B +$B8l!#$=$7$F(B + +@item agent-score-file +($BDL>o(B) $B$I$N5-;v$r%@%&%s%m!<%I$9$k$+$r7h$a$k$H$-$N$h$j$-$a$N:Y$+$$%9%3%"(B +$B5,B'!#(B($B$3$N%@%&%s%m!<%I%9%3%"(B (@dfn{download score}) $B$ODL>o$N%9%3%"$H$O(B +$BI,$:$7$b4X78$,L5$$$3$H$KCm0U$7$F$/$@$5$$!#(B) + +@item agent-enable-expiration +$B$3$N%0%k!<%W$N8E$$5-;v$r%(!<%8%'%s%H$,4|8B@Z$l>C5n$9$Y$-$+$I$&$+$r<($9(B +$B%V!<%kJQ?t!#BgDq$N%0%k!<%W$O%G%#%9%/6u4V$rO2Hq$7$J$$$?$a$K4|8B@Z$l>C5n$5(B +$B$l$k$Y$-$G$9!#$$$d!"C5n$5$l$k$Y$-$G$O$J(B +$B$$%0%k!<%W$@$1$r4^$s$G$$$k$H8@$C$F$b!"$?$V$s:9$7;Y$($"$j$^$;$s!#(B + +@item agent-days-until-old +$B4{FI$N5-;v$r4|8B@Z$l>C5n$7$F$b:9$7;Y$($J$$$3$H$rH=CG$9$kA0$K!"%(!<%8%'%s(B +$B%H$,BT$C$F$$$k$Y$-F|?t$r<($9@0?t!#(B + +@item agent-low-score +@code{gnus-agent-low-score} $B$r>e=q$-$9$k@0?t!#(B + +@item agent-high-score +@code{gnus-agent-high-score} $B$r>e=q$-$9$k@0?t!#(B + +@item agent-length-when-short +@code{gnus-agent-short-article} $B$r>e=q$-$9$k@0?t!#(B + +@item agent-length-when-long +@code{gnus-agent-long-article} $B$r>e=q$-$9$k@0?t!#(B + +@item agent-enable-undownloaded-faces +$B%@%&%s%m!<%I$5$l$F$$$J$$5-;v(B +$B$r(B @code{gnus-summary-*-undownloaded-face} $B$r;H$C$F35N,%P%C%U%!$KI=<($9(B +$B$Y$-$+$I$&$+$r<($9%7%s%\%k!#(B@code{nil} $B0J30$J$i$I$s$J%7%s%\%k$G$b!"%@%&(B +$B%s%m!<%I$5$l$F$$$J$$5-;vMQ$N%U%'!<%9$r;H$&$h$&$K$J$j$^$9!#(B +@end table + +$B$$$C$?$sJ,N`$,:n$i$l$?$i!"J,N`$NL>A0$rJQ$($k$3$H$O$G$-$^$;$s!#(B + +$B$=$l$>$l$NJ,N`$O!"$=$NJ,N`$N8B$i$l$?%a%s%P!<$G$"$k%0%k!<%W$N%j%9%H$r0];}(B +$B$7$^$9!#8B$i$l$?5,B'$O<+F0E*$K<99T$5$l$^$9!#?7$7$$J,N`$K%0%k!<%W$rDI2C$9(B +$B$k$H!"$=$l$O8E$$J,N`$+$i<+F0E*$K$l!"A4$F$N2DG=$J5-;v$r%@%&%s%m!<%I$9$k$+!"(B +$BA4$/2?$b$7$J$$$+!"$G$9!#$3$l$i$NFs$D$NFCJL$J=R8l$N>l9g$O!"DI2C$N%9%3%"5,(B +$BB'$OM>J,$G$9!#(B + +@code{high} $B$d(B @code{low} $B$H$$$&=R8l$O2<$G@bL@$5$l$F$$$k$h$&$K!"(B +@code{gnus-agent-high-score} $B$H(B @code{gnus-agent-low-score} $B$H$N5-;v$N%9(B +$B%3%"$H$N4X78$K$h$j5-;v$r%@%&%s%m!<%I$7$^$9!#(B + +$B%@%&%s%m!<%I$,E,@Z$+$I$&$+$N!"$5$i$K:Y$+$$@)8f$rF@$k$?$a$K!"=R8l$OO@M}1i(B +$B;;;R$,4V$K;6$j$P$a$i$l$?=R8l$NAH$_9g$o$;$+$i$J$k$3$H$,$G$-$^$9!#(B + +$B$*$=$i$/$$$/$D$+$NNc$,$=$N$^$^;H$($^$9!#(B + +$B0J2<$O4JC1$J=R8l$G$9!#(B($B$3$l$O=i4|@_Dj$N=R8l$G$9!#$D$^$j!"B>$N$I$NJ,N`$K(B +$B$b4^$^$l$J$$A4$F$N%0%k!<%W$KBP$7$F;HMQ$5$l$^$9!#(B) + +@lisp +short +@end lisp + +$B$H$C$F$b4JC1$G$7$g(B? $B$3$N=R8l$O!"5-;v$,C;$$(B(``$BC;$$(B'' $B2ACM$,$"$k(B) $B>l9g$K8B(B +$B$j??$K$J$j$^$9!#(B + +$B$3$l$O$b$C$HJ#;($J=R8l$G$9!#(B + +@lisp +(or high + (and + (not low) + (not long))) +@end lisp + +$B$3$N0UL#$O!"9b$$%9%3%"$r;}$C$F$$$k$+!"$"$k$$$O%9%3%"$,Dc$/$J$/$F$+$DD9$/(B +$B$J$$!"$H$$$&5-;v$r%@%&%s%m!<%I$9$k!"$H$$$&$3$H$G$9!#$o$+$k$@$m!#(B + +$B;H$C$F$b$h$$O@M}1i;;;R$O!"(B@code{or}, @code{and}, @code{not} $B$G$9!#(B($B$b$7(B +$B;H$$$?$1$l$P!"$h$j(B ``C'' $BIw$N1i;;;R(B @samp{|}, @code{&}, @code{!} $B$rBe$j(B +$B$K;H$&$3$H$,$G$-$^$9!#(B) + +$B0J2<$N=R8l$O$"$i$+$8$aDj5A$5$l$F$$$^$9$,!"$3$l$i$N$I$l$b$"$J$?$N$d$j$?$$(B +$B$3$H$K0lCW$7$J$1$l$P!"<+J,$GFH<+$N$b$N$r=q$/$3$H$b$G$-$^$9!#(B + +$B$=$l$>$l$N$3$l$i$N=R8l$rI>2A$9$k$H$-!"L>A0$,IU$1$i$l$?Dj?t$O!"E,@Z$J%Q%i(B +$B%a!<%?$N85$K(B @code{gnus-agent-find-parameter} $B$r8F$V$3$H$K$h$C$F7hDj$5$l(B +$B$?CM$GB+G{$5$l$^$9!#Nc$((B +$B$P(B gnus-agent-short-article $B$O(B @code{(gnus-agent-find-parameter group +'agent-short-article)} $B$KB+G{$5$l$^$9!#$3$l$O!"$"$J$?$,$"$J$?$NJ,N`$G=R(B +$B8l$r;XDj$7$F$+$i!"$=$N=R8l$r8D!9$N%0%k!<%W$K$D$$$FD4@0$G$-$k$3$H$r0UL#$7(B +$B$^$9!#(B + +@table @code +@item short +$B5-;v$,(B @code{gnus-agent-short-article} $B9T$h$jC;$+$1$l$P??!#=i4|@_DjCM(B +$B$O(B 100$B!#(B + +@item long +$B5-;v$,(B @code{gnus-agent-long-article} $B9T$h$jD9$1$l$P??!#=i4|@_DjCM$O(B 200$B!#(B + +@item low +$B5-;v$N%@%&%s%m!<%I%9%3%"$,(B @code{gnus-agent-low-score} $B0J2<$G$"$l$P??!#(B +$B=i4|@_DjCM$O(B 0$B!#(B + +@item high +$B5-;v$N%@%&%s%m!<%I%9%3%"$,(B @code{gnus-agent-high-score} $B0J>e$G$"$l$P??!#(B +$B=i4|@_DjCM$O(B 0$B!#(B + +@item spam +Gnus $B%(!<%8%'%s%H$,$=$N5-;v$r(B spam $B$@$H8+Pv$7$?$i??!#$3$NH/8+E*o$K??!#(B + +@item false +$B>o$K56!#(B +@end table + +$B$"$J$?$,<+J,$NFH<+$N=R8l4X?t$r:n@.$7$?$1$l$P!"$3$l$rCN$C$F$*$$$F$/$@$5(B +$B$$(B: +$B4X?t$O0z?tL5$7$G8F$S=P$5$l$^$9$,!"(B +@code{gnus-headers} $B$H(B @code{gnus-score} $BF0E*JQ?t$K$OJXMx$JCM$,B+G{$5$l(B +$B$^$9!#(B + +$BNc$($P!"0lDj$NF|IU0J>eA0$KEj9F$5$l$?5-;v(B ($BNc$($P!"(B +@code{gnus-agent-expire-days} $B0JA0$KEj9F$5$l$?$b$N(B) $B$r%@%&%s%m!<%I$7$J$$(B +$B$H$9$k$3$H$b$G$-$^$9!#$=$N>l9g!"0J2<$N$h$&$J4X?t$r=q$/$G$7$g$&(B: + +@lisp +(defun my-article-old-p () + "Say whether an article is old." + (< (time-to-days (date-to-time (mail-header-date gnus-headers))) + (- (time-to-days (current-time)) gnus-agent-expire-days))) +@end lisp + +$B$=$&$9$k$H!"=R8l$O$3$N$h$&$KDj5A$7$^$9(B: + +@lisp +(not my-article-old-p) +@end lisp + +$B$b$7$/$O!"(B@file{~/.gnus.el} $B$d2?$+B>$N$b$N$G$b!"4{Dj(B +$B$N(B @code{gnus-category-predicate-list} $B$K<+J,$N=R8l$rDI2C$9$k$3$H$b$G$-(B +$B$^$9!#(B + +@lisp +(require 'gnus-agent) +(setq gnus-category-predicate-alist + (append gnus-category-predicate-alist + '((old . my-article-old-p)))) +@end lisp + +$B$=$7$F!"C1$Ke$N$h$&$J$b$N$r;H$&$H$-$O!"@$$NCf$K$O@5$7$/@_Dj$5$l$F$$$J$$%7%9%F%`(B/$B%a(B +$B!<%i!<$,$"$j!"5-;v$NF|IU$O$$$DEj9F$5$l$?$+$r>o$K3Ne$N=R8l$O$=$NJ,N`$KB0$9$k(B @emph{$BA4$F(B} $B$N%0%k!<%W$KE,MQ$5$l$^$9!#$7$+$7!"(B +$BJ,N`Cf$N8D!9$N%0%k!<%W$KFCDj$N=R8l$rK>$s$@$j!"BUBF2a$.$F?7$7$$J,N`$r@_Dj(B +$B$G$-$J$$$H$-$O!"%0%k!<%W$N8D!9$N=R8l$r%0%k!<%W%Q%i%a!<%?$Ge$N$b$N$HEy2A$JD9$$J}$NNc$O(B: + +@lisp +(agent-predicate or high (and (not low) (not long))) +@end lisp + +$BJ,N`$N;XDj$GMW5a$5$l$k30$N4]3g8L$O$3$3$G$OF~NO$5$l$F$*$i$:!"%I%C%HBP$N5-(B +$BK!$G$b$J$/!"=R8l$NCM$O%j%9%H$"$k$H$_$J$5$l$^$9!#(B + +$B$5$F!"%@%&%s%m!<%I%9%3%"$NJ8K!$ODL>o$N%9%3%"%U%!%$%k$NJ8K!$HF1$8$G$9$,!"(B +$BNc30$H$7$F!"J}$N>l=j$G!"(B@code{$B%@%&%s%m!<%I%9%3%"5,B'(B} $B$O0J2<$N;0$D$N7A<0$re$G=q$+$l$F$$$k$h$&$K!"%9%3%"IU$1%-!<%o!<%I$N0lItJ,$7$+;H$($J$$$3$H$r=|(B +$B$1$P!"$3$l$OIaDL$N(B Gnus $B%9%3%"%U%!%$%k$N9=J8$HF1$8$G$9!#(B + +$BNc(B: + +@itemize @bullet +@item +$BJ,N`;XDj(B + +@lisp +(("from" + ("Lars Ingebrigtsen" 1000000 nil s)) +("lines" + (500 -100 nil <))) +@end lisp + +@item +$B%0%k!<%W(B/$B%H%T%C%/%Q%i%a!<%?;XDj(B + +@lisp +(agent-score ("from" + ("Lars Ingebrigtsen" 1000000 nil s)) + ("lines" + (500 -100 nil <))) +@end lisp + +$B$^$?!"$3$3$G0lHV30$N3g8L$,>JN,$5$l$F$$$k$3$H$KCm0U$7$F$/$@$5$$!#(B +@end itemize + +@item +$B%(!<%8%'%s%H%9%3%"%U%!%$%k(B + +$B$3$l$i$N%9%3%"%U%!%$%k$O>e$G=R$Y$i$l$F$$$k;HMQ2DG=$J%9%3%"IU$1%-!<%o!<(B +$B%I(B @emph{$B$N$_(B} $B$G$"$kI,MW$,$"$j$^$9!#(B + +$BNc(B: + +@itemize @bullet +@item +$BJ,N`;XDj(B + +@lisp +("~/News/agent.SCORE") +@end lisp + +$B$b$7$/$O!"$?$V$s(B + +@lisp +("~/News/agent.SCORE" "~/News/agent.group.SCORE") +@end lisp + +@item +$B%0%k!<%W%Q%i%a!<%?;XDj(B + +@lisp +(agent-score "~/News/agent.SCORE") +@end lisp + +$B>e$NMM$K!"DI2C$N%9%3%"%U%!%$%k$r;XDj$9$k$3$H$,$G$-$^$9!#$^$?3g8L$K$D$$$F(B +$B8@$o$J$1$l$P$$$1$^$;$s$+(B? +@end itemize + +@item +@code{$BIaDL(B} $B$N%9%3%"%U%!%$%k$N;HMQ(B + +$B0l$D$N%0%k!<%W$GFs$D$N%9%3%"5,B'$r0];}$7$?$/$J$/!"%0%k!<%W$NK>$_(B +$B$N(B @code{$B%@%&%s%m!<%I(B} $B$N4p=`$,(B @code{$BFI$`(B} $B4p=`$HF1$8$J$i!"%(!<%8%'%s%H(B +$B$K2?$r%@%&%s%m!<%I$9$k$+$r7h$a$k:]$K(B @code{$BIaDL(B} $B$N%9%3%"%U%!%$%k$r;2>H(B +$B$9$k$h$&$K$9$k$3$H$,$G$-$^$9!#(B + +$BJ,N`Dj5A$+!"%0%k!<%W%Q%i%a!<%?$N$3$l$i$N;X<($O%(!<%8%'%s%H$K%0%k!<%W$KE,(B +$BMQ2DG=$JA4$F$N%9%3%"%U%!%$%k$rFI$^$;!"%9%3%"IU$1%-!<%o!<%I$N;HMQ2DG=$JIt(B +$BJ,=89g$KL5$$$b$N$r(B @emph{$BA*JL$7$FH4$-o$OA4$F$NJ,N`$OJ,N`%P%C%U%!!<$+$i4IM}$7$^$9!#(B($B%0%k!<%W%P%C%U%!!<(B +$B$+$i(B @kbd{J c} $BL?Na$K$h$C$F(B) $B=i$a$F$3$l$KF~$C$?$H$-!"=i4|@_Dj$N(B +$BJ,N`$@$1$,I=<($5$l$^$9!#(B + +$B0J2<$NL?Na$,$3$N%P%C%U%!!<$G;HMQ$G$-$^$9!#(B + +@table @kbd +@item q +@kindex q ($BJ,N`(B) +@findex gnus-category-exit +$B%0%k!<%W%P%C%U%!!<$KLa$k(B (@code{gnus-category-exit})$B!#(B + +@item e +@kindex e ($BJ,N`(B) +@findex gnus-category-customize-category +$BA*Br$5$l$?J,N`$N%Q%i%a!<%?$r0l3g$7$F@_Dj$9$k$?$a$K!"%+%9%?%^%$%:%P%C%U%!(B +$B$r;H$$$^$9(B (@code{gnus-category-customize-category})$B!#(B + +Use a customization buffer to set all of the selected category's +parameters at one time (@code{gnus-category-customize-category}). + +@item k +@kindex k ($BJ,N`(B) +@findex gnus-category-kill +$B8=:_$NJ,N`$r>C5n$9$k(B (@code{gnus-category-kill})$B!#(B + +@item c +@kindex c ($BJ,N`(B) +@findex gnus-category-copy +$B8=:_$NJ,N`$rJ#@=$9$k(B (@code{gnus-category-copy})$B!#(B + +@item a +@kindex a ($BJ,N`(B) +@findex gnus-category-add +$B?7$7$$J,N`$rDI2C$9$k(B (@code{gnus-category-add})$B!#(B + +@item p +@kindex p ($BJ,N`(B) +@findex gnus-category-edit-predicate +$B8=:_$NJ,N`$N=R8l$rJT=8$9$k(B (@code{gnus-category-edit-predicate})$B!#(B + +@item g +@kindex g ($BJ,N`(B) +@findex gnus-category-edit-groups +$B8=:_$NJ,N`$KB0$9$k%0%k!<%W$N0lMw$rJT=8$9(B +$B$k(B (@code{gnus-category-edit-groups})$B!#(B + +@item s +@kindex s ($BJ,N`(B) +@findex gnus-category-edit-score +$B8=:_$NJ,N`$N%@%&%s%m!<%I%9%3%"5,B'$rJT=8$9(B +$B$k(B (@code{gnus-category-edit-score})$B!#(B + +@item l +@kindex l ($BJ,N`(B) +@findex gnus-category-list +$BA4$F$NJ,N`$rI=<($9$k(B (@code{gnus-category-list})$B!#(B +@end table + +@node Category Variables +@subsubsection $BJ,N`JQ?t(B + +@table @code +@item gnus-category-mode-hook +@vindex gnus-category-mode-hook +$BJ,N`%P%C%U%!!<$GA0!#(B + +@item g +$BJ,N`$KB0$9$k%0%k!<%W$N?t!#(B +@end table + +@item gnus-category-mode-line-format +@vindex gnus-category-mode-line-format +$BJ,N`%b!<%I9T$NMM<0(B (@pxref{Mode Line Formatting})$B!#(B + +@item gnus-agent-short-article +@vindex gnus-agent-short-article +$B$3$NJQ?t$h$j>/$J$$9T?t$N5-;v$OC;$$!#=i4|@_DjCM$O(B 100$B!#(B + +@item gnus-agent-long-article +@vindex gnus-agent-long-article +$B$3$NJQ?t$h$jB?$$9T?t$N5-;v$OD9$$!#=i4|@_DjCM$O(B 200$B!#(B + +@item gnus-agent-low-score +@vindex gnus-agent-low-score +$B$3$NCM$h$j>.$5$$%9%3%"$r;}$D5-;v$ODc%9%3%"$G$"$k!#=i4|@_DjCM$O(B 0$B!#(B + +@item gnus-agent-high-score +@vindex gnus-agent-high-score +$B$3$NCM$h$jBg$-$$%9%3%"$r;}$D5-;v$O9b%9%3%"$G$"$k!#=i4|@_DjCM$O(B 0$B!#(B + +@item gnus-agent-expire-days +@vindex gnus-agent-expire-days +$B4|8B@Z$l>C5n$K$U$5$o$7$/$J$k$^$G4{FI5-;v$r%(!<%8%'%s%H$N%m!<%+%k%G%#%9%/(B +$B$KN1$a$F$*$/F|?t(B ($B$G$bL>A0$,F1$8$@$C$?$i!"$3$l$O$=$N%5!<%P!<$K$*$1$k4|8B(B +$B@Z$l>C5n$r0UL#$7$^$;$s!#$=$l$OC1$K5-;v$N%m!<%+%k$JJ#@=$r>C$9$3$H$r0UL#$7(B +$B$^$9(B)$B!#$5$i$KM}2r$9$Y$-Bg;v$J$3$H$O!"5-;v$,FI$^$l$?;~$G$O$J$/%m!<%+%k%G%#(B +$B%9%/$K5-;v$,=q$+$l$?;~$+$i7W?t$,;O$^$k$H$$$&$3$H$G$9!#%G%#%U%)%k%H$O(B 7$BF|!#(B + +@item gnus-agent-enable-expiration +@vindex gnus-agent-enable-expiration +$B%0%k!<%W$N5-;v$,!"%G%#%U%)%k%H$G4|8B@Z$l>C5n$5$l$k$+!"L54|8B$KJ];}$5$l$k(B +$B$+$r7hDj$7$^$9!#%G%#%U%)%k%H$O(B @code{ENABLE} $B$G!"K>$`$J$i$P4|8B@Z$l>C5n(B +$B$r$5$;$J$$$h$&$K$7$J$1$l$P$J$i$J$$$3$H$r0UL#$7$^$9!#0lJ}!"$3$l(B +$B$r(B @code{DISABLE} $B$K@_Dj$9$k$3$H$,$G$-$^$9!#$=$N>l9g!"A*Br$5$l$?%0%k!<%W(B +$B$G$N4|8B@Z$l>C5n$rM-8z$K$7$J$1$l$P$J$j$^$;$s!#(B +@end table + +@node Agent Commands +@subsection $B%(!<%8%'%s%HL?Na(B +@findex gnus-agent-toggle-plugged +@kindex J j (Agent) + +$BA4$F$N(B Gnus $B%(!<%8%'%s%HL?Na$O(B @kbd{J} $B%5%V%^%C%W$K$"$j$^$9!#(B +@kbd{J j} (@code{gnus-agent-toggle-plugged}) $BL?Na$OA4$F$N%b!<%I(B +$B$GF0:n$7!"(BGnus $B%(!<%8%'%s%H$N@Z$jN%$7(B/$B:9$79~$_>uBV$r@Z$jBX$($^$9!#(B + +@menu +* Group Agent Commands:: $B%0%k!<%W$N@_Dj$H$=$l$i$NFbMF$NC5n$7$^(B +$B$9(B (@code{gnus-agent-remove-group})$B!#$3$NL?Na$O%W%m%;%9(B/$B@\F,<-$N=,47$rM}(B +$B2r$7$^$9!#(B(@pxref{Process/Prefix})$B!#(B + +@item J Y +@kindex J Y ($B%(!<%8%'%s%H(B $B%0%k!<%W(B) +@findex gnus-agent-synchronize-flags +$B%j%b!<%H%5!<%P!<$,(B @dfn{unplugged} $B$N$H$-$KJQ99$5$l$?%U%i%0$,$"$l$PF14|(B +$B$5$;$^$9!#(B +@end table + +@node Summary Agent Commands +@subsubsection $B35N,%(!<%8%'%s%HL?Na(B + +@table @kbd +@item J # +@kindex J # ($B%(!<%8%'%s%H(B $B35N,(B) +@findex gnus-agent-mark-article +$B5-;v$K%@%&%s%m!<%I$9$k$h$&$K0u$rIU$1$k(B (@code{gnus-agent-mark-article})$B!#(B + +@item J M-# +@kindex J M-# ($B%(!<%8%'%s%H(B $B35N,(B) +@findex gnus-agent-unmark-article +$B5-;v$+$i%@%&%s%m!<%I$9$k0u$r>C5n$9$k(B (@code{gnus-agent-unmark-article})$B!#(B + +@cindex % +@item @@ +@kindex @@ ($B%(!<%8%'%s%H(B $B35N,(B) +@findex gnus-agent-toggle-mark +$B5-;v$r%@%&%s%m!<%I$9$k$+$I$&$+$r@Z$jBX$((B +$B$k(B (@code{gnus-agent-toggle-mark})$B!#%G%#%U%)%k%H$G$O%@%&%s%m!<%I$N0u(B +$B$O(B @samp{%}$B!#(B + +@item J c +@kindex J c ($B%(!<%8%'%s%H(B $B35N,(B) +@findex gnus-agent-catchup +$B%-%c%C%7%e$5$l$F$$$J$$!"%@%&%s%m!<%I$5$l$F$$$J$$!"$^$?$O%@%&%s%m!<%I$G$-(B +$B$J$$$9$Y$F$N5-;v$r4{FI$K$9$k(B (@code{gnus-agent-catchup})$B!#(B + +@item J S +@kindex J S ($B%(!<%8%'%s%H(B $B35N,(B) +@findex gnus-agent-fetch-group +$B$3$N%0%k!<%W$N$9$Y$F$NK>$^$7$$5-;v(B (@pxref{Agent Categories} $B;2>H(B) $B$r%@(B +$B%&%s%m!<%I$9$k!#(B(@code{gnus-agent-fetch-group})$B!#(B + +@item J s +@kindex J s ($B%(!<%8%'%s%H(B $B35N,(B) +@findex gnus-agent-fetch-series +$B$3$N%0%k!<%W$N$9$Y$F$N%W%m%;%90u$,IU$$$?5-;v$r%@%&%s%m!<%I$9$k!#(B +(@code{gnus-agent-fetch-series})$B!#(B + +@item J u +@kindex J u ($B%(!<%8%'%s%H(B $B35N,(B) +@findex gnus-agent-summary-fetch-group +$B8=:_$N%0%k!<%W$N%@%&%s%m!<%I2DG=$J5-;v$r!"$9$Y$F%@%&%s%m!<%I$9(B +$B$k(B (@code{gnus-agent-summary-fetch-group})$B!#(B +@end table + +@node Server Agent Commands +@subsubsection $B%5!<%P!<%(!<%8%'%s%HL?Na(B + +@table @kbd +@item J a +@kindex J a ($B%(!<%8%'%s%H(B $B%5!<%P!<(B) +@findex gnus-agent-add-server +$B8=:_$N%5!<%P!<$r!"(BGnus $B%(!<%8%'%s%H$G07$o$l$k%5!<%P!<$N0lMw$KDI2C$9(B +$B$k(B (@code{gnus-agent-add-server})$B!#(B + +@item J r +@kindex J r ($B%(!<%8%'%s%H(B $B%5!<%P!<(B) +@findex gnus-agent-remove-server +$B8=:_$N%5!<%P!<$r!"(BGnus $B%(!<%8%'%s%H$G07$o$l$k%5!<%P!<$N0lMw$+$i:o=|$9(B +$B$k(B (@code{gnus-agent-remove-server})$B!#(B +@end table + +@node Agent Visuals +@subsection $B%(!<%8%'%s%H$N;k3P8z2L(B + +$B%*%U%i%$%s(B (unplugged) $B$N$H$-$K35N,$r3+$$$?>l9g$K!"(BGnus $B$,8=:_%(!<%8%'%s(B +$B%H$K3JG<$5$l$F$$$k%X%C%@!<$h$j$bB?$/$N5-;v$,$"$k$3$H$r!"$=$N%0%k!<%W(B +$B$N(B active ($BLuCm(B: $B2?HV$+$i2?HV$^$G$N5-;v$,$"$k$+$r<($94IM}>pJs(B) $B$NHO0O$+(B +$B$iCN$C$F$$$k>l9g!"I=Bj$,(B @samp{[Undownloaded article #####]} $B$N$h$&$K$J$C(B +$B$F$$$k$$$/$D$+$N5-;v$r8+$k$+$b$7$l$^$;$s!#$=$l$i$O8+Ev$?$i$J$$%X%C%@!<$N(B +$B$?$a$N7jKd$a(B (placeholders) $B$G$9!#0u(B (mark) $B$r@_Dj$9$k$3$H$O$H$b$+$/!"$=(B +$B$l$i$N7jKd$a$N0l$D$G$G$-$k$3$H$OB?$/$O$"$j$^$;$s!#:G=*E*$K(B Gnus $B$,%0%k!<(B +$B%W$N%X%C%@!<$rH(B)$B!#(B + +$B$9$Y$F$N?M$K$H$C$FL@Gr$+$b$7$l$^$;$s$,!"%*%U%i%$%s$N$H$-$KMxMQ$G$-$k$N$O!"(B +$B0JA0$K:9$79~$^$l$F$$$?4V(B (plugged) $B$K%(!<%8%'%s%H$KuBV$rI=<($7$^$9!#(B + +$BBh0l$N;k3P8z2L$O(B @samp{%O} $B;EMM$G$9!#$3$N;X<(;R$r4^$a$k$?$a(B +$B$K(B @code{gnus-summary-line-format} $B$r%+%9%?%^%$%:$9$k$H!"5-;v$N%@%&%s%m!<(B +$B%I$N>uBV$r<($9C10l$NJ8;z$,2C$o$k$G$7$g$&!#%(!<%8%'%s%H$+%-%c%C%7%e$N$I$A(B +$B$i$+$Kr7o8!::$H%U%'!<%9L>$N%j%9%H(B (@code{gnus-summary-highlight} $B;2(B +$B>H(B) $B$G@)8f$5$l$k$3$H$G$9!#$=$l$>$l$N>r7o$O!"$=$l$,%j%9%H$NCf$K8=$l$k=g$K(B +$B8!::$5$l$k$N$G!"8e$N>r7o$h$j$bA0$N>r7o$,M%@h$5$l$^$9!#$3$l$,0UL#$9$k$9$Y(B +$B$F$O!"%@%&%s%m!<%I$5$l$F$$$J$$5-;v$K2D;k5-;v(B (ticked) $B$N0u$rIU$1$F$b!"$=(B +$B$N5-;v$O2D;k5-;v$N%U%'!<%9$G$O$J$/$F!"%@%&%s%m!<%I$5$l$F$$$J$$5-;v$N%U%'!<(B +$B%9$GI=<($7B3$1$i$l$k$H$$$&$3$H$G$9!#(B + +($B5-;v$rFI$`$?$S$KF1$85-;v$r%@%&%s%m!<%I$7$J$$$h$&$K$9$k$?$a!"$^$?$O@\B3(B +$B;~4V$r:G>.$K$9$k$?$a$K(B) $B%(!<%8%'%s%H$r%-%c%C%7%e$H$7$F;H$&>l9g$O!"%@%&%s(B +$B%m!<%I$5$l$F$$$J$$5-;v$N%U%'!<%9$O$*$=$i$/NI$$9M$($N$h$&$K;W$($k$G$7$g$&!#(B +$B%@%&%s%m!<%I$5$l$?5-;v$KBP$7$F$9$Y$F$N;E;v(B ($B0u$rIU$1$k!"FI$`!":o=|$9(B +$B$k(B) $B$r9T$J$($P!"$$$D$bDL>o$N%U%'!<%9$,8=$l$k$+$i$G$9!#(B@acronym{NOV} $B$r(B +$B%-%c%C%7%e$9$k$3$H$K$h$C$F%*%s%i%$%s@-G=$r2~A1$9$k$?$a$K%(!<%8%'%s%H$r;H$C(B +$B$F$$$k%f!<%6$K$H$C$F!"%@%&%s%m!<%I$5$l$F$$$J$$5-;v$N%U%'!<%9$,8+$($k$+$b(B +$B$7$l$J$$$3$H$O!"$^$C$?$/$>$C$H$9$k$[$I$$$d$J$3$H$G$7$g$&!#$=$l$i$N$I$N5-(B +$B;v$b%(!<%8%'%s%H$Kl9g$O!"(B +@code{agent-enable-undownloaded-faces} $B%0%k!<%W%Q%i%a!<%?$r(B @code{t} $B$K(B +$B@_Dj$7$F!"%@%&%s%m!<%I$5$l$F$$$J$$5-;v$N%U%'!<%9$rM-8z$K$7$J$1$l$P$J$j$^(B +$B$;$s!#$3$N%Q%i%a!<%?$OB>$N$9$Y$F$N%(!<%8%'%s%H%Q%i%a!<%?$HF1MM$K!"%(!<%8%'(B +$B%s%HJ,N`(B (@pxref{Agent Categories})$B!"%0%k!<%W%H%T%C%/(B (@pxref{Topic +Parameters})$B!"$"$k$$$O8D!9$N%0%k!<%W(B (@pxref{Group Parameters}) $B$KBP$7$F(B +$B@_Dj$9$k$3$H$,$G$-$^$9!#(B + +$B%(!<%8%'%s%H$r;H$&$9$Y$F$N%f!<%6$K6&DL$7$?0l$D$NLdBj$O!"$=$l$,%G%#%9%/$N(B +$BMFNL$r$$$+$KB.$/;H$$?T$/$9$3$H$,$G$-$k$+$G$9!#$"$J$?$,B?$/$N%0%k!<%W$G%(!<(B +$B%8%'%s%H$r;HMQ$7$F$$$k>l9g!";ve%G%#%9%/MFNL$r2sI|$9$k$3$H$O$5$i$K:$Fq(B +$B$G$9!#0l$D$N2r$O(B @code{gnus-group-line-format} $B$K$"$k(B @samp{%F} $B7A<0$G$9!#(B +$B$3$N7A<0$O!"%(!<%8%'%s%H$H%-%c%C%7%e$NN>J}$GC5n!W$9$k>l9g$K!"$I(B +$B$3$KEXNO$r=8Cf$9$k$Y$-$+$,$o$+$j$^$9!#(B + +@node Agent as Cache +@subsection $B%-%c%C%7%e$H$7$F$N%(!<%8%'%s%H(B + +Gnus $B$,(B @dfn{plugged} $B$G$"$k$H$-$K!"$9$G$K%(!<%8%'%s%H$K3JG<$5$l$F$$$k%X%C(B +$B%@!<$d5-;v$r%@%&%s%m!<%I$9$k$N$O8zN(E*$G$O$"$j$^$;$s!#$=$3$G(B Gnus $B$ODL>o(B +$B%X%C%@!<$r0l2s$@$1%@%&%s%m!<%I$7$F%(!<%8%'%s%H$K3JG<$7$^$9!#(B +@dfn{plugged} $B$+(B @dfn{unplugged} $B$K$+$+$o$i$:!"$=$l$i$N%X%C%@!<$O8e$K35(B +$BN,%P%C%U%!$r@8@.$9$k$H$-$K;H$o$l$^$9!#%G%#%U%)%k%H$G$O5-;v$O(B ($B$=$l$O@x:_(B +$BE*$K%G%#%9%/6u4V$rO2Hq$9$k$G$"$m$&$+$i(B) $B%(!<%8%'%s%H$K%-%c%C%7%e$5$l$^$;(B +$B$s$,!"$9$G$K%(!<%8%'%s%H$K%@%&%s%m!<%I$7$?5-;v$,$"$k$J$i$P!"(BGnus $B$O%5!<(B +$B%P!<$+$i:F$S5-;v$r%@%&%s%m!<%I$;$:$K!"$`$N$G$"$l$P!"(B@dfn{plugged} $B$J4|4V$O>o$K%X%C%@!<$H5-;v$r%@(B +$B%&%s%m!<%I$9$k$h$&$K!"%(!<%8%'%s%H(B (@code{gnus-agent-cache} $B;2(B +$B>H(B @ref{Agent Variables}) $B$r@_Dj$9$k$3$H$,$G$-$^$9!#(BGnus $B$O$[$H$s$I3N$+(B +$B$K$b$C$HCY$/$J$j$^$9$,!"%5!<%P!<$H$NF14|$OJ]$?$l$^$9!#(Bnntp $B$+(B nnimap $B%P%C(B +$B%/%(%s%I$r;H$C$F$$$k>l9g$O!"$?$V$s$3$N:G8e$NE@$O0UL#$r$J$5$J$$$G$7$g$&!#(B + +@node Agent Expiry +@subsection $B%(!<%8%'%s%H4|8B@Z$l>C5n(B + +@vindex gnus-agent-expire-days +@findex gnus-agent-expire +@kindex M-x gnus-agent-expire +@kindex M-x gnus-agent-expire-group +@findex gnus-agent-expire-group +@cindex agent expiry +@cindex Gnus agent expiry +@cindex expiry + +$B%(!<%8%'%s%H%P%C%/%(%s%I(B @code{nnagent} $B$O4|8B@Z$l>C5n$r07$$$^$;$s!#$($((B +$B$H!">/$J$/$H$bB>$N%P%C%/%(%s%I$N$h$&$K$=$l$r07$$$^$;$s!#$=$NBe$o$j$K!"FC(B +$BJL$J(B @code{gnus-agent-expire} $B$H(B @code{gnus-agent-expire-group} $BL?Na(B +$B$,(B @code{gnus-agent-expire-days} $B$NF|?t$h$j$b8E$$4{FI5-;v$r$9$Y$F>C5n$7(B +$B$^$9!#$3$l$i$O$"$J$?$,%G%#%9%/MFNL$r;H$$@Z$j$=$&$@$H;W$C$?$H$-$K$$$D$G$b(B +$B$G(B) $BCfCG$9$k$3$H$b$"$^$j(B +$BNI$$$3$H$G$O$"$j$^$;$s!#(B + +$BNc$($P(B @code{gnus-request-expire-articles} $B$N$h$&$JB>$N4X?t$O!"%(!<%8%'(B +$B%s%H$r%0%k!<%W$KF14|$5$;$k$?$a$K(B @code{gnus-agent-expire} $B$rC5n$rM^@)$9$k$?$a$K;H$o$l$k$+$b$7$l$^$;$s!#(B + +@vindex gnus-agent-expire-all +@code{gnus-agent-expire-all} $B$,(B @code{nil} $B$G$J$1$l$P!"%(!<%8%'%s%H$N4|(B +$B8B@Z$l>C5n%3%^%s%I72$O$9$Y$F$N5-;v(B --- $BL$FI!"4{FI!"2D;k!"J]N15-;v$r>C5n(B +$B$7$^$9!#$b$7(B @code{nil} ($B$3$l$,=i4|@_DjCM(B) $B$G$"$l$P!"4{FI5-;v$N$_$,>C5n(B +$B$NBP>]$H$J$j!"L$FI!"2D;k!"J]N15-;v$O$5$i$KL54|8B$KJ];}$7$^$9!#(B + +$B4|8B@Z$l>C5n$5$l$F$$$k$O$:$J$N$K;D$C$F$$$k5-;v$r8+$D$1$?$J$i$P!"$?$V$s$$(B +$B$/$D$+$N(B Gnus $B%(!<%8%'%s%H%U%!%$%k$,2u$l$F$$$^$9!#(B +@code{gnus-agent-regenerate} $B$H(B @code{gnus-agent-regenerate-group} $B$O!"(B +$B5/$3$j$&$kLdBj$r=$I|$9$k$?$a$NFCJL$J%3%^%s%I$G$9!#(B + +@node Agent Regeneration +@subsection $B%(!<%8%'%s%H$r:n$jD>$9(B + +@cindex agent regeneration +@cindex Gnus agent regeneration +@cindex regeneration + +@code{nnagent} $B$K$h$C$F;H$o$l$k%m!<%+%k$N%G!<%?9=B$$O!"$"$kNc30E*$J>r7o(B +$B$K$h$C$F$*$+$7$/$J$C$F$7$^$&$+$b$7$l$^$;$s!#$3$l$,5/$3$k$H!"(B +@code{nnagent} $B$N5!G=@-$,2<$,$k$+$b$7$l$J$$$7!"<:GT$7$5$($9$k$+$b$7$l$^(B +$B$;$s!#$3$NLdBj$N2r7h:v$O!"FbIt$NL7=b$r$9$Y$F:o=|$9$k$3$H$K$h$C$F!"%m!<%+(B +$B%k$N%G!<%?9=B$$r=$I|$9$k$3$H$G$9!#(B + +$BNc$($P!"5-;v$r%(!<%8%'%s%H$K%@%&%s%m!<%I$7$F$$$k4V$K%5!<%P!<$X$N@\B3$,@Z(B +$B$l$F$7$^$&>l9g!"%m!<%+%k$N%G!<%?9=B$$O@\B3$,@Z$l$kA0$K5-;v$,e(B +$B$G$b(B @code{gnus-agent-regenerate} $B$rpJs$rDs6!(B +$B$7$^$9!#(B + +$B?4$KN1$a$F$*$/:G=i$N$3$H$O!"A4$F$N%U%i%0(B (read, ticked $B$J$I(B) $B$O(B nntp $B$N(B +$B>l9g$K$*$1$k(B @file{.newsrc} $B$G$O$J$/$F(B @acronym{IMAP} $B%5!<%P!<$KJ];}$5$l(B +$B$k$H$$$&$3$H$G$9!#$7$?$,$C$F!"(BGnus $B$O(B @dfn{unplugged} $B$N$H$-$N%U%i%0$NJQ(B +$B2=$r3P$($F$*$$$F!":F$S@\B3$7$?$H$-$K$=$l$i$N%U%i%0$rF14|$5$;$kI,MW$,$"$j(B +$B$^$9!#(B + +Gnus $B$O%(!<%8%'%s%H$N85$G(B nnimap $B%0%k!<%W$rFI$`$H$-!"%U%i%0$NJQ2=$K@d$((B +$B$:Cm0U$7$F$$$^$9!#$"$J$?$,:F$S@\B3$7$?$H$-!"(BGnus $B$O$"$J$?$,2?$i$+$N%U%i(B +$B%0$rJQ99$7$?$+$I$&$+$rD4$Y$F!"$"$J$?$,$=$l$i$r%5!<%P!<$HF14|$5$;$?$$$+$I(B +$B$&$+$r?R$M$^$9!#$3$N5sF0$O(B @code{gnus-agent-synchronize-flags} $B$G%+%9%?(B +$B%^%$%:$9$k$3$H$,$G$-$^$9!#(B + +@vindex gnus-agent-synchronize-flags +$B$b$7(B @code{gnus-agent-synchronize-flags} $B$,(B @code{nil} $B$@$C$?$i!"%(!<%8%'(B +$B%s%H$O<+F0E*$K%U%i%0$rF14|$5$;$k$3$H$O$7$^$;$s!#$b$7$=$l$,=i4|CM(B +$B$N(B @code{ask} $B$@$C$?$i!"%(!<%8%'%s%H$O$"$J$?$,:F@\B3$7$?$H$-$K$"$J$?$,2?(B +$B$i$+$NJQ99$r9T$J$C$F$$$?$+$I$&$+$rD4$Y$F!"$=$l$i$rF14|$5$;$?$$$+$I$&$+$r(B +$B?R$M$^$9!#$b$7$=$l$i0J30$NCM$@$C$?>l9g$O!"A4$F$N%U%i%0$O<+F0E*$KF14|$5$;(B +$B$i$l$^$9!#(B + +$B$b$7$"$J$?$,!":F@\B3$7$?$H$-$K<+F0$G%U%i%0$rF14|$5$;$?$/$J$$$J$i!"C$;$P!"$"$J$?$,(B ``$BF14|(B'' $B$NA`:n$r9T$J$C(B +$B$?$H$-$K!"$=$N%U%i%0$O%;%C%H$5$l$F%5!<%P!<$+$i$O:o=|$5$l$^$9!#(B +@c FIXME: Does it make sense? +"The queued flag" $B$K4X$9$kF0:n$O!"%(!<%8%'%s%H%G%#%l%/%H%j$K$"$k%5!<%P!<(B +$BKh$N(B @code{flags} $B%U%!%$%k$NCf$G8+$D$+$k$G$7$g$&!#$=$l$i$O$"$J$?$,%U%i%0(B +$B$rF14|$5$;$?$H$-$K6u$K$J$j$^$9!#(B + +@node Outgoing Messages +@subsection $B:9=PMQ%a%C%;!<%8(B + +$B%G%#%U%)%k%H$G!"(BGnus $B$,@Z$jN%$5$l$F$$$k$H$-!"A4$F$N:9=PMQ%a%C%;!<%8(B ($B%a!<(B +$B%k$H%K%e!<%9$NN>J}(B) $B$O2<=q$-%0%k!<%W(B ``queue'' (@pxref{Drafts}) $B$K3JG<$5(B +$B$l$^$9!#Ej9F$7$?8e$G$b!"$3$3$G$=$N%a%C%;!<%8$r8+$?$jJT=8$9$k$N$O0U$N$^$^(B +$B$G$9!#(B + +$BAw=P$9$k%a!<%k$,(B queue $B$5$l$k(B ($B=gHVBT$A$K$J$k(B) $B>u67$r@)8f$9$k$3$H$O2DG=(B +$B$G$9(B (@code{gnus-agent-queue-mail}, @pxref{Agent Variables} $B;2>H(B)$B!#(B +Gnus $B$,@Z$jN%$5$l$F$$$k>l9g!"%K%e!<%9$O>o$K(B queue $B$5$l$k$@$1$G$9!#(B + +$B%a%C%;!<%8$rAw?.$9$k$?$a$K!"2<=q$-%0%k!<%W$+$i!"$=$3$G;H$($kFCJL$JL?Na$r(B +$B;H$C$FAw$k$3$H$b!"%0%k!<%W%P%C%U%!Fb$G(B @kbd{J S} $B$r;H$C$F!"2<=q$-%0%k!<(B +$B%WFb$N$9$Y$F$NAw?.2DG=$J%a%C%;!<%8Aw?.$9$k$3$H$b$G$-$^$9!#%K%e!<%9$NEj9F(B +$B$O(B Gnus $B$,:9$79~$^$l$F$$$k$H$-$@$1$G$-$^$9$,!"%a!<%k$O$$$D$G$bAw?.$9$k$3(B +$B$H$,$G$-$^$9!#(B + +$B@Z$jN%$5$l$F$$$k$H$-$K%a!<%k$NAw?.$,$G$-$:!"$+$D@Z$jN%$5$l$F$$$k$H$-$K$&$C(B +$B$+$j(B @kbd{J S} $B$rC!$$$F$7$^$&$3$H$,?4G[$J$i$P!"(BGnus $B$K$"$J$?$N9TF0$r3NG'(B +$B$5$;$k$3$H$,$G$-$^$9(B (@code{gnus-agent-prompt-send-queue}, @pxref{Agent +Variables} $B;2>H(B)$B!#(B + +@node Agent Variables +@subsection $B%(!<%8%'%s%HJQ?t(B + +@table @code +@item gnus-agent +@vindex gnus-agent +$B%(!<%8%'%s%H$,M-8z$K$J$C$F$$$k$+$I$&$+!#%G%#%U%)%k%H$O(B @code{t} $B$G$9!#(B +$B:G=i$KM-8z$K$5$l$k$H!"$$$/$D$+$N%P%C%/%(%s%I$r%(!<%8%'%s%H2=$9$k$?$a$K!"(B +$B%(!<%8%'%s%H$O(B @code{gnus-agent-auto-agentize-methods} $B$r;H$$$^$9!#%5!<(B +$B%P!<%P%C%U%!$G%(!<%8%'%s%H$N%3%^%s%I$r;H$&$3$H$K$h$C$F!"$I$N%P%C%/%(%s(B +$B%I$r%(!<%8%'%s%H2=$9$k$+$rJQ99$9$k$3$H$,$G$-$^$9!#(B + +$B%5!<%P!<%P%C%U%!$KF~$k$K$O!"%0%k!<%W%P%C%U%!(B +$B$G(B @kbd{^} (@code{gnus-group-enter-server-mode}) $B$r;H$C$F2<$5$$!#(B + +@item gnus-agent-directory +@vindex gnus-agent-directory +Gnus $B%(!<%8%'%s%H$,%U%!%$%k$r3JG<$9$k>l=j!#=i4|@_DjCM(B +$B$O(B @file{~/News/agent/}$B!#(B + +@item gnus-agent-handle-level +@vindex gnus-agent-handle-level +$B$3$NJQ?t$NCM$h$j9b$$%l%Y%k(B (@pxref{Group Levels}) $B$N%0%k!<%W$O!"%(!<%8%'(B +$B%s%H$+$i$OL5;k$5$l$^$9!#=i4|@_DjCM$O(B @code{gnus-level-subscribed} $B$G!"$3(B +$B$l$O=i4|@_Dj$G$O!"9XFI$7$F$$$k%0%k!<%W$N$_$,%(!<%8%'%s%H$N=hM}$NBP>]$H$J(B +$B$k$H$$$&$3$H$G$9!#(B + +@item gnus-agent-plugged-hook +@vindex gnus-agent-plugged-hook +$B%M%C%H%o!<%/$K@\B3$5$l$?$H$-$KuBV$N%5!<%P!<$r%*%s%i%$%s>uBV$K$7$^$;$s!#(B@code{ask} $B$@$C$?$i!"$=$l(B +$B$,%G%#%U%)%k%H$G$9$,!"%(!<%8%'%s%H$O:F@\B3$9$k$H$-$K%*%U%i%$%s>uBV$N%5!<(B +$B%P!<$r%*%s%i%$%s>uBV$K$9$k$+$I$&$+$r?R$M$^$9!#$=$l0J30$NCM$@$C$?$i!"%*%U(B +$B%i%$%s>uBV$N%5!<%P!<$O<+F0E*$K%*%s%i%$%s>uBV$K$J$j$^$9!#(B + +@item gnus-agent-mark-unread-after-downloaded +@vindex gnus-agent-mark-unread-after-downloaded +@code{gnus-agent-mark-unread-after-downloaded} $B$,(B $BHs(B-@code{nil} $B$@$C$?$i!"(B +$B%@%&%s%m!<%I$7$?8e$G5-;v$KL$FI$N0u$rIU$1$^$9!#$3$l$ODL>o!"?7$7$/%@%&%s%m!<(B +$B%I$5$l$?5-;v$rL@3N$KL$FI$K$9$k$?$a$N0BA4$J9T0Y$G$9!#%G%#%U%)%k%H(B +$B$O(B @code{t} $B$G$9!#(B + +@item gnus-agent-consider-all-articles +@vindex gnus-agent-consider-all-articles +@code{gnus-agent-consider-all-articles} $B$,Hs(B-@code{nil} $B$@$C$?$i!"%(!<%8%'(B +$B%s%H$O$9$Y$F$N5-;v$K$D$$$F!"$=$l$i$r%@%&%s%m!<%I$9$kI,MW$,$"$k$+$I$&$+$r(B +$B%(!<%8%'%s%H$N=R8l$K7hDj$5$;$^$9!#(B@code{nil} $B$@$C$?>l9g!"$=$l$,%G%#%U%)(B +$B%k%H$G$9$,!"%(!<%8%'%s%H$OL$FI$N5-;v$r%@%&%s%m!<%I$9$k$+$I$&$+$@$1$r=R8l(B +$B$K7hDj$5$;$^$9!#$3$l$rM-8z$K$9$k$K$O!"8e$G%(!<%8%'%s%H$,4|8B@Z$l>C5n$9$k(B +$B5-;v$r2?EY$b7+$jJV$7%@%&%s%m!<%I$7$J$$$h$&$K!"%(!<%8%'%s%H$N4|8B@Z$l>C5n(B +$B$N@_Dj(B (@pxref{Category Variables}) $B$r8+D>$9I,MW$b$"$k$+$b$7$l$^$;$s!#(B + +@item gnus-agent-max-fetch-size +@vindex gnus-agent-max-fetch-size +$B%(!<%8%'%s%H$O!".$5$JCM$O!"K|$,0ll(B +$B9g$K!"CY$l;~4V$r:G>.$K$7$^$9(B ($B%0%k!<%W$N>uBV$r99?7$9$k$?$a(B +$B$K(B @code{gnus-agent-regenerate-group} $B$r$NA*Br;h$K$O(B @code{denied} $B$H(B @code{offline} $B$,$"$j!"%(!<%8%'(B +$B%s%H$,;H$o$l$k>l9g$O8eo$KL5;k$9$k$3$H(B)$B!"(B@code{unfetched} ($BA`:n$O%X%C%@!<$,o$K(B queue ($B=gHVBT$A(B) $B$KF~$l$^$9!#(B +@code{t} $B$@$C$?$i(B Gnus $B$O@Z$jN%$5$l$F$$$k$H$-$@$1%a!<%k$r(B queue $B$KF~$l$^(B +$B$9!#(B@code{nil} $B$@$C$?$i(B queue $B$KF~$l$^$;$s!#%G%#%U%)%k%H$O(B @code{t} $B$G$9!#(B + +@item gnus-agent-prompt-send-queue +@vindex gnus-agent-prompt-send-queue +@code{gnus-agent-prompt-send-queue} $B$,Hs(B-@code{nil} $B$@$C$?$i!"@Z$jN%$5$l(B +$B$F$$$k$N$K$b$+$+$o$i$:(B @kbd{J S} $B$rC!$$$?>l9g$K!"(BGnus $B$OK\Ev$K$=$l$r9T$J$C(B +$B$F$bNI$$$+$I$&$+$r3NG'$7$^$9!#%G%#%U%)%k%H$O(B @code{nil} $B$G$9!#(B + +@item gnus-agent-auto-agentize-methods +@vindex gnus-agent-auto-agentize-methods +$B$"$J$?$,0JA0$K%(!<%8%'%s%H$r;H$C$?$3$H$,L5$$(B ($B$b$C$H5;=QE*$K$O!"(B +@file{~/News/agent/lib/servers} $B$,L5$$>l9g(B)$B!"(BGnus $B$O$[$s$N>/?t$N%5!<%P!<(B +$B$r<+F0E*$K%(!<%8%'%s%H2=$7$^$9!#$3$NJQ?t$O$I$N%P%C%/%(%s%I$r<+F0$G%(!<%8%'(B +$B%s%H2=$9$Y$-$+$r@)8f$7$^$9!#0lHL$K!"%(!<%8%'%s%H2=$O1s3V%P%C%/%(%s%I$@$1(B +$B$KM-MQ$G$9!#<+F0$N%(!<%8%'%s%H2=$O!"%5!<%P!<$KBP$7$F(B @kbd{J a} $B$r$K9g$o$;$FJT=8$7!"(BPPP ($B$d2?$+(B) $B$r5/F0$7$F!"(B +@kbd{M-x gnus} $B$HBG80$7$F$/$@$5$$!#(B + +$B$"$J$?$,=i$a$F(B Gnus $B$ro$H$F$b;~(B +$B4V$,$+$+$j$^$9$,!"0lEY$@$1$7$+C5n$7$^$9!#(B(@kbd{A k} $B$G:o=|(B +$B%0%k!<%W$OA4$FLa$C$F$-$^$9!#(B) + +$B$5$F!"$3$3$G$=$N>l$G%0%k!<%W$rFI$`$3$H$b$G$-$^$9$7!"$"$k$$(B +$B$O(B @kbd{J s} $BL?Na$G5-;v$r%@%&%s%m!<%I$9$k$3$H$b$G$-$^$9!#$"$H$O$3$N%^%K%e(B +$B%"%k$N;D$j$rFI$s$G!"$=$NB>$N2?I42/$N9`L\$+$i%+%9%?%^%$%:$7$?$$$3$H$r8+$D(B +$B$1=P$7$F$/$@$5$$!#(B + +@node Batching Agents +@subsection $B0l3g%(!<%8%'%s%H=hM}(B +@findex gnus-agent-batch + +Gnus $B%(!<%8%'%s%H$K5-;v$ro$K4JC1$G$9!#(B +$B0J2<$N%7%'%k%9%/%j%W%H$OI,MW$J$3$H$rA4$F$d$C$F$/$l$k$G$7$g$&!#(B + +$B0J2<$N/dev/null 2>&1 +@end example + +@node Control Agents +@subsection gnus-agent $B4D6-$r(B Control $B$9$k(B +$B$3$3$^$GFI$s$GMh$i$l$F!"%(!<%8%'%s%H$,Hs>o$KJXMx$J5!G=$G$"$k;v$,J,$+$C$?(B +$B$H;W$$$^$9!#$?$@!"ITK~$JE@$,$"$k$H$9$k$H!"Kh2s(B @kbd{J j} $B$d(B @kbd{J S} $BEy(B +$B$r%-!<$G:n6H$7$J$1$l$P$J$i$J$$$3$H$G$7$g$&!#%*%s%i%$%s$HF1$8$h$&$JA`:n$G(B +$B$d$j$H$j$G$-$?$i!"$H9M$($?;v$O$"$j$^$;$s$+(B? +gnus-offline $B$O$=$N5!G=$rDs6!$7$^$9!#(B($BI.)$7$^$9!#(B@code{MIEE} $B$K$D$$$F$O8e=R;2>H(B) + +*Group* $B%P%C%U%!$G(B @kbd{g} $B$r2!$9;v$G(B + +@lisp + (Dialup $B$NI,MW$J4D6-$G$O(B Dialup) -> + Mail $B$N + Spool $B$KN/$C$?(B message $B$NAw?.(B -> + News $B$NAw?.(B -> + $BITMW$J5-;v$N(B expire +@end lisp + +$B$^$G$r9T$$$^$9!#(B + +$B%$%s%9%H!<%k$O$$$?$C$F4JC1!#(B($B$3$3$^$G$G(B gnus-agent $B$N@_Dj$O=*$C$F$$$k$H(B +$B2>Dj$7$^(B +$B$9(B) @file{~/.emacs} $B$N(B gnus-agent $B$N@_Dj$N$A$g$$$HA0$K(B + +@lisp +(load "gnus-ofsetup") +(gnus-setup-for-offline) +(load gnus-offline-setting-file) +@end lisp + +@acronym{POP} $B$H$$$l!"(BEmacs $B$r:F5/F0$7$F$/$@$5$$!#$9$k$H!"$5$^$6$^$Jl9g$K(B +$B$O!"(B@code{MIEE} $B$N@_Dj$O$$$C$5$$$7$J$/$F$b$+$^$$$^$;$s!#(B + +@table @code +@vindex gnus-offline-articles-to-fetch +@item gnus-offline-articles-to-fetch +$B$3$NJQ?t$Ol9g$O!"(BMail $B$@$1$rl9g$O!"(BNews $B$@$1$rl9g$O!"(B +Mail/News $BN>J}$r2A$5$l$k(B hook $B$G$9!#(B + +@vindex gnus-offline-before-online-hook +@item gnus-offline-before-online-hook +$B$3$NJQ?t$O(B Gnus $B$,(B Online(Plugged) $B>uBV$K$J$kD>A0$KI>2A$5$l$k(B hook $B$G$9!#(B + +@vindex gnus-offline-after-online-hook +@item gnus-offline-after-online-hook +$B$3$NJQ?t$O(B Gnus $B$,(B Offline(UnPlugged) $B>uBV$K$J$C$?8e$KI>2A$5$l$k(B hook $B$G(B +$B$9!#(B + +@vindex gnus-offline-interval-time +@item gnus-offline-interval-time +$B$3$NJQ?t$G;XDj$5$l$?4V(B +$B3V(B ($BIC?t(B) $B$G(B @code{gnus-offline-articles-to-fetch} $B$G;XDj$5$l(B +$B$?(B article $B$r$N%*%U%i%$%s%K%e!<%9%j!<%@!<$N$h$&$K$OF0:n$7$^$;(B +$B$s!#$3$l$i$OA[A|E*$J?M$+$i$NNI$/$"$k$`$N$J$i$P!"(B +@code{gnus-select-article-hook} $B$K(B @code{gnus-agent-fetch-selected-article} $B$r(B +$B2C$($F2<$5$$!#(B + +@item $B@\B3$5$l$F$$$k$H$-$K5-;v$rFI$s$G!"(BAgent $B$K5-;v$,B8:_$7$F$$$k>l9g!"(B +$B$b$&0l2s%@%&%s%m!<%I$5$l$k$N$G$9$+(B? + +@strong{$B$$$$$((B}$B!"$?$@$7(B @code{gnus-agent-cache} $B$,(B @code{nil} $B$G$J$+$C$?(B +$B$i!"$G$9$,!#(B +@end table + +$BMWLs$9$k$H!"(BGnus $B$,@Z$jN%$5$l$F$$$k$H$-$O%m!<%+%k$KJ]B8$5$l$?5-;v$r8+$k(B +$B$@$1$G$9!#@\B3$5$l$F$$$k$H$-$O(B ISP $B$HOC$7!"$+$D%m!<%+%k$K;}$C$F$$$k5-;v(B +$B$b;H$&$+$b$7$l$^$;$s!#(B + +@node Scoring +@chapter $B%9%3%"(B +@cindex scoring + +$BB>$N?M!9$O(B @dfn{$B:o=|%U%!%$%k(B} $B$r;H$$$^$9$,!"$3$3(B Gnus $B%?%o!<$O:o=|$h$j$b(B +$B%9%3%"$NJ}$r9%$_$^$9$N$G!"B>$H3JF.$9$k$h$j$O@Z$jBX$($k;v$K$7$^$7$?!#$=$l(B +$B$i$O40A4$K0c$&;v$r$7$^$9$N$G!"??$CD>$0$K:B$C$FCm0U$rJ'$C$F$/$@$5$$(B! + +@vindex gnus-summary-below +$BA4$F$N5-;v$O%9%3%"$N=i4|CM$r;}$C$F$*(B +$B$j(B (@code{gnus-summary-default-score})$B!"$3$l$O%G%#%U%)%k%H$G(B 0 $B$G$9!#$3(B +$B$N%9%3%"$OBPOCE*$d!"%9%3%"%U%!%$%k(B (score file) $B$NJ}K!$K$h$j!">e$2$i$l$?(B +$B$j2<$2$i$l$?$j$7$^$9!#(B@code{gnus-summary-mark-below} $B$h$j$bDc$$%9%3%"$N(B +$B5-;v$K$O4{FI$N0u$,IU$-$^$9!#(B + +Gnus $B$O35N,%P%C%U%!$r:n@.$9$kA0$K!"8=:_$N%0%k!<%W$KE,MQ$5$l$k$I$s(B +$B$J(B @dfn{$B%9%3%"%U%!%$%k(B} $B$bFI$_9~$_$^$9!#(B + +$B8=:_$N5-;v$K4p$E$$$F%9%3%"$NEPO?$rA^F~$9$k$$$/$D$+$NL?Na$,35N,%P%C%U%!$K(B +$B$"$j$^$9!#Nc$($P!"(BGnus $B$KFCDj$NI=Bj$N5-;v$N%9%3%"$r2<$2$?$j>e$2$?$j$9$k(B +$B$h$&$K5a$a$k;v$,$G$-$^$9!#(B + +$BFse;H$o$l$F$$$J$$$I$s$J(B +$BEPO?$b!"%9%3%"%U%!%$%k$NBg$-$5$r>.$5$/$9$k$?$a$K!"@E$+$K:o=|$5$l$^$9!#(B + +@menu +* Summary Score Commands:: $B8=:_$N%0%k!<%W$N$?$a$N%9%3%"EPO?$rDI2C$9$k(B +* Group Score Commands:: $B0lHLE*$J%9%3%"L?Na(B +* Score Variables:: $B$"$J$?$N%9%3%"$r%+%9%?%^%$%:$9$k(B ($B$^$!!"$J$s$FMQ8l(B (Scoring) $B$G$7$g$&(B) +* Score File Format:: $B%9%3%"%U%!%$%k$K2?$rF~$l$k$+(B +* Score File Editing:: $BC5n%U%!%$%k$r%9%3%"%U%!%$%k$KJQ49$9$k(B +* Advanced Scoring:: $B%9%3%"$NK!B'$r:n$k$?$a$KO@M}I=8=$r;H$&(B +* Score Decays:: $B%9%3%"$r8O$l$F$$$+$;$k$N$OLr$KN)$D;v$b$"$k(B +@end menu + +@node Summary Score Commands +@section $B35N,%9%3%"L?Na(B +@cindex score commands + +$B%9%3%"EPO?$rJQ99$9$k%9%3%"L?Na$Ol9g$G$b!"=i4|@_Dj$G%0%k!<%W$N%m!<%+%k%9%3%"%U%!%$%k$K$J$C$F$$(B +$B$^$9!#%9%3%"L?Na$r2?$+B>$N%9%3%"%U%!%$%k(B ($BNc!"(B@file{all.SCORE}) $B$KA^F~$7(B +$B$?$$$J$i!"$^$:$3$N%9%3%"%U%!%$%k$r8=:_$N$b$N$K$7$J$1$l$P$J$j$^$;$s!#(B + +$B0lHLE*$J%9%3%"L?Na$Oo$K5,B'@5$7$$K!B'$K=>$$$^$9(B +$B$N$G!"$=$l$i$NL?NaA4$F$rI=$K>e$2$kI,MW$O$"$j$^$;$s!#(B($B$?!<$/$5$s$"$j$^$9!#(B) + +@findex gnus-summary-increase-score +@findex gnus-summary-lower-score + +@enumerate +@item +$B:G=i$N%-!<$O%9%3%"$rA}$d$9$?$a$N(B @kbd{I} (i $B$NBgJ8;z(B) $B$+!"%9%3%"$r2<$2$k(B +$B$?$a$N(B @kbd{L} $B$G$9!#(B +@item +$BFsHVL\$N%-!<$O$I$N%X%C%@!<$K%9%3%"$r$7$?$$$+$rI=$7$^$9!#0J2<$N%-!<$,;HMQ(B +$B2DG=$G$9(B: + +@table @kbd +@item a +$BCxA0$K%9%3%"$rIU$1$^$9!#(B + +@item s +$BI=Bj(B (subject) $B$N9T$K%9%3%"$rIU$1$^$9!#(B + +@item x +@code{Xref} $B9T$K%9%3%"$rIU$1$^$9(B---$B$9$J$o$A!"Aj8_Ej9F9T$G$9!#(B + +@item r +@code{References} $B9T$K%9%3%"$r$D$1$^$9!#(B + +@item d +$BF|IU(B (date) $B$K%9%3%"$rIU$1$^$9!#(B + +@item l +$B9T?t(B (number of lines) $B$K%9%3%"$rIU$1$^$9!#(B + +@item i +@code{Messsage-ID} $B%X%C%@!<$K%9%3%"$rIU$1$^$9!#(B + +@item e +``$BDI2C(B'' $B$N%X%C%@!<(B ($B$9$J$o$A!"(B(@code{gnus-extra-headers} $B$K@_Dj$5$l$F$$(B +$B$F!"(B@acronym{NNTP} $B%5!<%P!<$,(B overview $B$K$=$l$i$N>pJs$r5-O?$7$F$$$k(B) $B$K(B +$B%9%3%"$rIU$1$^$9!#(B + +@item f +$B%U%)%m!<%"%C%W(B (followup) $B$K%9%3%"$rIU$1$^$9(B---$B$3$l$OCx$H$N9gCW$r$7!"(B +$B$3$NCx.$5$$$b$N$G$9!#(B + +@item = +$B?t;z$HEy$7$$$b$N$G$9!#(B + +@item > +$B?t;z$h$jBg$-$$$b$N$G$9!#(B +@end table +@end table + +@item +$B;M$D$a$GDL>o$O:G8e$N%-!<$G$9!#$3$l$,0l;~E*(B ($B$9$J$o$A4|8B@Z$l>C5n(B) $B$N%9%3(B +$B%"EPO?$+!"1JB3E*$J(B ($B$9$J$o$A4|8B@Z$l>C5n$G$J$$(B) $B%9%3%"EPO?$G$"$k$+$H$$$&(B +$B$3$H!"$b$7$/$O$9$0$K$J$5$l$k$Y$-$+!"%9%3%"%U%!%$%k$KDI2C$9$k;v$O$7$J$$$+(B +$B$H$$$&;v$r;XDj$7$^$9!#(B + +@table @kbd +@item t +$B0l;~E*$J(B (temporary) $B%9%3%"EPO?$G$9!#(B + +@item p +$B1JB3E*$J(B (permanent) $B%9%3%"EPO?$G$9!#(B + +@item i +$BB(:B$N(B (immediate) $B%9%3%"IU$1$G$9!#(B +@end table + +@item +$B$b$7(B `e' ($BDI2C$N(B (extra)) $B%X%C%@!<$G%9%3%"IU$1$r9T$J$C$F$$$k$H!"$I$NL>A0(B +$B$N%X%C%@!<$G9T$J$&$+$r?R$M$i$l$^$9!#$3$l$O(B @code{gnus-extra-headers} $B$K(B +$B$"$kL>A0$G$J$1$l$P$J$j$^$;$s!#(B@samp{TAB} $B$K$h$kJd40$,$G$-$^$9!#(B +@end enumerate + +$B$G$9$+$i!"8=:_$NCxo$K4JC1$G$9!#(B + +$BJ*;v$rJ#;($K$9$k$N$O!"C;=LBG80$,B8:_$9$k$+$i$G$9!#FsHVL\$+;0HVL\$NJ8;z$K(B +$BBgJ8;z$r;H$&$H!"(BGnus $B$O;D$k0l$D$+Fs$D$NBG80$K=i4|CM$r;H$$$^$9!#=i4|CM(B +$B$O(B ``$BJ8;zNs$N0lIt(B'' $B$H(B ``$B0l;~E*(B'' $B$G$9!#$G$9$+$i!"(B +@kbd{I A} $B$O(B @kbd{I a s t} $B$HF1$8$G!"(B@kbd{I a R} $B$O(B @kbd{I a r t} $B$HF1$8(B +$B$G$9!#(B + +$B$3$l$i$N4X?t$O?t;z@\F,0z?t$H!"%7%s%\%k@\F,0z?t$re$2$k(B) $B$+$r;XDj$7$^$9!#%7%s%\%k@\F,0z?t(B @code{a} $B$OL?Na$,(B +$B8=:_$N%9%3%"%U%!%$%k$G$O$J$/%U%!%$%k(B @file{all.SCORE} $B$r;H$&;v$r;XDj$7$^(B +$B$9!#(B + +@vindex gnus-score-mimic-keymap +@code{gnus-score-mimic-keymap} $B$O$3$l$i$NL?Na$,%-!<%^%C%W$G$"$k$+$N$h$&(B +$B$K?6$kIq$&$+$I$&$+$r;XDj$7$^$9!#(B + +@node Group Score Commands +@section $B%0%k!<%W%9%3%"L?Na(B +@cindex group score commands + +$B;DG0$J$,$i!"$^$@$?$/$5$s$O$"$j$^$;$s!#(B + +@table @kbd +@item W e +@kindex W e ($B%0%k!<%W(B) +@findex gnus-score-edit-all-score +$B$9$Y$F$N%0%k!<%W$KE,MQ$5$l$k(B all.SCORE $B%U%!%$%k$rJT=8$7$^$9!#%]%C%W%"%C(B +$B%W$9$k(B @code{gnus-score-mode} $B$N%P%C%U%!$KF~$j$^$9(B (@pxref{Score File +Editing})$B!#(B + +@item W f +@kindex W f ($B%0%k!<%W(B) +@findex gnus-score-flush-cache +Gnus $B$O2?EY$b%9%3%"O"A[%j%9%H$rFI$_9~$`$N$rHr$1$k$?$a$K!"$=$l$N%-%c%C%7%e(B +$B$rJ];}$7$F$$$^$9!#$3$NL?Na$O%-%c%C%7%e$r=q$-=P$7$^(B +$B$9(B (@code{gnus-score-flush-cache})$B!#(B +@end table + +$B0J2<$N$h$&$J;v$r$9$k;v$K$h$C$F!"%3%^%s%I9T$+$i%9%3%"IU$1$r$9$k;v$,$G(B +$B$-$^$9!#(B + +@findex gnus-batch-score +@cindex batch scoring +@example +& emacs -batch -l ~/.emacs -l ~/.gnus.el -f gnus-batch-score +@end example + +@node Score Variables +@section $B%9%3%"JQ?t(B +@cindex score variables + +@table @code +@item gnus-use-scoring +@vindex gnus-use-scoring +@code{nil} $B$G$"$l$P!"(BGnus $B$O%9%3%"%U%!%$%k$rD4$Y$:!"0lHLE*$K!"%9%3%"4XO"(B +$B$N;E;v$rA4$/$7$^$;$s!#$3$l$O=i4|@_Dj$G(B @code{t} $B$G$9!#(B + +@item gnus-kill-killed +@vindex gnus-kill-killed +$B$3$NJQ?t$,(B @code{nil} $B$G$"$l$P!"(BGnus $B$O4{$K:o=|2aDx$r$K2C$($k@\Hx8l$G$9(B ($B=i4|CM(B +$B$G(B @file{SCORE} $B$G$9!#(B) + +@item gnus-score-uncacheable-files +@vindex gnus-score-uncacheable-files +@cindex score cache +$BA4$F$N%9%3%"%U%!%$%k$OIaDL$O%9%3%"%U%!%$%k$N2a>jFI$_9~$_$rHr$1$k$?$a$K(B +$B%-%c%C%7%e$5$l$^$9!#$7$+$7!"$3$l$K$h$j$"$J$?$N(B Emacs $B$,Bg$-$/HnBg2=$9$k(B +$B$N$G$"$l$P!":F$SI,MW$H$5$l$J$$$h$&$J%9%3%"%U%!%$%k$r=|5n$9$k$?$a$K$3$N@5(B +$B5,I=8=$r;H$&;v$,$G$-$^$9!#(B@file{all.SCORE} $B$N%-%c%C%7%e$r;_$a$k$N$O0-$$(B +$B9M$($G$9$,!"(B@file{comp.infosystems.www.authoring.misc.ADAPT} $B$r%-%c%C%7%e(B +$B$7$J$$$N$ONI$$9M$($G$7$g$&!#e$2(B/$B2<$2L?Na$K$h$C$F;H$o$l$k>e$2(B/$B2<$2$9$k%9%3%"$G$9!#(B +$B%G%#%U%)%k%H$O(B 1000 $B$G!"2a>j$@$H;W$&$+$b$7$l$^$;$s$,!"$3$l$OE,1~%9%3%"IU(B +$B$1$r$9$kM>CO$NB8:_$9$k;v$r3N.$5$JJQ99$G>e=q$-$5$l$?$/$O$"$j$^$;$s!#(B + +@item gnus-summary-default-score +@vindex gnus-summary-default-score +$B5-;v$N%9%3%"$N=i4|CM$G!"=i4|@_Dj$G$O(B 0 $B$K$J$C$F$$$^$9!#(B + +@item gnus-summary-expunge-below +@vindex gnus-summary-expunge-below +$B$3$NJQ?t$h$jDc$$%9%3%"$r;}$D5-;v$O35N,$N9T$KI=<($5$l$^$;$s!#$3$l$O=i4|@_(B +$BDj$G(B @code{nil} $B$G!"$3$l$O$I$N5-;v$b1#$5$l$J$$$H$$$&;v$G$9!#$3$NJQ?t$O3F(B +$B35N,%P%C%U%!$K8GM-$G!"(B@code{gnus-summary-mode-hook} $B$K$h$C$F@_Dj$5$l$k$Y(B +$B$-$G$9!#(B + +@item gnus-score-over-mark +@vindex gnus-score-over-mark +$B=i4|@_Dj$N%9%3%"$h$jBg$-$J%9%3%"$r;}$D5-;v$KBP$7$F(B ($B;07eL\$K(B) $B;H$o$l$k0u(B +$B$G$9!#=i4|@_Dj$O(B @samp{+} $B$G$9!#(B + +@item gnus-score-below-mark +@vindex gnus-score-below-mark +$B=i4|@_Dj$N%9%3%"$h$j>.$5$J%9%3%"$r;}$D5-;v$KBP$7$F(B ($B;07eL\$K(B) $B;H$o$l$k0u(B +$B$G$9!#=i4|@_Dj$O(B @samp{-} $B$G$9!#(B + +@item gnus-score-find-score-files-function +@vindex gnus-score-find-score-files-function +$B8=:_$N%0%k!<%W$N%9%3%"%U%!%$%k$r8+$D$1$k$?$a$K;H$o$l$k4X?t$G$9!#$3$N4X?t(B +$B$O%0%k!<%WL>$r0z?t$H$7$F8F$P$l$^$9!#(B + +$B;HMQ2DG=$J4{Dj4X?t$O(B: + +@table @code +@item gnus-score-find-single +@findex gnus-score-find-single +$B%0%k!<%W<+?H$N%9%3%"%U%!%$%k$@$1$rE,MQ$7$^$9!#(B + +@item gnus-score-find-bnews +@findex gnus-score-find-bnews +bnews $B9=J8$r;H$C$F!"A4$F$N9gCW$9$k%9%3%"%U%!%$%k$rE,MQ$7$^$9!#$3$l$,=i4|(B +$B@_Dj$G$9!#Nc$($P!"8=:_$N%0%k!<%W$,(B @samp{gnu.emacs.gnus} $B$J$i$P!"(B +@file{gnu.all.SCORE}, @file{not.alt.SCORE} $B$H(B @file{gnu.all.SCORE} $B$,$9(B +$B$Y$FE,MQ$5$l$^$9!#MW$9$k$K!"%9%3%"%U%!%$%kL>(B +$B$N(B @samp{all} $B$,(B @samp{.*} $B$KJQ49$5$l!"$=$l$+$i@55,I=8=$N9gCW$,$J$5$l$^(B +$B$9!#(B + +$B$3$l$O!"A4$F$N%0%k!<%W$KE,MQ$7$?$$%9%3%"EPO?$,$$$/$D$+$"$k>l9g$O!"$=$l$i(B +$B$NEPO?$r(B @file{all.SCORE} $B%U%!%$%k$KF~$l$k$H$$$&$3$H$G$9!#(B + +Gnus $B$O0lHLE*$J%9%3%"%U%!%$%k$rFCDj$N%9%3%"%U%!%$%k8~$1$N$b$N$h$jA0$KE,(B +$BMQ$7$h$&$H;n$_$^$9$,!"%9%3%"%U%!%$%k$O$[$H$s$IL5:n0Y$N=gHV$GE,MQ$5$l$^$9!#(B +$B$3$l$O%9%3%"%U%!%$%kL>$NMWAG$N?t$rD4$Y$k;v$K$h$C$F$J$5$l$^$9(B--- +@samp{all} $BMWAG$r$l(B +$B$N%5!<%P!<$KBP$7$F;}$D;v$,$G$-$k$H$$$&;v$G$9!#(B +@end table + +$B$3$NJQ?t$O4X?t$N%j%9%H$G$"$k;v$b$G$-$^$9!#$=$N>l9g$O!"$3$l$i$NA4$F$N4X?t(B +$B$,%0%k!<%WL>$r0z?t$H$7$F8F$P$l!"%9%3%"%U%!%$%k$NJV$5$l$?A4$F$N%j%9%H$,E,(B +$BMQ$5$l$^$9!#$3$l$i$N4X?t$OD>@\%9%3%"O"A[%j%9%H$N%j%9%H$N%j%9%H$rJV$9;v$b(B +$B$G$-$^$9!#$=$N>l9g$O!"$=$l$i$N%U%!%$%k$G$J$$%9%3%"O"A[%j%9%H$rJV$94X?t$O!"(B +$BJV$5$l$k:G8e$N%9%3%"%U%!%$%k$,%m!<%+%k%9%3%"%U%!%$%k$G$"$k;v$r3NC5n$rA`:n$7$F$$$kJ}K!$G$9(B---$BA4$F$N9gCW$7(B +$B$J$$EPO?$O8E$/$J$j$9$.!"9gCW$9$kEPO?$r?7A/$GLL$9$k;v$K$J$k$G$7$g$&!#(B + +@item gnus-score-after-write-file-function +@vindex gnus-score-after-write-file-function +$B$=$3$G$A$g$&$I=q$+$l$?%9%3%"%U%!%$%k$NL>A0$H6&$K8F$P$l$k4X?t$G$9!#(B + +@item gnus-score-thread-simplify +@vindex gnus-score-thread-simplify +$B$3$NJQ?t$,(B @code{nil} $B$G$J$$$H!"5-;vI=Bj$O%9%l%C%I$HF1$8J}K!$GI=Bj%9%3%"(B +$B$N$?$a$KC1=c2=$5$l$^$9(B---$B8=:_(B +$B$N(B @code{gnus-simplify-subject-functions} $B$NCM$K$h$C$F!#%9%3%"EPO?(B +$B$,(B @code{$BJ8;zNsItJ,(B} $B$+(B @code{$B@53N$J(B} $B9gCW$r;H$C$F$$$k$H!"9gCW$b$3$NJ}K!(B +$B$GC1=c2=$5$l$^$9!#(B +@end table + +@node Score File Format +@section $B%9%3%"%U%!%$%kMM<0(B +@cindex score file format + +$B%9%3%"%U%!%$%k$OIaDL$OC1=c$JMM<0$N$b$N$@$1$r4^$`(B @code{emacs-lisp} $B%U%!(B +$B%$%k$G$9!#L5F\Ce$JMxMQ2A(B} (eval) $B$5$l$^$;$s!#$7$+$7!"(BLisp $B%j!<%@!<$,$3$NMM<0$rFI$_(B +$B9~$`$N$K;H$o$l$^$9$N$G!"0UL#E*$KM-8z$G$J$$$H$7$F$b!"J8K!E*$K$OM-8z$G$9!#(B + +$B$3$NO"A[%j%9%H$G$OO;$D$N%-!<$r;H$&;v$,$G$-$^$9!#(B + +@table @code +@item $BJ8;zNs(B (STRING) +$B$b$7%-!<$,J8;zNs$G$"$k$H!"$=$l$O9gCW$,A0$G$9!#%9%3(B +$B%"$O$3$l$i$NH,$D$N%X%C%@!<$@$1$K$l$N%9%3%"EPO?$O0l$D$+$i(B +$B;M$D$^$G$NMWAG$r;}$A$^$9!#(B +@enumerate + +@item +$B:G=i$NMWAG$O(B @dfn{$B9gCWMWAG(B} $B$G$9!#$?$$$F$$$N%X%C%@!<$G$O$3$l$OJ8;zNs$G$9(B +$B$,!"(BLines $B$H(B Chars $B%X%C%@!<$G$O$3$l$O@0?t$G$J$1$l$P$J$j$^$;$s!#(B + +@item +$B$b$7FsHVL\$NMWAG$,B8:_$9$k$J$i!"$=$l$O?t;z$G$"$k$Y$-$G(B +$B$9(B---@dfn{$B%9%3%"MWAG(B}$B!#$3$N?t;z$OIi$NL58BBg$+$i@5$NL58BBg$^$G$N4V$N@0?t(B +$B$G$"$k$Y$-$G$9!#$b$79gCW$,@.8y$9$l$P!"$3$N?t;z$,5-;v$N%9%3%"$K2C$($i$l$^(B +$B$9!#$b$7$3$NMWAG$,B8:_$7$F$$$J$1$l$P!"?t(B +$B;z(B @code{gnus-score-interactive-default-score}$B$,Be$o$j$K;H$o$l$^$9!#$3$l(B +$B$O=i4|@_Dj$G(B 1000 $B$G$9!#(B + +@item +$B$b$7;0HVL\$NMWAG$,B8:_$7$F$$$k$H!"$=$l$O?t;z$G$"$k$Y$-$G(B +$B$9(B---@dfn{$BF|IUMWAG(B} $B$G$9!#$3$NF|IU$O:G8e$K$3$N%9%3%"EPO?$,9gCW$7$?;~9o$r(B +$B<($7!"$3$l$O%9%3%"EPO?$N4|8B@Z$l>C5n5!9=$N5!G=$N$?$a$K;H$o$l$^$9!#$3$NMW(B +$BAG$,B8:_$7$F$$$J$1$l$P!"%9%3%"EPO?$O1JB3$7$^$9!#F|IU$O5*85A0(B 1$BG/(B12$B7n(B31$BF|(B +$B$+$i7P2a$7$?F|$K$A$N?t$GI=$5$l$^$9!#(B + +@item +$B$b$7;MHVL\$NMWAG$,B8:_$7$F$$$k$H!"$=$l$O%7%s%\%k$G$"$k$Y$-$G(B +$B$9(B---@dfn{$B7?MWAG(B} $B$G$9!#$3$NMWAG$O$3$N%9%3%"EPO?$,5-;v$K9gCW$9$k$+$I$&$+(B +$B$rD4$Y$k$N$K$I$N4X?t$,;H$o$l$k$Y$-$G$"$k$+$r;XDj$7$^$9!#(B + +@table @dfn +@item From, Subject, References, Xref, Message-ID +$B$?$$$F$$$N%X%C%@!<$N7?$KBP$7$F!"(B@code{r} $B$H(B @code{R} ($B@55,I=(B +$B8=(B) (regexp) $B$d!"(B@code{s} $B$H(B @code{S} ($BJ8;zNs$N0lIt(B) (substring) $B7?!"(B +@code{e} $B$H(B @code{E} ($B@53N$J9gCW(B) (exact match)$B!"(B +@code{w} ($B8l$N9gCW(B) (word match) $B7?$,B8:_$7$^$9!#$b$7$3$NMWAG$,B8:_$7$J(B +$B$$$H!"(BGnus $B$OJ8;zNs$N0lIt$N9gCW$,MQ$$$i$l$k$Y$-$G$"$k$H$_$J$7$^$9!#(B +@code{R}, @code{S}, @code{E} $B$O9gCW$,BgJ8;z$H>.J8;z$r6hJL$9$kJ}K!$G9T$o(B +$B$l$k$H$$$&E@$GB>$N$b$N$H0[$J$j$^$9!#A4$F$N$3$l$i$N0lJ8;z7?$OK\Ev(B +$B$O(B @code{regexp}, @code{exact}, @code{word} $B7?$NC;=L7A$G!"$b$7$=$&$7$?$$(B +$B$H;W$($P$3$A$i$rBe$o$j$K;H$&;v$,$G$-$^$9!#(B + +@item Extra +$BI8=`$N(B overview $B%X%C%@!<$NJ8;zNs$HF1MM!"(B@code{gnus-extra-headers} $B$r;H$C(B +$B$F$$$k$H!"$=$l$i$N%X%C%@!<$NCM$K%9%3%"$rIU$1$k$3$H$,$G$-$^$9!#$3$N>l9g%9(B +$B%3%"EPO?$N(B 5 $BHVL\$NMWAG$,%9%3%"$rIU$1$k%X%C%@!<$NL>A0$K$J$j$^$9!#(B +@acronym{NNTP} $B%5!<%P!<$,(B overview $B$K(B @samp{NNTP-Posting-Host} $B$r5-O?$7(B +$B$F$$$k$J$i$P!"(B@file{all.SCORE} $B%U%!%$%k$N0J2<$NEPO?$O!"C10l$N%[%9%H$+(B +$B$i(B spam $B$N967b$,$"$k>l9g$KM-8z$G$9!#(B + +@lisp +("111.222.333.444" -1000 nil s + "NNTP-Posting-Host") +@end lisp + +@item Lines, Chars +$B$3$l$i$NFs$D$N%X%C%@!<$O0c$C$?9gCW$N7?$r;H$$$^$9(B: @code{<}, @code{>}, +@code{=}, @code{>=}, @code{<=} $B$G$9!#(B + +$B$3$l$i$N=R8l$O$b$7(B + +@example +(PREDICATE HEADER MATCH) +@end example + +$B$NI>2A$,(B @code{nil} $B$G$J$$$H!"??$H$J$j$^$9!#Nc$($P!">e5i9g(B +$BCW(B @code{("lines" 4 <)} (@pxref{Advanced Scoring}) $B$O7k2L$H$7$F0J2<$N<0(B +$B$K$J$j$^$9!#(B + +@lisp +(< header-value 4) +@end lisp + +$B$b$7$/$OB>$NJ}K!$K$7$^$7$g$&(B: @code{<} $B$r(B @code{Lines} $B$G(B 4 $B$r9gCW$H$7$F(B +$B;H$C$F$$$k$H$-$O!"5-;v$,(B 4 $B9T$h$j$b>/$J$$$H$-$K%9%3%"$,DI2C$5$l$^$9!#(B($B:.(B +$BMp$7$F!"H?BP$G$O$J$$$+$H9M$(0W$$$G$9!#$G$b!"$=$&$G$O$J$$$N$G$9!#;d$,;W$&(B +$B$K!#(B) + +$B9gCW$,(B @code{Lines} $B$G$J$5$l$F$$$k$H!"$$$/$D$+$N%P%C%/%(%s(B +$B%I(B (@code{nndir}$B$N$h$&$J$b$N(B) $B$O(B @code{Lines} $B%X%C%@!<$r:n@.$7$J$$$?$a$K(B +$BA4$F$N5-;v$,(B 0 $B9T$G$"$k$H$7$F07$o$l$k;v$K5$$rIU$1$F$/$@$5$$!#$3$l$O$b$7(B +$B>/$7$N9T$7$+$J$$5-;v$N%9%3%"$r2<$2$F$$$k$N$J$i!"JQ$J7k2L$,5/$3$jF@$k;v$K(B +$B$J$j$^$9!#(B + +@item Date +Date ($BF|IU(B) $B%X%C%@!<$K$O;0$D$N$J$s$H$J$/$P$+$2$F$$$k9gCW$N7?$,$"$j$^$9(B: +@code{before}, @code{at}, @code{after} $B$G$9!#;d$OK\Ev$K$3$l$,LrN)$D$h$&(B +$B$J5!2q$rA[A|$G$-$J$$$N$G$9$,!"$3$N4X?t$rDs6!$7$J$$$N$b$J$s$H$J$/$P$+$2$F(B +$B$$$^$9!#$=$&$7$?>l9g$N$?$a$K$"$k$N$G$9!#$$$DI,MW$K$J$k$+$OC/$K$b$o$+$j$^(B +$B$;$s!#E>$P$L@h$N>s!#C;5$$OB;5$!#K\$r%+%P!<$GH=CG$7$F$O9T$1$^$;$s!#=i$a$F(B +$B$N%G!<%H$G%(%C%A$7$F$O$$$1$^$;$s!#(B($B$7$+$7!";d$O>/$J$/$H$b0l?M!"0zMQ$7$^(B +$B$9$,!"(B``$B$3$N4X?t$O7g$+$;$J$$$b$N$G$"$k;v$,$o$+$C$?(B'' $B$H8@$C$??M$,$$$k$H(B +$BJ9$$$F$$$^$9!#(B) + +($BLuCm(B: $B86E5$N(B "Once burnt, twice shy" $B$r(B "$BC;5$$OB;5$(B" $B$H$7$^$7$?$,!"$b$C(B +$B$HE,@Z$JLu$,$"$l$P$*CN$i$;2<$5$$!#(B) + +@cindex ISO8601 +@cindex date +$B$b$C$HLrN)$D9gCW$N7?$O(B @code{$B@55,I=8=(B} $B$G$9!#$=$l$K$h$C$FF|IUJ8;zNs$K@5(B +$B5,I=8=$rMQ$$$F9gCW$5$;$k;v$,$G$-$^$9!#F|IU$O$^$:(B ISO8601 $BC;=LMM(B +$B<0(B (compact format) $B$KI8=`2=$5$l$^(B +$B$9(B---@var{YYYYMMDD}@code{T}@var{HHMMSS} $B$G$9!#Nc$($P!"$b$7A4$F$NG/(B +$B$N(B 4$B7n(B1$BF|(B $B$KEj9F$5$l$?A4$F$N5-;v$K$,<#$5$;$?$$$N$G$"$l$P!"(B +@samp{....0401.........} $B$r9gCWJ8;zNs$H$7$F;H$&;v$,$G$-$^$9!#(B($BF|IU$O85!9(B +$B$NI8=`;~$GJ]B8$5$l$F$$$^$9$N$G!"$=$N5-;v$,Ej9F$5$l$?$H$3$m$G(B 4$B7n(B1$BF|(B $B$KEj(B +$B9F$5$l$?5-;v$K9gCW$9$k;v$KCm0U$7$F$/$@$5$$!#I8=`;~$O0l2H$K$H$C$FHs>o$KM-(B +$B1W$J3Z$7$_$G$7$g$&(B?) + +@item Head, Body, All +$B$3$l$i$N;0$D$N9gCW$N%-!<$O(B @code{From} $B%X%C%@!<(B ($B$J$I(B) $B$HF1$89gCW$N7?$r(B +$B;H$$$^$9!#(B + +@item Followup +$B$3$N9gCW$N%-!<$O>/$7FCJL$G!"$=$l$O(B @code{From} $B%X%C%@!<$K9gCW$7!"9gCW$7(B +$B$?5-;v$@$1$G$J$/$=$N5-;v$X$NA4$F$N%U%)%m!<%"%C%W$N%9%3%"$K$b1F6A$7$^$9!#(B +$B$3$l$O$?$H$($P!"$"$J$?<+?H$N5-;v$X$N%U%)%m!<%"%C%W$N%9%3%"$rA}$d$7$?$j!"(B +$BNI$/CN$i$l$?LdBj;y$X$N%U%)%m!<%"%C%W5-;v$N%9%3%"$r2<$2$?$j$9$k$N$K;H$o$l(B +$B$^$9!#(B@code{From} $B%X%C%@!<$,;H$&$N$HF1$87?$N9gCW$r;H$$$^$9!#(B($B$3$N9gCW%-!<(B +$B$r;H$&$H!"%U%!%$%k(B @file{ADAPT} $B$r:n$k;v$K$J$j$^$9!#(B) + +@item Thread +$B$3$N9gCW%-!<$O(B @code{Followup} $B9gCW%-!<$HF1$89T$KF0:n$7$^$9!#(B +@code{Message-ID} @var{x} $B$G;O$^$C$F$$$k(B ($BI{(B)$B%9%l%C%I$K%9%3%"$rIU$1$?$$(B +$B$N$G$"$l$P!"(B@samp{thread} $B9gCW$rIU$12C$($^$9!#$3$l$O(B @code{Reference} $B%X%C(B +$B%@!<$K(B @var{x} $B$r;}$D$=$l$>$l$N5-;v$K?7$7$$(B @samp{thread} $B9gCW$rDI2C$7$^(B +$B$9!#(B($B$3$l$i$N?7$7$$(B @samp{thread} $B9gCW$O$3$l$i$N9gCW$9$k5-;v(B +$B$N(B @code{Message-ID} $B$r;H$$$^$9!#(B) $B$3$l$O%9%l%C%I$N$$$/$D$+$N5-;v$,40A4(B +$B$J(B @code{References} $B%X%C%@!<$r;}$C$F$$$J$+$C$?$H$7$F$b!"%9%l%C%IA4BN$N(B +$B%9%3%"$r>e$2(B/$B2<$2$G$-$k;v$rJ]>Z$7$^$9!#$3$l$r;H$&$H!"%9%l%C%I$N5-;v$K7h(B +$BDjE*$G$J$$%9%3%"$,IU$/$+$b$7$l$J$$$H$$$&$3$H$KCm0U$7$F$/$@$5$$!#(B($B$3$N9g(B +$BCW%-!<$r;H$&$H!"%U%!%$%k(B @file{ADAPT} $B$r:n$k;v$K$J$j$^$9!#(B) +@end table +@end enumerate + +@cindex score file atoms +@item mark +$B$3$NEPO?$NCM$O?t;z$G$"$k$Y$-$G$9!#$3$N?t;z$h$jDc$$%9%3%"$N5-;v$K$O4{FI$N(B +$B0u$,IU$-$^$9!#(B + +@item expunge +$B$3$NEPO?$NCM$O?t;z$G$"$k$Y$-$G$9!#$3$N?t;z$h$jDc$$%9%3%"$N5-;v$O35N,%P%C(B +$B%U%!$+$i:o=|$5$l$^$9!#(B + +@item mark-and-expunge +$B$3$NEPO?$NCM$O?t;z$G$"$k$Y$-$G$9!#$3$N?t;z$h$jDc$$%9%3%"$N5-;v$K$O4{FI$N(B +$B0u$,IU$-!"35N,%P%C%U%!$+$i:o=|$5$l$^$9!#(B + +@item thread-mark-and-expunge +$B$3$NEPO?$NCM$O?t;z$G$"$k$Y$-$G$9!#%9%3%"$NAm7W$,$3$N?t;z$h$jDc$$%9%l%C%I(B +$B$K$O4{FI$N0u$,IU$-!"35N,%P%C%U%!$+$i:o=|$5$l$^$9!#(B +@code{gnus-thread-score-function} $B$O%9%l%C%I$N%9%3%"$NAm7W$r$I$N$h$&$K7W(B +$B;;$9$k$+$r;XDj$7$^$9!#(B + +@item files +$B$3$NEPO?$NCM$OG$0U$N?t$N%U%!%$%kL>$G$"$k$Y$-$G$9!#$3$l$i$N%U%!%$%k$b%9%3(B +$B%"%U%!%$%k$G$"$k$H$_$J$5$l!"$3$l$,$5$l$?$N$HF1$8$h$&$JJ}K!$GFI$_9~$^$l$^(B +$B$9!#(B + +@item exclude-files +$B$3$NEPO?$N$G$"$k$Y$-$G$9!#$3$l$i$N%U%!%$%k(B +$B$O2?$i$+$NM}M3$GIaDL$OFI$_9~$^$l$k$h$&$K$J$C$F$$$?$H$7$F$b!"FI$_9~$^$l$^(B +$B$;$s!#(B + +@item eval +$B$3$NEPO?$NCM$O(B @code{$BI>2A(B} $B$5$l$^$9!#$3$NMWAG$OA4BNE*%9%3%"%U%!%$%k$r07$C(B +$B$F$$$k$H$-$OL5;k$5$l$^$9!#(B + +@item read-only +$BFI$_9~$_@lMQ%9%3%"%U%!%$%k$O99?7$5$l$?$jJ]B8$5$l$?$j$7$^$;$s!#A4BNE*%9%3(B +$B%"%U%!%$%k$O$3$N%"%H%`$r;HMQ$9$k$Y$-$G$9(B (@pxref{Global Score Files})$B!#(B +($BCm0U(B: @dfn{$BA4BNE*(B} $B$O$3$3$G$OK\Ev$K(B @dfn{$BA4BNE*(B} $B$H$$$&0UL#$G$9!#8D?ME*(B +$B$JA4$F$N%0%k!<%W$KE,MQ$9$k%9%3%"%U%!%$%k$N;v$G$O$"$j$^$;$s!#(B) + +@item orphan +$B$3$NEPO?$NCM$O?t;z$G$"$k$Y$-$G$9!#?F5-;v$r;}$?$J$$5-;v$O%9%3%"$K$3$N?t;z(B +$B$,2C$($i$l$^$9!#(B@samp{comp.lang.c} $B$N$h$&$JNL$NB?$$%K%e!<%9%0%k!<%W$rDI(B +$B$$$+$1$F$$$k$H$7$F$/$@$5$$!#$*$=$i$/Fs!";0$N%9%l%C%I$H?7$7$$%9%l%C%I$@$1(B +$B$rDI$$$?$$$G$7$g$&!#(B + +$B0J2<$N;0$D$N%9%3%"%U%!%$%kEPO?$K$h$C$F$=$l$r$9$k;v$,$G$-$^$9(B: + +@example + (orphan -500) + (mark-and-expunge -100) +@end example + +$B:G=i$K$3$N%0%k!<%W$KF~$C$?$H$-$O!"?7$7$$%9%l%C%I$@$1$r8+$^$9!#$=$l$+$i$*(B +$B$b$7$m$$$H;W$C$?%9%l%C%I$N%9%3%"$r>e$2(B (@kbd{I T} $B$b$7$/$O(B @kbd{I S} $B$K(B +$B$h$C$F(B)$B!";D$j$rL5;k(B (@kbd{C y}) $B$7$^$9!#/$7B8:_$7$9$kNL$NB?$$%0%k!<%W$N$?$a$K$"$j$^$9!#(B + +@item adapt +$B$3$NEPO?$OE,1~%9%3%"$r@)8f$7$^$9!#$b$7$3$l$,(B @code{t} $B$G$"$k$H!"=i4|@_Dj(B +$B$NE,1~%9%3%"K!B'$,;H$o$l$^$9!#$b$7$3$l$,(B @code{ignore} $B$G$"$k$H!"$3$N%0(B +$B%k!<%W$K$OE,1~%9%3%"$O$N$b$N$G$"$l$P!"=i4|@_Dj$NE,1~%9%3%"K!(B +$BB'$,;H$o$l$^$9!#$?$$$F$$$N%0%k!<%W$KE,1~%9%3%"$r;H$$$?$$$N$G$"$l$P!"(B +@code{gnus-use-adaptive-scorint} $B$r(B @code{t} $B$K@_Dj$7!"(B@code{(adapt +ignore)} $B$rE,1~%9%3%"$r$7$?$/$J$$%0%k!<%W$KA^F~$9$k$G$7$g$&!#>/$7$N%0%k!<(B +$B%W$G$@$1E,1~%9%3%"$r9T$$$?$$$N$G$"$l$P!"(B +@code{gnus-use-adaptive-scoring} $B$r(B @code{nil} $B$K@_Dj$7!"(B +@code{(adaptive t)} $B$r$=$l$r9T$$$?$$%0%k!<%W$N%9%3%"%U%!%$%k$KA^F~$9$k$G(B +$B$7$g$&!#(B + +@item adaptive-file +$BA4$F$NE,1~%9%3%"EPO?$O$3$NEPO?$K$h$C$FL>$E$1$i$l$?%U%!%$%k$KF~$j$^$9!#$=(B +$B$l$O%0%k!<%W$KF~$k$H$-$K$bE,MQ$5$l$^$9!#$3$N%"%H%`$OB?$/$N%0%k!<%W$KF1$8(B +$BE,1~%9%3%"%U%!%$%k$rMQ$$$k;v$K$h$C$F!"J#?t$N%0%k!<%W$K0lEY$KE,1~%9%3%"$r(B +$BIU$1$?$$$H$-$KJXMx$G$7$g$&!#(B + +@item local +@cindex local variables +$B$3$NEPO?$NCM$O(B @code{(@var{var} @var{value})} $BBP$N%j%9%H$G$"$k$Y$-$G$9!#(B +$B$=$l$>$l$N(B @var{var} $B$O8=:_$N35N,%P%C%U%!$N%P%C%U%!8GM-$K$J$j!";XDj$5$l(B +$B$?CM(B (value) $B$K@_Dj$5$l$^$9!#$3$l$OJXMx$J!"$b$7>/$7JQ$@$H$7$F$b!"%U%C%/(B +$B$r$"$^$j9%$^$J$$$$$/$D$+$N%0%k!<%W$GJQ?t$r@_Dj$9$kJ}K!$G$9!#(B +@var{value} $B$OI>2A$5$l$J$$;v$KCm0U$7$F$/$@$5$$!#(B +@end table + +@node Score File Editing +@section $B%9%3%"%U%!%$%kJT=8(B + +$BIaDL$OA4$F$N%9%3%"L?Na$r35N,%P%C%U%!$+$iH/9T$7$^$9$,!"/$7%+%9%?%^%$%:$5$l$?(B @code{emacs-lisp} $B%b!<%I$G!"0J2<$NDI(B +$B2C$NL?Na$,B8:_$7$^$9(B: + +@table @kbd +@item C-c C-c +@kindex C-c C-c ($B%9%3%"(B) +@findex gnus-score-edit-done +$B$"$J$?$,9T$C$?JQ99$rJ]B8$7$F35N,%P%C%U%!$KLa$j$^(B +$B$9(B (@code{gnus-score-edit-done})$B!#(B + +@item C-c C-d +@kindex C-c C-d ($B%9%3%"(B) +@findex gnus-score-edit-insert-date +$B8=:_$NF|IU$r?t;zMM<0$GA^F~$7$^$9(B (@code{gnus-score-edit-insert-date})$B!#(B +$B$b$7$3$l$,$I$N$h$&$J$b$N$G$"$m$&$H9M$($F$$$k$N$G$"$l$P!"$3$l$OK\Ev$KF|$N(B +$B?t;z$G$9!#(B + +@item C-c C-p +@kindex C-c C-p ($B%9%3%"(B) +@findex gnus-score-pretty-print +$BE,1~%9%3%"%U%!%$%k$O@0$($i$l$F$$$J$$N.57$GJ]B8$5$l$^$9!#$b$7$3$l$i$N%U%!(B +$B%$%k$NFb$N0l$D$rFI$_$?$$$H;W$C$F$$$k$N$G$"$l$P!"$^$:(B @dfn{$BAGE($JI=<((B} $B$r(B +$B$7$?$$$G$7$g$&!#$3$NL?Na(B (@code{gnus-score-pretty-print}) $B$,$"$J$?$N$?$a(B +$B$K$=$l$r$7$^$9!#(B +@end table + +$B$3$N%b!<%I$r;H$&$?$a$K$O(B @kbd{M-x gnus-score-mode} $B$HBG$C$F$/$@$5$$!#(B + +@vindex gnus-score-mode-hook +@code{gnus-score-menu-hook} $B$,%9%3%"%b!<%I%P%C%U%!$GJ}$NE,1~(B +$BJ}K!$r;H$$$?$1$l$P!"$3$NJQ?t$r(B@code{(wordline)} $B$K@_Dj$7$F$/$@$5$$!#(B + +@vindex gnus-default-adaptive-score-alist +@code{gnus-default-adaptive-score-alist} $BJQ?t$r%+%9%?%^%$%:$9$k$3$H$G!"(B +$B%9%3%"IU$1$N=hM}$r40A4$K@)8f$G$-$^$9!#Nc$($P!"$3$N$h$&$J46$8$K$J$j$^$9!#(B + +@lisp +(setq gnus-default-adaptive-score-alist + '((gnus-unread-mark) + (gnus-ticked-mark (from 4)) + (gnus-dormant-mark (from 5)) + (gnus-del-mark (from -4) (subject -1)) + (gnus-read-mark (from 4) (subject 2)) + (gnus-expirable-mark (from -1) (subject -1)) + (gnus-killed-mark (from -1) (subject -3)) + (gnus-kill-file-mark) + (gnus-ancient-mark) + (gnus-low-score-mark) + (gnus-catchup-mark (from -1) (subject -1)))) +@end lisp + +$B8+$F$*J,$+$j$N$h$&$K!"$3$NO"A[%j%9%H$N3FMWAG$O!"%-!<$H$7$F0u(B ($BJQ?tL>$+$b(B +$B$7$/$O(B ``$BK\Ev$N(B'' $B0u(B --- $B$D$^$jJ8;z(B)$B$r;}$A$^$9!#$3$N%-!<$N8e$K$OG$0U$N?t(B +$B$N%X%C%@!<(B/$B%9%3%"$NAH$,B3$-$^$9!#$b$7$=$N%-!<$N8e$K%X%C%@!<(B/$B%9%3%"$NAH$,(B +$B0l$D$b$J$1$l$P!"$=$N%-!<$,5-;v$N0u$H$7$F$D$$$F$$$k5-;v$KBP$7$F$OE,1~@-%9(B +$B%3%"$Oe5-$NNc$G$O!"(B@code{gnus-unread-mark} $B$,$D$$(B +$B$F$$$k5-;v$OE,1~@-%9%3%"$NEPO?9`L\$K$O$J$j$^$;$s!#(B + +$B3F5-;v$O$?$@0l$D$N0u$7$+;}$AF@$J$$$N$G!"$=$l$>$l$N5-;v$K$O$3$l$i$N5,B'$N(B +$B$&$A$?$@0l$D$7$+E,MQ$5$l$^$;$s!#(B + +@code{gnus-del-mark} $B$rNc$KC5n(B ($B%a!<%k(B) $B%0%k!<%W(B (@pxref{Expiring Mail})$B$,$"$l$P!"(B +$B4{FI5-;v$K$OA4$F(B @samp{E} $B0u$,$D$1$i$l$^$9!#$3$l$O$*$=$i$/!"E,1~@-%9%3%"(B +$BIU$1$r$A$g$C$H$P$+$jIT2DG=$K$9$k$N$G!"<+F04|8B@Z$l>C5n$HE,1~@-%9%3%"$O0l(B +$B=o$K$O$&$^$/$d$C$F$$$1$^$;$s!#(B + +$B%9%3%"$r$D$1$i$l$k%X%C%@!<$K$O(B @code{from}, @code{subject}, +@code{message-id}, @code{references}, @code{xref}, @code{lines}, +@code{chars}, @code{date} $B$,$"$j$^$9!#$5$i$K(B @code{followup} $B$K$b%9%3%"(B +$BIU$1$G$-$^$9!#$3$l$O8=:_$N5-;v$N(B @code{Message-ID} $B$r;HMQ$7(B +$B$F(B @code{References} $B%X%C%@!<$K%^%C%A!"$9$J$o$A$3$l$KB3$$$?%9%l%C%I$K%^%C(B +$B%A$9$kE,1~@-%9%3%"EPO?$r:n@.$7$^$9!#(B + +$B$3$N5!9=$r;H$&$J$i$P!"$H$-$I$-5-;v$r4{FI$K$7$F$7$^$&>.$5$JJQ99$rHr$1$k$?(B +$B$a$K!"%9%3%"%U%!%$%k$N(B @code{mark} $B%"%H%`$r2?$+>.$5$$CM(B --- $B$3$H$K$h$l(B +$B$P(B -300 $B$/$i$$$K@_Dj$7$F$*$$$?J}$,NI$$$G$9!#(B + +$BE,1~@-%9%3%"$r0l=54V$+$=$3$i;H$C$F$/$k$H!"(BGnus $B$O$=$lAj1~$KD465$5$l!"$"(B +$B$J$?$,2?$b8@$o$J$/$F$b!"$"$J$?$N9%$-$JEj9FC5n$9$k$h$&$K$J$k$O$:$G$9!#(B + +$B$I$N%0%k!<%W$K$*$$$FE,1~@-%9%3%"$r:nF0$5$;$k$+$O!"%9%3%"%U%!%$(B +$B%k(B (@pxref{Score File Format}) $B$r;H$&$3$H$K$h$C$F@)8f$G$-$^$9!#$^$?$3$l(B +$B$r;H$C$F!"0c$C$?%0%k!<%W$KBP$7$F0c$C$?5,B'$r;H$&$h$&$K$b$G$-$^$9!#(B + +@vindex gnus-adaptive-file-suffix +$BE,1~@-%9%3%"EPO?9`L\$O!"%0%k!<%WL>$K(B @code{gnus-adaptive-file-suffix} $B$r(B +$BIU2C$7$?L>A0$N%U%!%$%k$KF~$l$i$l$^$9!#=i4|@_DjCM$O(B @file{ADAPT} $B$G$9!#(B + +@vindex gnus-adaptive-pretty-print +$BE,1~@-%9%3%"%U%!%$%k$O5pBg$K$J$jF@$k$7!"?M$Nl9g$K$*$$$FNI$$7k2L$,F@$i$l$k$G$7$g$&!#$7$+$7!"%X%C%@!<(B +$B$N0lCW$7$?ItJ,$,C;$$>l9g!"0U?^$KH?$9$k$h$&$JF0:n$r$9$k2DG=@-$,Bg$-$/$J$k(B +$B$N$G!"(B@code{gnus-score-exact-adapt-limit} $B$h$jC;$$D9$5$7$+0lCW$7$J$$>l9g(B +$B$O40A40lCW$,9T$o$l$^$9!#$3$NJQ?t$,(B @code{nil} $B$G$"$l$P!"$3$NLdBj$,5/$3$i(B +$B$J$$$h$&$K>o$K40A40lCW$,9T$o$l$^$9!#(B + +@vindex gnus-default-adaptive-word-score-alist +$B>e$G=R$Y$?$h$&$K!"8DJL$NC18l$KBP$7$F$b%X%C%@!l9g!"(B +@code{gnus-default-adaptive-word-score-alist} $BJQ?t$K$h$C$F!"3FC18l$KBP$7(B +$B$F$"$k0u$X$I$s$J%9%3%"$rM?$($k$+$r;XDj$7$^$9!#(B + +@lisp +(setq gnus-default-adaptive-word-score-alist + `((,gnus-read-mark . 30) + (,gnus-catchup-mark . -10) + (,gnus-killed-mark . -20) + (,gnus-del-mark . -15))) +@end lisp + +$B$3$l$,=i4|@_DjCM$G$9!#C18l$KBP$9$kE,1~$rM-8z$K$9$k$H!"(B +@code{gnus-read-mark} $B$N0u$N$D$$$?5-;v$NI=Bj$K8=$l$kA4$F$NC18l$,!"%9%3%"(B +$B$K(B 30 $BE@DI2C$9$k$H$$$&%9%3%"5,B'$r@8$_=P$7$^$9!#(B + +@vindex gnus-default-ignored-adaptive-words +@vindex gnus-ignored-adaptive-words +@code{gnus-default-ignored-adaptive-words} $B$N%j%9%H$K8=$l$kC18l$OL5;k$5(B +$B$l$^$9!#L5;k$7$?$$C18l$rDI2C$7$?$$$H$-$O!"$3$NJQ?t$G$O$J(B +$B$/(B @code{gnus-ignored-adaptive-words} $B%j%9%H$NJ}$r;H$C$F$/$@$5$$!#(B + +@vindex gnus-adaptive-word-length-limit +$BC;$$C18l$G$OE,1~@-%9%3%"$r:nF0$5$;$k$Y$-$G$O$J$$$H;W$&?M$b$$$k$G$7$g$&!#(B +$B$b$7$=$&$J$i(B @code{gnus-adaptive-word-length-limit} $B$K@0?t$r@_Dj$9$k$3$H(B +$B$,$G$-!"$3$N?tCM$h$jC;$$C18l$OL5;k$5$l$^$9!#$3$NJQ?t$N=i4|@_DjCM(B +$B$O(B @code{nil} $B$G$9!#(B + +@vindex gnus-adaptive-word-syntax-table +$B%9%3%"IU$1$,=*N;$7$?$H$-!"(B@code{gnus-adaptive-word-syntax-table} $B$NJ8K!(B +$BI=$,$=$N1F6A$r.$5$/$J$k$3$H$O(B +$B$"$j$^$;$s!#=i4|@_DjCM$O(B @code{nil} $B$G$9!#(B + +@vindex gnus-adaptive-word-no-group-words +@code{gnus-acaptive-word-no-group-words} $B$,(B @code{t} $B$K@_Dj$5$l$F$$$k$H!"(B +Gnus $B$O%0%k!<%WL>$NA4$F$N8l$K$D$$$F!"C18lE,1~@-%9%3%"$r$7$^$;$s!#$[$H$s(B +$B$I$NI=Bj$,(B @samp{emacs} $B$H$$$&8l$r4^$s$G$$$k(B @samp{comp.editor.emacs} $B$N(B +$B$h$&$J%0%k!<%W$GJXMx$G$9!#(B + +$B$3$N5!9=$r$7$P$i$/;H$C$F$_$?8e$K$O!"$"$J$?$,$I$s$JC18l$,9%$-$G$I$s$JC18l(B +$B$,7y$$$+$r!"$3$N5,B'$rDL$7$F?GCG$9$kMxMQo$K]$G$O!"$3$l$O8=>u$G$OA4$/;H(B +$B$$J*$K$J$i$J$$$h$&$K;W$($^$9!#$3$l$r$b$C$H;H$($k$h$&$K$9$k$?$a$K$O!"(B($B$h(B +$B$j87L)$JE}7WE*o(B ($B=i4|@_Dj$G(B) $B$=$N%0(B +$B%k!<%WMQ$N%9%3%"%U%!%$%k$K$J$j$^$9!#Nc$($P!"(B@samp{gnu.emacs.gnus} $BMQ$N%[!<(B +$B%`%9%3%"%U%!%$%k$O(B @file{gnu.emacs.gnus.SCORE} $B$H$J$k$o$1$G$9!#(B + +$B$7$+$7$J$,$i!"$3$l$O$"$J$?$N$*K>$_$G$O$J$$$+$b$7$l$^$;$s!#$?$/$5$s$N%0%k!<(B +$B%W4V$G6&DL$N%[!<%`%9%3%"%U%!%$%k$r6&M-$9$k$HJXMx$J$H$-$,B?$$$G$7$g(B +$B$&(B --- $BNc$($PA4$F$N(B @samp{emacs} $B%0%k!<%W$GF1$8%[!<%`%9%3%"%U%!%$%k$r;H(B +$B$&$3$H$b$G$-$^$9!#(B + +@vindex gnus-home-score-file +$B$3$l$r@)8f$9$kJQ?t$,(B @code{gnus-home-score-file} $B$G$9!#$3$l$O0J2<$NCM$r(B +$Bl9g$3$N%U%!%$%k$,A4$F$N%0%k!<%W$G%[!<%`%9%3%"%U%!%$%k$H$7$F(B +$B;HMQ$5$l$^$9!#(B + +@item +$B4X?t!#$3$N4X?t$N7k2L$,%[!<%`%9%3%"%U%!%$%k$H$7$F;HMQ$5$l$^$9!#$3$N4X?t$O(B +$B%0%k!<%W$NL>A0$r0z?t$H$7$F8F$S=P$5$l$^$9!#(B + +@item +$B%j%9%H!#$3$N%j%9%H$NMWAG$O0J2<$NCM$r$K%^%C%A(B +$B$9$l$P!"(B@var{file-name} $B$,%[!<%`%9%3%"%U%!%$%k$H$7$F;HMQ$5$l$^$9!#(B + +@item +$B4X?t!#$3$N4X?t$,(B @code{nil} $B0J30$rJV$;$P!"$=$NJV5QCM$,%[!<%`%9%3%"%U%!%$(B +$B%k$H$7$F;HMQ$5$l$^$9!#(B + +@item +$BJ8;zNs!#$3$NJ8;zNs$r%[!<%`%9%3%"%U%!%$%k$H$7$F;HMQ$7$^$9!#(B +@end enumerate + +$B$3$N%j%9%H$NCf$+$i%^%C%A$9$k$b$N$r!":G=i$+$i8e$m$NJ}$K8~$+$C$FC5$7$F$$$-(B +$B$^$9!#(B + +@end enumerate + +$B$H$$$&$o$1$G!"C1$K0l8D$N%9%3%"%U%!%$%k$r;H$$$?$$>l9g$O!"0J2<$N$h$&$K$9$l(B +$B$P$G$-$^$9!#(B + +@lisp +(setq gnus-home-score-file + "my-total-score-file.SCORE") +@end lisp + +$B$b$7A4(B @samp{gnu} $B%0%k!<%W$KBP$7$F(B @file{gnu.SCORE} $B$r!"A4(B @samp{rec} $B%0(B +$B%k!<%W$KBP$7$F(B @file{rec.SCORE} ($BEy!9(B) $B$r;H$$$?$1$l$P!"$3$N$h$&$K$G$-$^(B +$B$9!#(B + +@findex gnus-hierarchial-home-score-file +@lisp +(setq gnus-home-score-file + 'gnus-hierarchial-home-score-file) +@end lisp + +$B$3$l$OJXMx$J$h$&$K$"$i$+$8$aDs6!$5$l$F$$$k4X?t$G$9!#B?$N4X?t$O0J2<$N0J2<(B +$B$N$b$N$r4^$_$^$9!#(B + +@table @code +@item gnus-current-home-scre-file +@findex gnus-current-home-score-file +``$B8=:_$N(B'' $BI8=`%9%3%"%U%!%$%k$rJV$7$^$9!#$3$l$O%9%3%"L?Na$K%9%3%"%U%!%$(B +$B%k$N(B ``$B:GFbIt(B'' $B9gCW$X$NEPO?$r2C$($k$h$&$K$7$^$9!#(B +@end table + +$B$b$7(B @samp{emacs} $B%0%k!<%WMQ$N%9%3%"%U%!%$%k$H!"$=$l$H$OJL(B +$B$N(B @samp{comp} $B%0%k!<%WMQ$N%9%3%"%U%!%$%k$r;H$$!"B>$NA4It$N%0%k!<%W$G$O(B +$B$=$l$>$lFH<+$N%9%3%"%U%!%$%k$r;H$$$?$$$N$G$"$l$P!"(B + +@lisp +(setq gnus-home-score-file + ;; @r{$B@55,I=8=(B @code{"\\.emacs"} $B$K9gCW$9$k$9$Y$F$N%0%k!<%W(B} + '(("\\.emacs" "emacs.SCORE") + ;; @r{$B$9$Y$F$N(B comp $B%0%k!<%W$rC10l$N%9%3%"%U%!%$%k$G(B} + ("^comp" "comp.SCORE"))) +@end lisp + +@vindex gnus-home-adapt-file +@code{gnus-home-adapt-file} $B$O(B @code{gnus-home-score-file} $B$HA4$/F1$8$h(B +$B$&$KF0:n$7$^$9$,!"$3$l$OBe$o$j$K2?$r%[!<%`E,MQ%9%3%"%U%!%$%k$K$9$k$+$r;X(B +$BDj$7$^$9!#?7$7$$E,MQ%U%!%$%kEPO?9`L\$OA4$F!"$3$NJQ?t$G;XDj$5$l$k%U%!%$%k(B +$B$KF~$l$i$l$^$9!#CM$K$OF1$8J8K!$,5v$5$l$^$9!#(B + +@code{gnus-home-score-file} $B$H(B @code{gnus-home-adapt-file} $B$N;HMQ$K2C$((B +$B$F!"%0%k!<%W%Q%i%a!<%?(B (@pxref{Group Parameters}) $B$H%H%T%C%/%Q%i%a!<(B +$B%?(B (@pxref{Topic Parameters}) $B$r;H$C$F$[$\F1MM$N$3$H$,$G$-$^$9!#%0%k!<%W!"(B +$B%H%T%C%/%Q%i%a!<%?$O$3$NJQ?t$h$j$bM%@h$5$l$^$9!#(B + +@node Followups To Yourself +@section $B<+J,<+?H$X$N%U%)%m!<%"%C%W(B + +Gnus $B$O8=:_$N%P%C%U%!!<$+$i(B @code{Message-ID} $B%X%C%@!<$r8+$D$1=P$9$?$a$K(B +$BFs$D$NL?Na$rDs6!$7$F$$$^$9!#$=$7$F(B Gnus $B$O!"B>$N5-;v$K$*$1(B +$B$k(B @code{References} $B%X%C%@!@\%U%)%m!<%"%C%W$7$?5-;v$K%9%3%"$r2C;;$7$^$9!#(B + +@item gnus-score-followup-thread +@findex gnus-score-followup-thread +$B$3$l$O$"$J$?$N5-;v$h$j(B ``$B2<(B'' $B$N%9%l%C%I$K8=$l$k5-;vA4$F$KBP$7$F%9%3%"$r(B +$B2C;;$7$^$9!#(B +@end table + +@vindex message-sent-hook +$B$3$l$iFs$D$N4X?t$O!"4pK\E*$K$O$I$A$i$b(B @code{message-sent-hook} $B$N$h$&$J(B +$B%U%C%/$NCf$G;H$&$?$a$N$b$N$G$9!#Nc$($P$3$N$h$&$K(B: +@lisp +(add-hook 'message-sent-hook 'gnus-score-followup-thread) +@end lisp + +$B$"$J$?$N<+J,$N(B @code{Message-ID} $B$r$8$C$/$j$HD/$a$F$_$k$H!"$O$8$a$NFs!"(B +$B;0J8;z$O>o$KF1$8$G$"$k$3$H$K5$$,$D$/$G$7$g$&!#0J2<$NFs$D$O;d$N$b$N$G$9!#(B + +@example + + +@end example + +$B$D$^$j$3$N%^%7%s>e$G$N(B ``$B;d$N(B'' $B$N<1JL$O(B @samp{x6} $B$G$"$k$H$$$&$3$H$G$9!#(B +$B$3$l$O;H$($^$9(B --- $B0J2<$N5,B'$O;d<+?H$X$N%U%)%m!<%"%C%WA4$F$KBP$7$F%9%3(B +$B%"$rA}2C$5$;$k$G$7$g$&!#(B + +@lisp +("references" + ("" + 1000 nil r)) +@end lisp + +``$B$"$J$?$N(B'' $B$,:G=i$NFsJ8;z$K$J$k$+:G=i$N;0J8;z$K$J$k$+$O%7%9%F%`$K0MB8(B +$B$7$^$9!#(B + +@node Scoring On Other Headers +@section $BB>$N%X%C%@!<$K%9%3%"$rIU$1$k(B +@cindex scoring on other headers + +Gnus $B$,(B ``$BEAE}E*(B'' $B$J%X%C%@!<(B -- @samp{From}, @samp{Subject} $B$J$I(B -- $B$K(B +$B%9%3%"$rIU$1$k$N$O$H$F$bB.$$$G$9!#$G$9$,!"B>$N%X%C%@!<$K%9%3%"$rIU$1$k$K(B +$B$O(B @code{head} $B$N%9%3%"$N$?$a$N5,B'$r=q$/I,MW$,$"$j!"$=$l$O9gCW$rC5$9$?(B +$B$a$K(B Gnus $B$,Kh2s%P%C%/%(%s%I$+$iC1FH$N5-;v$r\$7$/@bL@$5$l(B +$B$F$$$^$9$,!"$3$3$G$O(B @code{nnml} $B$G(B @samp{To} $B$H(B @samp{Cc} $B%X%C%@!<$K%9(B +$B%3%"$rIU$1$kJ}K!$ND4M}$NNc$r5s$2$^$7$g$&!#(B + +$B0J2<$r(B @file{~/.gnus.el} $B%U%!%$%k$KCV$$$F2<$5$$!#(B + +@lisp +(setq gnus-extra-headers '(To Cc Newsgroups Keywords) + nnmail-extra-headers gnus-extra-headers) +@end lisp + +Gnus $B$r:F5/F0$7$F!"(B@kbd{M-x nnml-generate-nov-databases} $B%3%^%s%I(B +$B$G(B @code{nnml} $B$N(B overview $B%U%!%$%k$r:n$jD>$7$^$9!#$b$7$"$J$?$,$?$/$5$s(B +$B$N%a!<%k$r;}$C$F$$$k$H!"$3$l$K$OD9$$;~4V$,$+$+$j$^$9!#(B + +$B$=$7$F(B @kbd{I e s p To RET RET} $B$N$h$&$K$9$k$H!"$"$J$?(B +$B$O(B @samp{To} $B$H(B @samp{Cc} $B%X%C%@!<$K(B ``extra headers'' $B$H$7$F%9%3%"$rIU(B +$B$1$k$3$H$,$G$-$^$9!#(B + +$B$o$+$C$?$+$J(B? $B4JC1$@$h$M!#(B + +@node Scoring Tips +@section $B%9%3%"IU$1$N1|5A(B +@cindex scoring tips + +@table @dfn +@item $B%/%m%9%]%9%H(B +@cindex crossposts +@cindex scoring crossposts +$B%/%m%9%]%9%H$N%9%3%"$rDc$/$7$?$1$l$P!"%^%C%A$5$;$k$Y$-9T(B +$B$O(B @code{Xref} $B%X%C%@!<$G$9!#(B + +@lisp +("xref" (" talk.politics.misc:" -1000)) +@end lisp + +@item $BJ#?t$N%/%m%9%]%9%H(B +$B$"$k?t!"Nc$($P;0$D0J>e$N%0%k!<%W$K%/%m%9%]%9%H$5$l$F$$$k5-;v$N%9%3%"$rDc(B +$B$/$7$?$1$l$P!"(B + +@lisp +("xref" + ("[^:\n]+:[0-9]+ +[^:\n]+:[0-9]+ +[^:\n]+:[0-9]+" + -1000 nil r)) +@end lisp + +@item $BK\J8$X$N%^%C%A(B +$B$3$l$O0lHLE*$K$O$"$^$jNI$$9M$($G$O$"$j$^$;$s(B --- $B$=$l$O$H$F$bD9;~4V$+$+$C(B +$B$F$7$^$&$+$i$G$9!#$l$N5-;v$r8DJL$K%5!<%P!<$+$i$l$N5-;v$O(B @emph{$BFs2s(B} $B$K(B @code{All} $B$r;H$C$FA4It%^%C%A$5$;$F$/$@$5(B +$B$$!#(B + +@item $B4{FI$N0uIU$1(B +$B$"$k0lDj?t;z0J2<$N%9%3%"$r;}$D5-;v$K$O!"$*$=$i$/4{FI$N0u$r$D$1$F$7$^$$$?(B +$B$/$J$k$G$7$g$&!#$3$l$O(B @file{all.SCORE} $B%U%!%$%k$K0J2<$N$b$N$rF~$l$F$*$/(B +$B$3$H$K$h$C$F:G$b4JC1$K$N5-;vA4$F$r>C5n$7$F$7$^$$$?$1$l$P!"%9%3%"%U%!%$%k$K0J2<$N$h(B +$B$&$J$b$N$rF~$l$k$3$H$b$G$-$^$9!#(B + +@lisp +(("subject" + ("Sex with Emacs" 2)) + (mark 1) + (expunge 1)) +@end lisp + +$B$=$7$F(B @samp{Sex with Emacs} $B$K%^%C%A$9$kA4$F$N5-;v$r=8$a$F!";D$j$r=3Ht(B +$B$P$9$?$a$K4{FI$N0u$r$D$1!">C5n$7$^$9!#(B + +@node Global Score Files +@section $B%0%m!<%P%k%9%3%"%U%!%$%k(B +@cindex global score files + +$B4V0c$$$J$/!"B>$N%K%e!<%9%j!<%@!<$O(B ``$B%0%m!<%P%k:o=|%U%!%$(B +$B%k(B (global kill file)'' $B$r;}$C$F$$$^$9!#$3$l$OIaDL!"A4$F$N%0%k!<%W$KE,MQ(B +$B$5$l$k!"%f!<%6$N%[!<%`%G%#%l%/%H%j!<$K3JG<$5$l$F$$$k0l$D$N:o=|%U%!%$%k0J(B +$B>e$N2?J*$G$b$"$j$^$;$s!#$O$s(B! $B$A$C$]$1$J%K%e!<%9%j!<%@!<$@$M!#$N?M$N%9%3%"%U%!%$%k$r;H$&$?$a$K$7$J$1$l$P$J$i$J$$$3$H$O!"(B +@code{gnus-global-score-files} $BJQ?t$r@_Dj$9$k$3$H$@$1$G$9!#$=$l$>$l$N%9(B +$B%3%"%U%!%$%kKh$K!"$"$k$$$O$=$l$>$l$N%9%3%"%U%!%$%k%G%#%l%/%H%jKh$KBP$7$F(B +$B0l$D$N9`L\$K$J$j$^$9!#(BGnus $B$O$I$N%9%3%"%U%!%$%k$r$I$N%0%k!<%W$K;H$&$N$,(B +$BE,@Z$G$"$k$+$r<+J,$G7hDj$7$^$9!#(B + +$BNc$($P(B @file{/ftp@@ftp.gnus.org:/pub/larsi/ding/score/soc.motss.SCORE} $B$N(B +$B%9%3%"%U%!%$%k$H(B @file{/ftp@@ftp.some-where:/pub/score} $B%G%#%l%/%H%j$K$"(B +$B$kA4$F$N%9%3%"%U%!%$%k$r;H$$$?$1$l$P!"(B + +@lisp +(setq gnus-global-score-files + '("/ftp@@ftp.gnus.org:/pub/larsi/ding/score/soc.motss.SCORE" + "/ftp@@ftp.some-where:/pub/score/")) +@end lisp + +@findex gnus-score-search-global-directories +@noindent +$B$I$&$@$$!"4JC1$@$m$&(B? $B%G%#%l%/%H%jL>$O(B @samp{/} $B$G=*$o$i$J$/$F$O$J$j$^$;(B +$B$s!#$3$l$i$N%G%#%l%/%H%j$OIaDL$O!"0l2s$N(B Gnus $B;HMQ4|4VCf$K0l2s$@$1$7$+FI(B +$B$_9~$_$^$;$s!#$b$71s3V%G%#%l%/%H%j$r$N?M$?$A$K;H$C$F$b$i$&$h$&$K0];}$7$?$/$J$C$F$-$?(B +$B$i!"C1$K$"$J$?$N%9%3%"%U%!%$%k$rF?L>(B FTP $B$KCV$$$F!"@$3&Cf$K8xI=$7$F$/$@(B +$B$5$$!#5U;J2q!$Ao$KB?$/$N>l=j$K%/%m%9%]%9%H$5$l$F$$$k5-;v$O4V0c$$$J$/6}$G$"$k!#(B +@item +$B0l8D$NITE,@Z$J5-;v$r8:E@$9$k$K$O!"(B@code{Message-ID} $B$G8:E@$9$k!#(B +@item +$BFC$KAG@2$i$7$$Ej9FOL5;k$NEj9F$rIQHK$K7+$jJV$9Ej9FC5n$N%9%3%"9`L\$r;H$C$F%U%!%$%k$NBg$-$5$r>.$5$/M^$($k!#$G$b$*$=$i$/$O!"(B +$B%5%$%H$K$h$C$F8E$$5-;v$rD94|4VJ]B8$9$k$h$&$K!"4|8B@Z$l>C5n$N4|4V$OD9$/$N%K%e!<%9%j!<%@!<$O>-Mh!"%0%m!<%P%k%9%3%"%U%!%$%k$r%5(B +$B%]!<%H$9$k$G$7$g$&$+(B? @emph{$B$&$U$U(B}$B!#$=$&!"$I$&9M$($F$_$?$C$F!"(BBlue +Wave $B$d(B xrn $B$d(B 1stReader $B$H$+$$$C$?%K%e!<%9%j!<%@!<$O%9%3%"$r%5%]!<%H$9(B +$B$k$Y$-$@$M!#:#$O8GBC$r0{$s$G8+C5n%U%!%$%k(B +@cindex kill files + +Gnus $B$O$^$@!"$"$N$&$6$C$?$$8E$$>C5n%U%!%$%k$r%5%]!<%H$7$F$$$^$9!#C(B +$B5n%U%!%$%k$N9`L\$O$b$&>C$7$F$b$h$$$N$G$9$,!"$=$l$O(B Daniel Quinlan $B$,%9%3(B +$B%"%U%!%$%k$r9M$(=P$9A0$K;d$,=q$$$?$b$N$J$N$G!"$=$N%3!<%I$O$^$@;D$C$F$$$^(B +$B$9!#(B + +$BMW$9$k$K!">C5n=hM}$O%9%3%"=hM}$h$j$b$+$J$jCY$$$N$G(B ($B;d$N8@$$$?$$$N(B +$B$O(B @emph{$B$b$N$9$4$/(B})$B!"$"$J$?$N>C5n%U%!%$%k$O%9%3%"%U%!%$%k$K=q$-49$($?(B +$BJ}$,NI$$$+$b$7$l$^$;$s!#(B + +$B$$$:$l$K$;$h!">C5n%U%!%$%k$OIaDL$N(B @code{emacs-lisp} $B%U%!%$%k$G$9!#$3$N(B +$B%U%!%$%k$NCf$K$O$I$s$J7A<0$G$bF~$l$k$3$H$,$G$-$^$9!#$D$^$j>C5n%U%!%$%k$r(B +$B%0%k!<%W$KF~$C$?$H$-$Ko$N>C5n%U%!%$%k$O0J2<$N$h$&$K$J$j$^$9!#(B + +@lisp +(gnus-kill "From" "Lars Ingebrigtsen") +(gnus-kill "Subject" "ding") +(gnus-expunge "X") +@end lisp + +$B$3$l$O;d$,=q$$$?A4$F$N5-;v$K4{FI$N0u$r$D$1!"35N,%P%C%U%!$+$i0u$N$D$$$?5-(B +$B;v$r:o=|$7$^$9!#$H$C$F$bJXMx$G$9!#$"$J$?$b$=$&;W$&$G$7$g!#(B + +$BB>$N%W%m%0%i%`$G$OA4$/0c$&>C5n%U%!%$%k$N9=J8$r;H$C$F$$$^$9!#$b(B +$B$7(B Gnus $B$,(B @code{rn} $B$N>C5n%U%!%$%k$i$7$-$b$N$K=P2q$C$?$i!"2?$H$+$=$l$r(B +$B2rC5n%U%!%$%k$rJT=8$9$k$?$a$NFs$D$N35N,%P%C%U%!4X?t$,$"$j$^$9!#(B + +@table @kbd +@item M-k +@kindex M-k ($B35N,(B) +@findex gnus-summary-edit-local-kill +$B$=$N%0%k!<%W$N>C5n%U%!%$%k$rJT=8$9(B +$B$k(B (@code{gnus-summary-edit-local-kill})$B!#(B + +@item M-K +@kindex M-K ($B35N,(B) +@findex gnus-summary-edit-global-kill +$B0lHL>C5n%U%!%$%k$rJT=8$9$k(B (@code{gnus-summary-edit-global-kill})$B!#(B +@end table + +$B>C5n%U%!%$%k$rJT=8$9$kFs$D$N%0%k!<%W%b!<%I4X?t$,$"$j$^$9!#(B + +@table @kbd +@item M-k +@kindex M-k ($B%0%k!<%W(B) +@findex gnus-group-edit-local-kill +$B$=$N%0%k!<%W$N>C5n%U%!%$%k$rJT=8$9$k(B (@code{gnus-group-edit-local-kill})$B!#(B + +@item M-K +@kindex M-K ($B%0%k!<%W(B) +@findex gnus-group-edit-global-kill +$B0lHL>C5n%U%!%$%k$rJT=8$9$k(B (@code{gnus-group-edit-global-kill})$B!#(B +@end table + +$B>C5n%U%!%$%kJQ?t!#(B + +@table @code +@item gnus-kill-file-name +@vindex gnus-kill-file-name +@samp{soc.motss} $B%0%k!<%WMQ$N>C5n%U%!%$%k$ODL(B +$B>o(B @file{soc.motss.KILL} $B$H$$$&L>A0$G$9!#$3$N%U%!%$%kL>$rF@$k$?$a$K%0%k!<(B +$B%WL>$KIU2C$5$l$k@\Hx<-$O!"(B@code{gnus-kill-file-name} $BJQ?t$GM?$($i$l$^$9!#(B +``$B%0%m!<%P%k(B'' $B>C5n%U%!%$%k$O(B ($B%9%3%"%U%!%$%k$N0UL#$G(B +$B$N(B ``$B%0%m!<%P%k(B'' $B$8$c$J$$$h!"$b$A$m$s(B) $BC1$K(B @file{KILL}$B$H$$$&L>A0$G$9!#(B + +@vindex gnus-kill-save-kill-file +@item gnus-kill-save-kill-file +$B$3$NJQ?t$,(B @code{nil} $B0J30$G$"$l$P!"(BGnus $B$O=hM}$N8e$K>C5n%U%!%$%k$rJ]B8(B +$B$7$^$9!#$3$l$O4|8B@Z$l:o=|$r9T$&>C5n$r;H$C$F$$$k$H$-$KI,MW$G$9!#(B + +@item gnus-apply-kill-hook +@vindex gnus-apply-kill-hook +@findex gnus-apply-kill-file-unless-scored +@findex gnus-apply-kill-file +$B%0%k!<%W$K>C5n%U%!%$%k$rE,MQ$9$k$?$a$K8F$S=P$5$l$k%U%C%/!#$3$l$O=i4|@_Dj(B +$B$G$O(B @code{(gnus-apply-kill-file)} $B$G$9!#$b$7F1$8%0%k!<%W$KBP$7$F%9%3%"(B +$B%U%!%$%k$,$"$k>l9g$K$O>C5n%U%!%$%k$rL5;k$7$?$1$l$P!"$3$N%U%C%/(B +$B$r(B @code{(gnus-apply-kill-file-unless-scored)} $B$K@_Dj$7$^$9!#>C5n%U%!%$(B +$B%k$r=hM}$5$;$?$/$J$1$l$P!"$3$NJQ?t$r(B@code{nil} $B$K@_Dj$7$F$/$@$5$$!#(B + +@item gnus-kill-file-mode-hook +@vindex gnus-kill-file-mode-hook +$B>C5n%U%!%$%k%b!<%I%P%C%U%!Fb$G8F$S=P$5$l$k%U%C%/!#(B +@end table + +@node Converting Kill Files +@section $B>C5n%U%!%$%k$NJQ49(B +@cindex kill files +@cindex converting kill files + +$B$"$J$?$,8E$$>C5n%U%!%$%k$r$I$C$5$j;}$C$F$$$k$N$G$"$l$P!"$=$l$i$r%9%3%"%U%!(B +$B%$%k$KJQ49$7$?$/$J$k$G$7$g$&!#$b$7$=$l$i$,(B ``$BIaDL$N(B'' $B$d$D$G$"$l$P!"(B +@file{gnus-kill-to-score.el} $B%Q%C%1!<%8$r;H$&$3$H$,$G$-$^$9!#$=$&$G$J$1(B +$B$l$P!"C5n%U%!%$%k$+$i%9%3%"%U%!%$%k$X$NJQ49%Q%C%1!<%8$O!"I8=`$G$O(B Gnus $B$K$O4^(B +$B$^$l$^$;$s!#(B +@uref{http://www.stud.ifi.uio.no/~larsi/ding-various/gnus-kill-to-score.el} $B$+(B +$B$iF~C5n%U%!%$%k$,Hs>o$KJ#;($J$b$N$G$"$l$P(B --- $B$=$l(B +$B$K(B @code{gnus-kill} $B7A<00J30$N$b$N$,$?$/$5$s4^$^$l$F$$$l$P!"$=$l$i$re5i%9%3%"IU$1(B + +$BI=Bj$d(B From $B%X%C%@!<$K%9%3%"$rIU$1$k$N$O==J,AGE($G$9$,!"$"$k?MFCDj$NBj$K(B +$B4X$7$F8@$C$F$$$k;v$K$@$1K\Ev$K6=L#$,$"$k>l9g$O$I$&$9$l$PNI$$$N$G$7$g(B +$B$&(B? $B$b$7$/$O!"(BA $B$5$s$,(B B $B$5$s$K%U%)%m!<%"%C%W$7$F$$$k$H$-$K8@$C$F$$$k;v(B +$B$rFI$_$?$/$J$$$1$l$I!"(BC$B$5$s$K%U%)%m!<%"%C%W$7$F$$$k$H$-$O2?$r8@$C$F$$$k(B +$B$+$rCN$j$?$$$H$$$&>l9g$O(B? + +$B>e5i%9%3%"K!B'$r;H$&;v$G!"G$0U$NJ#;($J%9%3%"$NIU$1J}$r:n@.$9$k;v$,$G$-$^(B +$B$9!#(B + +@menu +* Advanced Scoring Syntax:: $BDj5A(B +* Advanced Scoring Examples:: $B$I$N$h$&$K8+$($k$+(B +* Advanced Scoring Tips:: $B$=$l$r:GBg8BMxMQ$9$k(B +@end menu + +@node Advanced Scoring Syntax +@subsection $B>e5i%9%3%"IU$19=J8(B + +$BIaDL$N%9%3%"K!B'$OK!B'$N:G=i$NMWAG$KJ8;zNs$,$"$j$^$9!#>e5i%9%3%"IU$1K!B'(B +$B$O:G=i$NMWAG$K%j%9%H$,$"$j$^$9!#FsHVL\$N%j%9%H$O:G=i$NMWAG(B +$B$,(B @code{nil} $B$G$J$$CM$KI>2A$5$l$?$H$-$KE,MQ$5$l$^$9!#(B + +$B$3$l$i$N%j%9%H$O;0$D$NO@M}:nMQ;R$+$i$J$C$F$*$j!"$=$l$i$O0lJ}8~:nMQ;R$G!"(B +$B?'!9$J9gCW:nMQ;R$G$9!#(B + +$BO@M}:nMQ;R(B: + +@table @code +@item & +@itemx and +$B$3$NO@M}:nMQ;R$O$=$l$>$l$N0z?t$r(B @code{false} $B$KI>2A$5$l$k$b$N$r8+$D$1$k(B +$B$^$GI>2A$7!"$=$l$+$iDd;_$7$^$9!#A4$F$N0z?t$,(B @code{true} $B$NCM$KI>2A$5$l(B +$B$?>l9g$O!"$3$N:nMQ;R$O(B @code{true} $B$rJV$7$^$9!#(B + +@item | +@itemx or +$B$3$NO@M}:nMQ;R$O$=$l$>$l$N0z?t$r(B @code{true} $B$KI>2A$5$l$k$b$N$r8+$D$1$k(B +$B$^$GI>2A$7$^$9!#$b$7$I$N0z?t$b(B @code{true} $B$G$J$$$H!"$3$N:nMQ;R(B +$B$O(B @code{false} $B$rJV$7$^$9!#(B + +@item ! +@itemx not +@itemx ,A,(B +$B$3$NO@M}:nMQ;R$OC10l$N0z?t$N$_$r$H$j$^$9!#$=$l$O$=$N0z?t$NCM$NO@M}H]Dj$r(B +$BJV$7$^$9!#(B +@end table + +$B0z?t$r%9%3%"IU$1$5$l$F$$$k8=:_$N5-;v$NAD@h$KE,MQ$9$k(B @dfn{$B4V@\:nMQ;R(B} $B$,(B +$B$"$j$^$9!#Nc$($P!"(B@code{1-} $B$O8=:_$N5-;v$N?F$K$b%9%3%"K!B'$rE,MQ$7$^$9!#(B +@code{2-} $B$O8=:_$N5-;v$NADIcJl$K%9%3%"K!B'$rE,MQ$7$^$9!#Be$o$j$K!"(B +@code{^^} $B$r=q$/;v$b$G$-!"$3$N;~!"(B@code{^} ($B%-%c%i%C%H(B) (carat) $B$N?t$O$I(B +$B$N$/$i$$AD@h$N5-;v$^$G$5$+$N$\$k$+$r<($7$^$9!#(B + +$B:G8e$K!"9gCW:nMQ;R$,$"$j$^$9!#$3$l$i$,K\Ev$N;E;v$r$9$k$b$N$G$9!#9gCW:nMQ(B +$B;R$O%X%C%@!$NJ8;zNs$G!"$=$N8e$K9gCW$H9gCW$N7?$,B3$-$^$9!#E57?E*$J9gCW(B +$B:nMQ;R$O(B @samp{("form" "Lars Ingebrigtsen" s)} $B$N$h$&$J$b$N$G$9!#%X%C%@!<(B +$BL>$OC1=c$J%9%3%"IU$1$r$9$k$H$-$N$b$N$HF1$8$G!"9gCW$N7?$bF1$8$G$9!#(B + +@node Advanced Scoring Examples +@subsection $B>e5i%9%3%"IU$1$NNc(B + +$B0J2<$NNc$O%9%3%"%U%!%$%k$N5,B'$G$"$k$3$H$K$4Cm0U2<$5$$!#40`z$J%9%3%"%U%!(B +$B%$%k$r:n$k$K$O!"JL$N3g8L$NAH$G$=$l$i$r0O$s$G2<$5$$!#(B + +Lars $B$,(B Gnus $B$K4X$7$FOC$r$7$F$$$k$H$-$KH`$K$h$C$F=q$+$l$?5-;v$N%9%3%"$r(B +$BA}$d$7$?$$$H$7$^$7$g$&(B: + +@example +@group +((& + ("from" "Lars Ingebrigtsen") + ("subject" "Gnus")) + 1000) +@end group +@end example + +$B$M!"$H$F$bC1=c$G$7$g(B? + +$BD9$$5-;v$r=q$$$F$$$k$H$-$O!";~!92?$+AGE($J;v$r8@$$$^$9(B: + +@example +((& + ("from" "Lars Ingebrigtsen") + (| + ("subject" "Gnus") + ("lines" 100 >))) + 1000) +@end example + +$B$7$+$7!"H`$,(B Reig Eigil Logge $B$K$h$C$F=q$+$l$?$b$N$KH?1~$7$F$$$k$H$-$O!"(B +$BH`$,=q$$$?$b$N$rFI$_$?$/$"$j$^$;$s(B: + +@example +((& + ("from" "Lars Ingebrigtsen") + (1- ("from" "Reig Eigir Logge"))) + -100000) +@end example + +Redmondo $B$,>C$($?7$2<$K$D$$$F=q$$$?$H$-$K%U%)%m!<%"%C%W$7$?A4$F$N?M$O%9(B +$B%3%"$,>e$2$i$l$^$9$,!"$=$l$OH`$i$,Gr$$7$2<$K$D$$$F8l$C$F$$$k$H$-$N$_$G$9!#(B +$B$7$+$7!"(BLars $B$,7$2<$K$D$$$FOC$r$7$F$$$k$H$-$O!"$?$$$F$$$"$^$j$*$b$7$m$/(B +$B$"$j$^$;$s(B: + +@example +((& + (1- + (& + ("from" "redmondo@@.*no" r) + ("body" "disappearing.*socks" t))) + (! ("from" "Lars Ingebrigtsen")) + ("body" "white.*socks")) + 1000) +@end example + +$B2DG=@-$OL58BBg$G$9!#(B + +@node Advanced Scoring Tips +@subsection $B>e5i%9%3%"$N$A$g$C$H$7$?Hk7m(B + +@code{&} $B$H(B @code{|} $BO@M}:nMQ;R$O!"C;=L2sO)O@M}$r9T$$$^$9!#$9$J$o$A!"$=(B +$B$N:nMQ$N7k2L$,L@$i$+$K$J$C$F;~E@$G!"0z?t$r2A$,(B @code{false} $B$K$J$k$H!";D$j$N0z?t$rI>2A(B +$B$9$kL\E*$OB8:_$7$J$/$J$j$^$9!#$3$l$OCY$$9g(B +$BCW(B (@samp{body} $B$d(B @samp{header}) $B$r:G8e$K;}$C$F$-$F!"B.$$9g(B +$BCW(B (@samp{from} $B$d(B @samp{subject}) $B$r:G=i$K;}$C$F$/$k$Y$-$G$"$k$H$$$&;v(B +$B$r0UL#$7$^$9!#(B + +$B4V@\:nMQ;R(B (@code{1-} $B$J$I(B) $B$O$=$l$i$N0z?t$r%9%l%C%I$N0l@$BeA0$K:nMQ$9$k(B +$B$h$&$K$7$^$9!#e$,$k798~$,$"$k;v$K5$IU$/$+$b$7$l$^$;$s!#FC$K!"E,1~(B +$B%9%3%"$r;H$C$F$$$k$H$-$O!#%9%3%"$,Bg$-$/$J$j$9$.$k$H!"$=$l$i$O0UL#$r<:$$(B +$B$^$9(B---$B$=$l$i$OC1$K:GBg$rDL$j1[$7$F$7$^$C$F!"$=$l$r0UL#$N$"$kJ}K!$G;H$&(B +$B;v$OFq$7$/$J$j$^$9!#(B + +@vindex gnus-decay-scores +@findex gnus-decay-score +@vindex gnus-decay-score-function +Gnus $B$O$3$NLdBj$N2r7h$r=u$1$k$?$a$K%9%3%"$rIe$i$;$k5!9=$rDs6!$7$^$9!#%9(B +$B%3%"%U%!%$%k$OFI$_9~$^$l!"(B@code{gnus-decay-scores} $B$,(B @code{nil} $B$G$J$$(B +$B$H!"(BGnus $B$O%9%3%"%U%!%$%k$rIeGT5!9=$rDL$7!"A4$F$N1JB3$G$J$$%9%3%"K!B'$N(B +$B%9%3%"$r2<$2$^$9!#$b$7(B @code{gnus-decay-scores} $B$,@55,I=8=$@$C$?$i!"$=$l(B +$B$K9gCW$9$k%9%3%"%U%!%$%k$@$1$,07$o$l$^$9!#Nc$($P(B @emph{adaptive} $B%9%3%"(B +$B%U%!%$%k$@$1$rIeGT$5$;$k$?$a$K!"$=$l$r(B @samp{\\.ADAPT\\'} $B$K@_Dj$9$k$3$H(B +$B$,$G$-$^$9!#IeGT<+?H$O4X?t(B @code{gnus-decay-score-function} $B$K$h$C$F (abs n) (lsh -1 -2))) + (string-to-number + (car (split-string (number-to-string n) "\\."))) + (floor n)))) +@end lisp + +@vindex gnus-score-decay-scale +@vindex gnus-score-decay-constant +@code{gnus-score-decay-constant} $B$O=i4|CM$H$7$F(B 3 $B$r;}$A$G!"(B +@code{gnus-score-decay-scale} $B$O=i4|CM$H$7$F(B 0.05 $B$r;}$A$^$9!#$3$l$O0J2<(B +$B$N$h$&$J;v$r0z$-5/$3$7$^$9(B: + +@enumerate +@item +-3 $B$+$i(B 3 $B$N4V$N%9%3%"$O$3$N4X?t$,8F$P$l$?$H$-$K(B 0 $B$K@_Dj$5$l$^$9!#(B + +@item +3 $B$+$i(B 60 $B$^$G$N4V$NBg$-$5$N%9%3%"$O;0$D8:$i$5$l$^$9!#(B + +@item +60 $B$h$jBg$-$$%9%3%"$O%9%3%"$N(B 5% $B$K8:$i$5$l$^$9!#(B +@end enumerate + +$B$b$7$3$NIeGT4X?t$r9%$-$G$J$$$J$i!"<+J,<+?H$N4X?t$r=q$$$F$/$@$5$$!#$=$l$O(B +$BIeGT$9$k$Y$-%9%3%"$rM#0l$N0z?t$H$7$F8F$P$l!"@0?t$G$"$k$Y$-?7$7$$%9%3%"$r(B +$BJV$5$J$1$l$P$J$j$^$;$s!#(B + +Gnus $B$O0lF|$K0l2s%9%3%"$rIeGT$5$;$h$&$H$7$^$9!#Nc$($P!"$b$7(B Gnus $B$r;MF|(B +$B4Ve$2$k$+(B +* Mode Lines:: $B%b!<%I9T$K>pJs$rI=<($9$k(B +* Highlighting and Menus:: $B%P%C%U%!$rAGE($G?4CO$h$/8+$;$k(B +* Buttons:: $B4JC1$J==Jb$G%"%-%l%9g'$rF@$k(B +* Daemons:: Gnus $B$O$"$J$?$NN"$GJ*;v$r$NB@$j$d$9$$?);v$rHr$1$kJ}K!(B +* Undo:: $B$$$/$D$+$NF0:n$O85$KLa$9;v$,$G$-$k(B +* Predicate Specifiers:: $B=R8l$r@_Dj$9$k(B +* Moderation:: $B$"$J$?$,%b%G%l!<%?!<$@$C$?$i$I$&$9$k$+(B +* Fetching a Group:: $B%0%k!<%W$rFI$`$?$a$@$1$K(B Gnus $B$r5/F0$9$k(B +* Image Enhancements:: $B:G?7$N(B Emacs/XEmacs $B$O3($rI=<($G$-$k(B +* Fuzzy Matching:: $BBg$-$JLJLS$C$F2?(B? +* Thwarting Email Spam:: $BM>7W$J>&6HE*EE;R%a!<%k$rHr$1$kJ}K!(B +* Other modes:: $BB>$N%b!<%I$H$NAj8_:nMQ(B +* Various Various:: $BK\Ev$K$$$m$$$m$J$b$N(B +@end menu + +@node Process/Prefix +@section $B%W%m%;%9(B/$B@\F,0z?t(B +@cindex process/prefix convention + +$BB?$/$N4X?t!"$=$NCf$G$b5-;v$N0\F0!"I|9f2=!"J]B8$r$9$k$?$a$N4X?t$O!"(B +@dfn{$B%W%m%;%9(B/$B@\F,0z?t$N=,47(B} $B$H$7$FCN$i$l$F$$$k$b$N$r;H$$$^$9!#(B + +$B$3$l$OMxMQl(B +$B9g$O!"%W%m%;%90u$NIU$$$F$$$k5-;v$K:n6H$,l9g$O!"8=:_$N5-;v$K$@$1:n(B +$B6H$ro$K4JC1$G$9$,!"6CC2$rHr$1$i$l$k$h$&$K>\:Y$rL@$i$+$K$7$F$*(B +$B$/I,MW$,$"$k$N$G$9!#(B + +$B%W%m%;%90u$KH?1~$9$k5-;v$O8=:_$N%W%m%;%90u$NIU$$$F$$$k5-;v$N%j%9%H$r%9%?%C(B +$B%/$K@Q$_!"A4$F$N%W%m%;%90u$N5-;v$N%j%9%H$r>C5n$7$^$9!#A02s$N@_Dj(B +$B$r(B @kbd{M P y} $B$GI|5l$5$;$k;v$,$G$-$^$9(B (@pxref{Setting Process Marks})$B!#(B + +@vindex gnus-summary-goto-unread +$BB?$/$N?M!9$r6C$+$;!"62$,$i$;$k$H;W$o$l$k$3$H$O!"Nc$($P!"(B@kbd{3 d} $B$OK\Ev(B +$B$K(B @kbd{d} @kbd{d} @kbd{d} $B$HF1$8;v$r$9$k;v$G$9!#$=$l$>$l$N(B @kbd{d} ($B$3(B +$B$l$O8=:_$N5-;v$K4{FI$N0u$rIU$1$^$9(B) $B$O=i4|@_Dj$G$O0u$rIU$1$?8e$Ko$K?5=E$J?M$G!"$3$l$OK\Ev$KNI$$;v$G$9!#2?$+4m81$J;v$r(B +$B$9$kA0$K!"(B``$BK\Ev$K$3$l$r$7$?$$$N$G$9$+(B?'' $B$H$$$&$h$&$Jo$KB?$/$N(B Emacs $B$NL?Na$O(B ($B?tCM(B) $B@\F,0z?t$KH?1~$7$^$9!#Nc$($P!"(B +@kbd{C-u 4 C-f} $B$O%]%$%s%H$r(B 4 $BJ8;z@h$K0\F0$7!"(B +@kbd{C-u 9 0 0 I s s p} $B$O1JB3(B @code{Suject} $BJ8;zNs$N0lIt%9%3%"K!B'(B +$B$N(B 900 $B$r8=:_$N5-;v$K2C$($^$9!#(B + +$B$3$l$OAGE($GNI$$$N$G$9$,!"L?Na$K$b$&>/$7DI2C$N>pJs$rM?$($?$$$H$-$O$I$&$9(B +$B$l$PNI$$$N$G$7$g$&(B? $B$(!<$H!"$?$$$F$$$NL?Na$,$7$F$$$k;v$O!"(B``$B@8$N(B'' $B@\F,(B +$B0z?t$rFCJL$JJ}K!$G2r$`$@$1B?$/$N(B @kbd{M-i} $B@\F,8l$r@Q$_=E$M$k;v$,$G$-$^$9!#(B +@kbd{M-i a C-M-u} $B$O(B ``$BL?Na(B @kbd{C-M-u} $B$K%7%s%\%k@\F,0z?t(B @code{a} $B$rM?(B +$B$($k(B'' $B$H$$$&$3$H$G$9!#(B@kbd{M-i a M-i b C-M-u} $B$OL?Na(B @kbd{C-M-u} $B$K%7%s(B +$B%\%k@\F,0z?t(B @code{a} @code{b} $B$rM?$($k(B'' $B$H$$$&;v$G$9!#o$K$?$/$5$s$N$b$N$,$"$j$^$9!#9,1?$J;v$K!"$=$l(B +$B$i$O$9$Y$FF1$89=J8$r;H$$$^$9$N$G!"$"$^$j7y$JL\$K$O2q$o$J$$$G$7$g$&!#(B + +$B=qK!;EMM(B (format) $B;XDj$NNc$,$"$j$^$9(B ($B%0%k!<%W%P%C%U%!$h$j(B): +@samp{%M%S%5y: %(%g%)\n}$B!#$=$l$Oo$K=9$/!"$?$/$5$s$N%Q!<%;%s%H5-(B +$B9f$,$I$3$K$G$b$"$j$^$9!#(B + +@menu +* Formatting Basics:: $B=qK!;EMMJQ?t$O4pK\E*$K=qK!;XDjJ8;zNs$G$"$k(B +* Mode Line Formatting:: $B%b!<%I9T$N=qK!;EMMJQ?t$K4X$9$k$$$/$D$+$N5,B'(B +* Advanced Formatting:: $B?'!9$JJ}K!$G=PNO$r=$@5$9$k(B +* User-Defined Specs:: Gnus $B$K$"$J$?<+?H$N4X?t$r8F$P$;$k(B +* Formatting Fonts:: $B;EMM$rB?:L$GAGE($K8+$;$k(B +* Positioning Point:: $BA`:n$N8e$G%]%$%s%H$r0\F0$9$k(B +* Tabulation:: $B=PNO$N@0Ns(B +* Wide Characters:: $BI}$,9-$$J8;z$r07$&(B +@end menu + +$B8=:_$N$H$3$m!"(BGnus $B$O0J2<$N=qK!;EMMJQ?t$r;H$$$^$9(B: +@code{gnus-group-line-format}, @code{gnus-summary-line-format}, +@code{gnus-server-line-format}, @code{gnus-topic-line-format}, +@code{gnus-group-mode-line-format}, @code{gnus-summary-mode-line-format}, +@code{gnus-article-mode-line-format}, @code{gnus-server-mode-line-format}, +@code{gnus-summary-pick-line-format}$B!#(B + +$B$3$l$iA4$F$N=qK!;EMMJQ?t$OG$0U$N(B elisp $B<0$G$"$k;v$b$G$-$^$9!#$=$N>l9g$O!"(B +$B$=$l$i$OMW5a$5$l$k9T$KA^F~$9$k$?$a$K(B @code{$BI>2A(B} $B$5$l$^$9!#(B + +@kindex M-x gnus-update-format +@findex gnus-update-format +Gnus $B$O$"$J$?<+?H$N=qK!;EMM;XDj$r:n$k2A(B} $B$7!"Ev$N;XDj$r99?7(B +$B$7!"7k2L$N(B Lisp $B<0$r$l$NMWAG(B @samp{%} $B$OEv$N%P%C%U%!$,:n@.$5$l$k$H$-$K2?$i$+$NJ8;zNs$d(B +$BB>$N$b$N$GCV$-49$($i$l$^$9!#(B@samp{%5y} $B$O(B ``@samp{y} $B;XDj$rA^F~$7!"(B5 $BJ8(B +$B;z$N>l=j$rF@$k$?$a$K6uGr$rF~$l$J$5$$(B'' $B$H$$$&;v$G$9!#(B + +$BIaDL$N(B C $B$d(B Emacs Lisp $B$N=qK!;EMM(B (format) $BJ8;zNs$HF1$8$h$&$K!"(B +@samp{%} $B$H=qK!;EMM$N7?$NJ8;z$N4V$N?tCM=$>~;R$O>o$K>/$J$/$H$b$=$ND9$5$K(B +$B$J$k$h$&$K!"=PNO$K(B @dfn{$B5M$a(B} $B$l$i$l$^$9!#(B@samp{%5y} $B$O$=$NItJ,$r>o(B +$B$K(B ($B>/$J$/$H$b(B) 5 $BJ8;z$ND9$5$K$J$k$h$&$K!":8$K6uGr$r5M$a$^$9!#$b(B +$B$7(B @samp{%-5y} $B$H$9$l$P!"Be$o$j$K1&B&$K5M$a9~$_$^$9!#(B + +$BFC$KD9$$CM$+$i$=$NItJ,$rJ]8n$9$k$?$a$K!"D9$5$r@)8B$7$?$$$H$b;W$&$G$7$g$&!#(B +$B$=$N$?$a$K$O!"(B@samp{%4,6y} $B$H$9$k;v$,$G$-$F!"$3$l$O$=$NNN0h$O7h$7$F(B 6 $BJ8(B +$B;z$rD6$($kD9$5$K$O$J$i$:!"(B4 $BJ8;z$h$j>/$J$$D9$5$K$J$i$J$$$H$$$&;v$G$9!#(B + +Gnus $B$O(B @samp{%&user-date;} $B$N$h$&$J!"$$$/$D$+$N3HD%MM<0;X<($b%5%]!<%H$7(B +$B$^$9!#(B + +@node Mode Line Formatting +@subsection $B%b!<%I9T=qK!;EMM(B + +$B%b!<%I9T=qK!;EMMJQ?t(B ($B$9$J$o$A!"(B@code{gnus-summary-mode-line-format}) $B$O(B +$B0J2<$NFs$D$N0c$$0J30$O!"%P%C%U%!9T$K4p$E$/=qK!;EMMJQ?t(B +$B$H(B (@pxref{Formatting Basics}) $BF1$8$h$&$J5,B'$K=>$$$^$9(B: + +@enumerate + +@item +$B:G8e$K2~9T(B (@samp{\n}) $B$,$"$C$F$O$J$j$^$;$s!#(B + +@item +$BFCJL$J(B @samp{%%b} $B;XDj$r%P%C%U%!L>$rI=<($9$k$?$a$K;H$&$3$H$,$G$-$^$9!#$(!<(B +$B$H!"K\Ev$O$=$l$O;XDj$G$O$J$$$N$G$9(B---@samp{%%} $B$OC1$K=qK!;EMM$,5!3#E*$K(B +$B@Z$jNv$/$N$r@Z$jH4$1$F(B @samp{%} $B$r$=$N$^$^EO$9$?$a$NJ}K!$G!"(B +Emacs $B$,(B @samp{%b} $B$r$rI=<($7$J$5$$(B'' $B$H2re5i=qK!;EMM(B + +$B2?$i$+$NJ}K!$GNN0h$r8e$G=hM}$9$k$N$OIQHK$KLr$KN)$A$^$9!#ItJ,$r5M$a9~$`!"(B +$B@)8B$9$k!"@Z$j~;R(B} $B$r;H(B +$B$&;v$K$h$jC#@.$5$l$^$9!#$h$/$"$k%A%k%@;XDj$O$3$N$h$&$K8+$($k$+$b$7$l$^$;(B +$B$s(B @samp{%~(cut 3)~(ignore "0")y}$B!#(B + +$B$3$l$i$OM-8z$J=$>~;R$G$9(B: + +@table @code +@item pad +@itemx pad-left +$BMW5a$5$l$?D9$5$K$J$k$^$G!"NN0h$K6uGr$r:8B&$+$i5M$a9~$_$^$9!#(B + +@item pad-right +$BMW5a$5$l$?D9$5$K$J$k$^$G!"NN0h$K6uGr$r1&B&$+$i5M$a9~$_$^$9!#(B + +@item max +@itemx max-left +$B;XDj$5$l$?D9$5$K$J$k$h$&$K!"J8;z$r:8B&$+$i@Z$j.7?$N(B ISO0861 $BMM(B +$B<0$NF|IU$rJV$7$^$9(B---@samp{19960809T230410} $B$G$9!#$3$l$OH/2;$7$K$/$$$N$G!"(B +$B@$5*$rI=$9?t$H;~4V$r:o$.Mn$H$7$F!"(B6 $BJ8;z$NF|IU$r;D$7$?$$$H;W$$$^$9!#$=$l(B +$B$O(B @samp{%~(cut-left 2)~(max-right 6)~(pad 6)o} $B$H$J$k$G$7$g$&!#(B($B@Z$jMn(B +$B$H$7(B (cutting) $B$O(B $B:GBg8B(B (maxing) $B$h$j@h$K$J$5$l$^$9$N$G!"7e$GAGE($K8+$((B +$B$k$h$&$K$9$k$?$a$KF|IU$,(B 6 $BJ8;z$h$j>/$J$/L5$/$J$i$J$$;v$rJ]>Z$9$k$?$a$K(B +$B5M$a9~$_(B (padding) $B$,I,MW$K$J$j$^$9!#(B) + +$BL5;k(B (ignore) $B$,:G=i$K$J$5$l$^$9!#$=$l$+$i@Z$jMn$H$7(B (cut) $B$,9T$o$l$^$9!#(B +$B$=$7$F!"$=$l$+$i:G8e$NA`:n!"5M$a9~$_(B (pad) $B$,9T$o$l$^$9!#(B + +$B$b$7$"$J$?$,!"$3$l$i$N>e5i;2>H$r$?$/$5$s;H$C$F$$$k$J$i!"(BGnus $B$,$H$F$bCY(B +$B$/$J$k$N$,$o$+$k$G$7$g$&!#$3$l$O$"$J$?$,9T$N308+$KK~B-$7$?$H$-(B +$B$K(B @kbd{M-x gnus-compile} $B$r$N;XDj$+$i$N>pJs$HA4$/F1$8(B +$B$h$&$K%P%C%U%!$KA^F~$5$l$^$9!#4X?t$O0UL#$NL5$$CM$H6&$K8F$P$l$k;v$b$"$j$((B +$B$^$9$N$G!"$=$l$NBP:v$r$9$k$Y$-$G$9!#(B + +Gnus $B$O(B @samp{%u&foo;} $B$N$h$&$J3HD%MxMQ~(B +$B;R(B (@pxref{Advanced Formatting}) $B$r;H$C$F$[$H$s$IF1$8;v$rC#@.$9$k;v$,$G(B +$B$-$^$9!#Nc$G$9(B: @samp{%~(form (count-lines (point-min) (point)))@@}$B!#(B +$B$3$3$GM?$($i$l$?<0$OI>2A$5$l$F!"8=:_$N9T?t$r$b$?$i$7!"$=$l$+$iA^F~$5$l$^(B +$B$9!#(B + +@node Formatting Fonts +@subsection $B=qK!;EMM%U%)%s%H(B + +$B%O%$%i%$%H$N$?$a$N;XDj$,$"$j!"$=$l$i$OA4$F$N=qK!;EMMJQ?t$K$h$C$F6&M-$5$l(B +$B$F$$$^$9!#(B@samp{%(} $B$H(B @samp{%)} $B;XDj$N4V$NJ8>O$OFCJL(B +$B$J(B @code{mouse-face} $B%W%m%Q%F%#$,@_Dj$5$l!"$=$l$O$=$3$K%^%&%9$N%]%$%s%?!<(B +$B$r$"$o$;$?$H$-$K(B (@code{gnus-mouse-face} $B$K$h$C$F(B) $B%O%$%i%$%H$5$l$k$3$H(B +$B$K$J$j$^$9!#(B + +@samp{%@{} $B$H(B @samp{%@}} $B;XDj$N4V$NJ8>O$O(B @code{gnus-face-0} $B$r;H$C$FIa(B +$BDL$N%U%'%$%9$,@_Dj$5$l!"$=$l$O=i4|@_Dj$G(B @code{bold} $B$G$9!#$b(B +$B$7(B @samp{%@{1} $B$H$7$?$J$i!"Be$o$j$K(B @code{gnus-face-1} $B$rF@!"0J2>} $B;X<(;R$N4V$N%F%-%9%H$OFCJL(B +$B$J(B @code{balloon-help} $B%W%m%Q%F%#$,(B @code{gnus-balloon-face-0} $B$K@_Dj$5(B +$B$l$^$9!#(B@samp{%1<<} $B$H$9$k$H!"(B@code{gnus-balloon-face-1} $B$rF@$F!"B>$bF1(B +$BMM$G$9!#(B@code{gnus-balloon-face-*} $BJQ?t$OJ8;zNs$+J8;zNs$rJV$94X?t$r;X$9(B +$B%7%s%\%k$N$I$A$i$+$G$"$kI,MW$,$"$j$^$9!#%^%&%9$,%W%m%Q%F%#$N@_Dj$5$l$F$$(B +$B$k%F%-%9%H$N>e$rDL2a$9$k$H!"%P%k!<%s%&%#%s%I%&$,8=$l$F!"J8;zNs$rI=<($7$^(B +$B$9!#$3$l$N>\$7$$>pJs$O(B @pxref{Tooltips, ,Tooltips, emacs, The Emacs +Manual} (GNU Emacs) $B$^$?$O(B @code{balloon-help-mode} (XEmacs) $B$N@bL@J8;z(B +$BNs$r;2>H$7$F$/$@$5$$!#(B($B5;=QE*$JM}M3$N$?$a$K!"%.%#%a(B (guillemets: +@footnote{guillemets ($BJ)8l(B) $B$O%.%e%a$H$bI=5-$5$l$^$9!#F|K\8l$N!V!W$KEv$?(B +$B$k$b$N$G!"8}F,I=8=$rI=5-$7$?$j!"6/D4$7$?$$C18l$r0O$`!"2?$+$+$i$N0zMQItJ,(B +$B$r0O$`!"=qJ*Ey$N%?%$%H%k$r5-$9EyMM!9$K;H$o$l$^$9!#(B}) $B$O$3$N@a$G(B +$B$O(B @samp{<<} $B$*$h$S(B @samp{>>} $B$H$7$F6a;w$5$l$^$7$?!#(B) + +$B$3$l$O%0%k!<%W%P%C%U%!$NBeBXeEy$N=qK!;EMM$r@_Dj$9$k!#(B} +(setq gnus-group-line-format + "%M%S%3@{%5y%@}%2[:%] %(%1@{%g%@}%)\n") +@end lisp + +$B$"$J$?$,$3$N0F$r;H$C$F40A4$KFI$a$J$/$FHs>o$K2o$[$H$s$I$N%P%C%U%!$G!"%]%$%s%H$r3F9T$N$"$i$+$8$a7h$a$i$l$?>l(B +$B=j$K0\F0$7$^$9!#%G%#%U%)%k%H$G$O!"%]%$%s%H$O9T$N:G=i$N%3%m%s$K0\F0$7$^$9!#(B +$B$"$J$?$O$3$N?6$k$^$$$r!";0$D$N0c$&J}K!$G%+%9%?%^%$%:$9$k$3$H$,$G$-$^$9!#(B + +$B$^$?!"$"$J$?$O%3%m%s$r9T$N$I$N>l=j$K$G$b0\F0$9$k$3$H$,$G$-$^$9!#(B + +@findex gnus-goto-colon +$B$"$J$?$O%3%m%s$N0LCV$K%]%$%s%H$r0\F0$5$;$k$?$a$N4X?t$rDj5A$7D>$9$3$H$,$G(B +$B$-$^$9!#$=$N4X?t$O(B @code{gnus-goto-colon} $B$H8F$P$l$F$$$^$9!#(B + +$B$G$b!"$b$7$"$J$?$,9T$K%3%m%s$r4^$a$?$/$J$$$J$i$P!"$3$l$r07$&$?$a$N$*$=$i(B +$B$/:G$bo$O!"1d$P$7$?$j=L$a$?$j$7$FJ8;zNs$r%G%#%9%W%l%$$KJB$Y$k$3$H$,(B +$B$G$-$^$9!#$G$bBg$-$5$,0c$&0[$J$kJ8;zNs$rO"7k$5$;$k>l9g$O!"C1$KJ8;zNs$r=P(B +$BNO$7$F$7$^$&$N$,$h$jl9g$O2?$bA^F~$7$^$;$s!#$3$l$O2:$d(B +$B$+(B (soft) $B$J@0Ns;R$G$9!#(B + +@samp{%-50=} $B$b$^$?!"J8;zNs$,(B 50$B7e$+$i;O$^$k$h$&$K6uGrJ8;z$r5M$a9~$_$^$9!#(B +$B$G$9$,!"$b$7(B 50$B7e$h$j8e$m$K$9$G$K%F%-%9%H$,$"$k>l9g!"(B50$B7e$h$j8e$m$K$"$k(B +$B2a>j$J%F%-%9%H$O:o=|$5$l$^$9!#$3$l$O87L)(B (hard) $B$J@0Ns;R$G$9!#(B + +@node Wide Characters +@subsection Wide Characters + +$BB?$/$NCO0h$K$*$$$F!"8GDjI}%U%)%s%H$OF1$8I}$NJ8;z$r;}$C$F$$$^$9!#$7$+$7$$(B +$B$/$D$+$NCO0h!"$h$/CN$i$l$F$$$kEl%"%8%"$N9q!9$G$O!"%i%F%sJ8;z$HI}$N9-$$J8(B +$B;z$,:.:_$7$F;H$o$l$F$$$^$9!#(B + +$B@07A$K$*$$$F!"(BGnus $B$OJ8;zNs$,(B 10$B8D$NJ8;z$NI}$@$H$7$?$i!"%9%/%j!<%s$G(B +$B$b(B 10$B8DJ,$N%i%F%sJ8;z$NI}$K$J$k$H2>Dj$7$^$9$,!"$=$l$OLdBj$G$9!#$+$N9q!9(B +$B$G$O!"$=$l$O@5$7$/$"$j$^$;$s!#(B + +@vindex gnus-use-correct-string-widths +$B$=$l$r5_:Q$9$k$?$a$K!"$"$J$?(B +$B$O(B @code{gnus-use-correct-string-widths} $B$r(B @code{t} $B$K@_Dj$9$k$3$H$,$G(B +$B$-$^$9!#$3$l$O%P%C%U%!$N@8@.$rCY$/$7$^$9$,!"$h$jH~$7$$7k2L$rF@$k$3$H$,$G(B +$B$-$k$G$7$g$&!#4{DjCM$O(B @code{t} $B$G$9!#(B + +@node Window Layout +@section $B%&%#%s%I%&$NG[CV(B +@cindex window layout + +$B$$$(!"(BX $B$K4X$9$k;v$O$"$j$^$;$s$N$G!"$*$H$J$7$/$7$F2<$5$$!#(B + +@vindex gnus-use-full-window +$B$b$7(B @code{gnus-use-full-window} $B$,(B @code{nil} $B$G$J$$$H!"(BGnus $B$OA4$F$NB>(B +$B$N%&%#%s%I%&$r>C$7$F!"(BEmacs $B$N2hLLA4BN$r@jM-$7$^$9!#$3$l$O=i4|@_Dj(B +$B$G(B @code{t} $B$G$9!#(B + +$B$3$NJQ?t$r(B @code{nil} $B$K@_Dj$9$k$N$O$=$l$J$j$KF0:n$7$^$9$,!"LdBj$b$"$j$^(B +$B$9!#4m81$r3P8g$N>e$G;H$C$F$/$@$5$$!#(B + +@vindex gnus-buffer-configuration +@code{gnus-buffer-configuration} $B$O$=$l$>$l$N(B Gnus $B$N%P%C%U%!$,$I$N$/$i(B +$B$$$N6u4V$rM?$($i$l$k$Y$-$+$r8=$7$^$9!#$3$l$O$3$NJQ?t$NH4?h$G$9(B: + +@lisp +((group (vertical 1.0 (group 1.0 point) + (if gnus-carpal (group-carpal 4)))) + (article (vertical 1.0 (summary 0.25 point) + (article 1.0)))) +@end lisp + +$B$3$l$OO"A[%j%9%H$G$9!#(B@dfn{$B%-!<(B} $B$O2?$i$+$NF0:n$dB>$N$b$N$rG$L?$9$k%7%s(B +$B%\%k$G$9!#Nc$($P!"%0%k!<%W%P%C%U%!$rI=<($9$k$H$-$O!"%&%#%s%I%&@_Dj4X?t(B +$B$O(B @code{group} $B$r%-!<$H$7$F;H$$$^$9!#;HMQ2DG=$JL>A0$N40A4$J0lMw$O2<$K5s(B +$B$2$i$l$F$$$^$9!#(B + +@dfn{$BCM(B} ($B$9$J$o$A!"(B@dfn{$BJ,3d(B}) $B$O$=$l$>$l$N%P%C%U%!$,$I$l$/$i$$$r@j$a$k(B +$B$Y$-$+$r;XDj$7$^$9!#(B@code{article} $BJ,3d$rNc$Ke$N(B 25% $B$r@j$a(B +$B$k$Y$-$G!"$=$l$O5-;v%P%C%U%!(B (article buffer) $B$N>e$KG[CV$5$l$^$9!#$*5$$E(B +$B$-$NDL$j!"(B100% + 25% $B$OJN,2DG=$J;0$DL\$NMWAG!"(B@code{point} $B$r;}$D%P%C%U%!$KCV$+$l$^(B +$B$9!#(B@code{frame} $BJ,3d$G$O!"%?%0(B @code{frame-focus} $B$,9=@.MWAG$G$"$k(B ($B$9(B +$B$J$o$A!"(B@code{point} $B%?%0$,B8:_$9$k$+$I$&$+$K$h$C$F!"%j%9%H$N;0HVL\$+;M(B +$BHVL\$+$KB8:_$9$kMWAG(B) $BMUJ,3d$r;}$D:G8e$NI{J,3d$,>GE@$rF@$k;v$K$J$j$^$9!#(B + +$B.?tE@?t$NBe$o$j$K@0?t$G$"$C$?$J$i!"$=$l$O3d9g$G$O$J(B +$B$/!"$I$N$/$i$$B?$/$N9T$r%P%C%U%!$,@j$a$k$Y$-$+$r;XDj$9$k$?$a$K;H$o$l$^$9!#(B + +$B$b$7(B @dfn{$BJ,3d(B} $B$,(B @code{$BI>2A(B} $B$5$l$k$b$N$N$h$&$K8+$($k$H$-$O(B ($BL@3N$K$9(B +$B$k$H(B---$BJ,3d$N(B @code{car} $B$,4X?t$+86;O4X?t(B (subr) $B$G$"$k$H$-$O(B)$B!"$3$NJ,3d(B +$B$O(B @code{$BI>2A(B} $B$5$l$^$9!#7k2L$,(B @code{nil} $B$G$J$$$J$i!"$=$l$OJ,3d$H$7$F(B +$BMQ$$$i$l$^$9!#$3$l$O!"(B@code{gnus-carpal} $B$,(B @code{nil} $B$G$"$l$P;0$D$N%P%C(B +$B%U%!$,!"(B@code{gnus-carpal} $B$,(B @code{nil} $B$G$J$$$J$i!";M$D$N%P%C%U%!$,B8(B +$B:_$9$k$H$$$&;v$G$9!#(B + +$B$^$@J#;($G$O$J$$$G$9$C$F(B? $B$=$l$G$O!"Bg$-$5$K$3$l$r;n$7$F$_$F2<$5$$(B: + +@lisp +(article (horizontal 1.0 + (vertical 0.5 + (group 1.0) + (gnus-carpal 4)) + (vertical 1.0 + (summary 0.25 point) + (summary-carpal 4) + (article 1.0)))) +@end lisp + +$B$*$)$C$H!#Fs$D$N%P%C%U%!$KIT;W5D$J(B 100% $B%?%0$,IU$$$F$$$^$9!#$=$7$F!"$"(B +$B$N(B @code{horizontal} $B$C$F$$$&$b$N$O2?$G$7$g$&(B? + +$B$b$7J,3d$N0l$D$N:G=i$NMWAG$,(B @code{horizontal} $B$G$"$C$?$J$i!"(BGnus $B$O%&%#(B +$B%s%I%&$r?eJ?$KJ,3d$7!"Fs$D$N%&%#%s%I%&$r2#$KJB$Y$^$9!#$3$l$i$N$=$l$>$l$N(B +$B>.JR$NCf$G$O!"A4$F$rIaDL$NN.57$G9T$&;v$,$G$-$^$9!#(B@code{horizontal} $B$N8e(B +$B$N?t;z$O!"$3$N>.JR$K2hLL$N$I$l$/$i$$$N3d9g$,M?$($i$l$k$+$r;XDj$7$^$9!#(B + +$B$=$l$>$l$NJ,3d$G$O!"(B100% $B$N%?%0$r;}$DMWAG$,(B @emph{$BI,$:(B} $B0l$D$"$kI,MW$,$"(B +$B$j$^$9!#J,3d$O7h$7$F@53N$K$O9T$o$l$^$;$s$N$G!"$3$N%P%C%U%!$,J,3d$+$i;D$5(B +$B$l$?A4$F$N9T$r@jNN$7$^$9!#(B + +$B$b$&>/$7@5<0$K$9$k$?$a$K!"$3$3$KM-8z$JJ,3d$,$I$N$h$&$K$J$k$+$NDj5A$,$"$j(B +$B$^$9(B: + +@example +split = frame | horizontal | vertical | buffer | form +frame = "(frame " size *split ")" +horizontal = "(horizontal " size *split ")" +vertical = "(vertical " size *split ")" +buffer = "(" buf-name " " size *[ "point" ] *[ "frame-focus"] ")" +size = number | frame-params +buf-name = group | article | summary ... +@end example + +$B@)8B$K$O!"(B@code{frame} $B$O:G>e0L$NJ,3d$H$7$F$7$+8=$l$k;v$,$G$-$J$$$H$$$&(B +$B$b$N$,$"$j$^$9!#(B@var{form} $B$OM-8z$JJ,3d$rJV$9(B Emacs Lisp $B$N<0(B (form) $B$G(B +$B$J$1$l$P$J$j$^$;$s!#$=$l$>$l$NJ,3d$O40A4$K:F5"E*$G!"G$0U$N?t(B +$B$N(B @code{vertical} $B$H(B @code{horizontal} $BJ,3d$r4^$`;v$,$G$-$^$9!#(B + +@vindex gnus-window-min-width +@vindex gnus-window-min-height +@cindex window height +@cindex window width +$B@5$7$$Bg$-$5$r8+$D$1$k$N$O>/$7J#;($G$9!#$I$N%&%#%s%I%&(B +$B$b(B @code{gnus-window-min-height} ($B=i4|CM(B 1) $B$NJ8;z$N9b$5$h$j$b>.$5$/$F$O(B +$B$J$i$:!">/$J$/$H$b(B @code{gnus-window-min-width} ($B=i4|CM(B 1) $B$NJ8;zI}$G$J(B +$B$/$F$O$J$j$^$;$s!#(BGnus $B$OJ,3d$rE,MQ$9$kA0$K$3$l$r6/@)$7$h$&$H;n$_$^$9!#(B +$B$b$7IaDL$N(B Emacs $B$N%&%#%s%I%&$NI}(B/$B9b$5@)8B$r;H$$$?$$$J$i!"$3$NFs$D$NJQ?t(B +$B$r(B @code{nil} $B$K$9$k$@$1$GNI$$$G$9!#(B + +$B$b$7(B Emacs $B$NMQ8l$K$J$8$s$G$$$J$$$N$J$i!"(B +@code{horizontal} $B$H(B @code{vertical} $BJ,3d$O!"4|BT$9$k$b$N$HH?BP$NF0:n$r(B +$B$9$k$G$7$g$&!#(B@code{horizontal} $BJ,3d$NCf$N%&%#%s%I%&$O2#$KJB$s$GI=<($5$l!"(B +@code{vertical} $BJ,3d$NCf$N%&%#%s%I%&$O>e2<$KI=<($5$l$^$9!#(B + +@findex gnus-configure-frame +$B%&%#%s%I%&$N@_CV$K4X$7$F(B +$B@\(B @code{gnus-configure-frame} $B$r8F$V$3$H$G$9!#$3$l$O%P%C%U%!$rJ,3d$9$k(B +$B$H$-$KA4$F$NK\Ev$N;E;v$r$9$k4X?t$G$9!#2<$N$b$N$O(B 5 $B%&%#%s%I%&$N$H$F$b$P(B +$B$+$2$?@_Dj$G$9!#Fs$D$r%0%k!<%W%P%C%U%!$K!";0$D$r5-;v%P%C%U%!$N$?$a$K=<$F(B +$B$^$9!#(B($B$=$l$O$P$+$2$F$$$k$H8@$C$?$G$7$g!#(B) $B$b$72<$NJ8$r(B @code{$BI>2A(B} $B$9$k(B +$B$H!"IaDL$N(B Gnus $B$N7PO)$r;H$o$J$$$G!"$9$0$K$=$l$,$I$N$h$&$K8+$($k$+$N9M$((B +$B$rF@$k;v$,$G$-$^$9!#K~B-$9$k$^$G$=$l$GM7$s$G!"$=$l$+(B +$B$i(B @code{gnus-add-configuration} $B$r;H$C$F?7$7$$A[A|$r%P%C%U%!@_Dj%j%9%H(B +$B$K2C$($F2<$5$$!#(B + +@lisp +(gnus-configure-frame + '(horizontal 1.0 + (vertical 10 + (group 1.0) + (article 0.3 point)) + (vertical 1.0 + (article 1.0) + (horizontal 4 + (group 1.0) + (article 10))))) +@end lisp + +$B$$$/$D$+$N%U%l!<%`$bM_$7$$$+$b$7$l$^$;$s!#4JC1$G$9(B---@code{frame} $BJ,3d$r(B +$B;H$&$@$1$G$9(B: + +@lisp +(gnus-configure-frame + '(frame 1.0 + (vertical 1.0 + (summary 0.25 point frame-focus) + (article 1.0)) + (vertical ((height . 5) (width . 15) + (user-position . t) + (left . -1) (top . 1)) + (picon 1.0)))) + +@end lisp + +$B$3$NJ,3d$N7k2L$O!":G=i(B ($B$b$7$/$O!"(B``$B.$5$JDI2C$N%U%l!<%`$,(B picon $B$rI=<($9$k$?$a$K:n$i$l$k(B +$B$H$$$&;v$K$J$j$^$9!#$4Mw$NDL$j!"IaDL$N(B @code{1.0} $B:G>e0L;XDj$NBe$o$j$K!"(B +$B$=$l$>$l$NDI2C$NJ,3d$,%U%l!<%`%Q%i%a!<%?O"A[%j%9%H$rBg$-$5;XDj$H$7$F;}$?(B +$B$J$1$l$P$J$j$^$;$s(B (@pxref{Frame Parameters, , Frame Parameters, elisp, +The GNU Emacs Lisp Reference Manual})$B!#(BXEmacs $B$G$O!"%U%l!<%`%W%m%Q%F%#%j(B +$B%9%H$b;H$($^$9(B---$BNc$($P!"(B@code{(height 5 width 15 left -1 top 1)} $B$O$=$N(B +$B$h$&$J%Q%i%a!<%?%j%9%H$G$9!#(B +@code{gnus-buffer-configuration} $B$K;HMQ2DG=$JA4$F$N%-!<$N0lMw$O$=$N=i4|(B +$BCM$G8+$D$1$k$3$H$,$G$-$^$9!#(B + +$B%-!<(B @code{message} $B$O(B @code{gnus-group-mail} $B$*$h(B +$B$S(B @code{gnus-summary-mail-other-window} $B$NN>J}$G;H$o$l$k;v$KCm0U$7$F2<(B +$B$5$$!#$b$7Fs$D$r6hJL$9$k$[$&$,K>$^$7$$$J$i!"$3$N$h$&$JJ*$r;H$&;v$,$G$-$^(B +$B$9(B: + +@lisp +(message (horizontal 1.0 + (vertical 1.0 (message 1.0 point)) + (vertical 0.24 + (if (buffer-live-p gnus-summary-buffer) + '(summary 0.5)) + (group 1.0)))) +@end lisp + +$BJ#?t$N%U%l!<%`$X$NNI$/$"$kMWK>$O!"%a!<%k$H%K%e!<%9$N:n@.$K$OJL$N%U%l!<%`(B +$B$r;H$$!"85$N%U%l!<%`$O$=$N$^$^$K;D$9$H$$$&$b$N$G$9!#$3$l$NC#@.$K$O!"0J2<(B +$B$N$h$&$J$b$N$G$G$-$^$9!#(B + +@lisp +(message + (frame 1.0 + (if (not (buffer-live-p gnus-summary-buffer)) + (car (cdr (assoc 'group gnus-buffer-configuration))) + (car (cdr (assoc 'summary gnus-buffer-configuration)))) + (vertical ((user-position . t) (top . 1) (left . 1) + (name . "Message")) + (message 1.0 point)))) +@end lisp + +@findex gnus-add-configuration +$BJQ?t(B @code{gnus-buffer-configuration} $B$O$H$F$bD9$/J#;($J$N$G!"C10l$N@_Dj(B +$B$NJQ99$r4JC1$K$9$k$?$a$N4X?t$,$"$j$^$9(B: @code{gnus-add-configuration} $B$G(B +$B$9!#$b$7!"Nc$($P!"(B@code{article} $B$N@_Dj$rJQ$($?$$$N$J$i!"o$K(B ``$B@5$7$$(B'' $B%&%#%s%I%&@_Dj$r6/@)(B +$B$7$?$$$N$G$"$l$P!"(B +@code{gnus-always-force-window-configuration} $B$r(B @code{nil} $B$G$J$$CM$K@_(B +$BDj$9$k;v$,$G$-$^$9!#(B + +$BLZI=<($r;H$C$F$$$F(B (@pxref{Tree Display})$B!"LZ%&%#%s%I%&$O?bD>J}8~$KJL$N(B +$B%&%#%s%I%&$GI=<($5$l$k$J$i!"%&%#%s%I%&$NBg$-$5$,JQ99$5$l$k$3$H$rHr$1$k$?(B +$B$a$K(B @code{gnus-tree-minimize-window} $B$r$$$8$k$N$,NI$$$G$7$g$&!#(B + +@subsection $B%&%#%s%I%&@_Dj$NNc(B + +@itemize @bullet +@item +$B:8B&$r69$a$F%0%k!<%W%P%C%U%!$K!#1&B&$rJ,3d$7$F35N,%P%C%U%!(B ($B>e(B 1/6) $B$H(B +$B5-;v%P%C%U%!(B ($B2<(B) $B$K!#(B + +@ifinfo +@example ++---+---------+ +| G | Summary | +| r +---------+ +| o | | +| u | Article | +| p | | ++---+---------+ +@end example +@end ifinfo + +@lisp +(gnus-add-configuration + '(article + (horizontal 1.0 + (vertical 25 (group 1.0)) + (vertical 1.0 + (summary 0.16 point) + (article 1.0))))) + +(gnus-add-configuration + '(summary + (horizontal 1.0 + (vertical 25 (group 1.0)) + (vertical 1.0 (summary 1.0 point))))) +@end lisp +@end itemize + +@node Faces and Fonts +@section $B%U%'%$%9$H%U%)%s%H(B +@cindex faces +@cindex fonts +@cindex colors + +$B%U%)%s%H$H%U%'%$%9$rO.$k$N$OHs>o$KFq$7$+$C$?$N$G$9$,!":#F|$G$OHs>o$K4JC1(B +$B$G$9!#C1$K(B @kbd{M-x customize-face} $B$H$d$C$F!"JQ$($?$$%U%'%$%9$rA*$S=P$7(B +$B$F!"I8=`$N%+%9%?%^%$%:%$%s%?!<%U%'!<%9$r;H$C$FJQ99$9$k;v$,$G$-$^$9!#(B + +@node Compilation +@section $B%3%s%Q%$%k(B +@cindex compilation +@cindex byte-compilation + +@findex gnus-compile + +$B$"$N9T=qK!;EMM;XDjJQ?t$r3P$($F$$$^$9(B +$B$+(B? @code{gnus-summary-line-format}, @code{gnus-group-line-format} $B$J$I(B +$B$J$I$G$9!#$5$F!"(BGnus $B$O$3$l$i$NJQ?t$,2?$G$"$C$F$bCm0U$rJ'$$$^$9$,!"IT1?(B +$B$J;v$K$=$l$i$rJQ99$9$k$HBgJQ=EBg$JB.EYDc2<$r0z$-5/$3$9;v$K$J$j$^$9!#(B($B$3(B +$B$l$i$NJQ?t$N=i4|CM$O$=$l$i$K4XO"IU$1$i$l$?%P%$%H%3%s%Q%$%k$5$l$?4X?t$r;}$C(B +$B$F$$$^$9$,!"MxMQo$K:G?7$N(B +$B$b$N$K$7$F$*$/$+$r;XDj$7$^$9!#$=$l$O%7%s%\%k$N%j%9%H$G$9!#;H$&;v$N$G$-$k(B +$B%7%s%\%k$O(B @code{group}, @code{article}, @code{summary}, @code{server}, +@code{browse}, @code{tree} $B$J$I$G$9!#$b$7BP1~$9$k%7%s%\%k$,B8:_$9$k$H!"(B +Gnus $B$O3:Ev$9$k$G$"$m$&>pJs$G%b!<%I9T$r99?7$7$^$9!#$3$NJQ?t(B +$B$,(B @code{nil} $B$G$"$k$J$i!"2hLL$N:FIA2h$O$b$C$HB.$$$G$7$g$&!#(B + +@cindex display-time + +@vindex gnus-mode-non-string-length +$B=i4|@_Dj$G$O!"(BGnus $B$O35N,%P%C%U%!$H5-;v%P%C%U%!$N%b!<%I9T$K8=:_$N5-;v$N(B +$B>pJs$rI=<($7$^$9!#(BGnus $B$,I=<($7$?$$>pJs(B ($BNc$($P!"5-;v$NI=Bj(B) $B$O$7$P$7$P(B +$B%b!<%I9T$h$j$bD9$$$3$H$,$"$k$N$G!"$I$3$+$G@Z$jMn$H$5$l$J$1$l$P$J$j$^$;$s!#(B +$BJQ?t(B @code{gnus-mode-non-string-length} $B$O$=$N9T$NB>$NMWAG(B ($B$9$J$o$A!">p(B +$BJs$G$J$$ItJ,(B) $B$,$I$N$/$i$$$ND9$5$G$"$k$+$r;XDj$7$^$9!#$b$7%b!<%I9T$KDI2C(B +$B$NMWAG$rF~$l$?$J$i!"$3$NJQ?t$r=$@5$9$kI,MW$,$"$j$^$9(B: + +@c Hook written by Francesco Potorti` +@lisp +(add-hook 'display-time-hook + (lambda () (setq gnus-mode-non-string-length + (+ 21 + (if line-number-mode 5 0) + (if column-number-mode 4 0) + (length display-time-string))))) +@end lisp + +$B$b$7$3$NJQ?t$,(B @code{nil} $B$G$"$k$J$i(B ($B$3$l$,=i4|CM$G$9$,(B)$B!"%b!<%I9T$O@Z(B +$B$jMn$H$5$l$:!"5M$a9~$_$b$5$l$^$;$s!#=i4|@_Dj$O!"%P%C%U%!$N40A4$J%Q!<%;%s(B +$B%HI=<($5$($b%b!<%I9T$+$iDI$$$d$i$l$k2DG=@-$b$"$j$^$9$N$G!"$*$=$i$/K>$^$7(B +$B$$@_Dj$G$O$J$$$H$$$&;v$KCm0U$7$F2<$5$$!#MxMQl9g$O!"$3$N$h$&$K$9$k;v$,$G$-$^$9(B: + +@lisp +(setq gnus-visual '(article-highlight menu)) +@end lisp + +$B$b$7%O%$%i%$%H$@$1$G!"%a%K%e!<$NN`$OM_$7$/$J$$$H$-$O!"$NA4$F$N%P%C%U%!$N308+$K1F6A$9$kAm9gE*$JJQ?t$O(B: + +@table @code +@item gnus-mouse-face +@vindex gnus-mouse-face +$B$3$l$O(B Gnus $B$G%^%&%9$N%O%$%i%$%H$K;H$o$l$k%U%'%$%9(B ($B$9$J$o$A!"%U%)%s(B +$B%H(B) $B$G$9!#(B@code{gnus-visual} $B$,(B @code{nil} $B$G$"$k$H!"%^%&%9%O%$%i%$%H$O(B +$B$J$5$l$^$;$s!#(B +@end table + +$BA4$/0c$C$?%a%K%e!<$r:n@.$9$k$?$a$K4XO"$9$k%U%C%/$,$"$j$^$9(B: + +@table @code +@item gnus-article-menu-hook +@vindex gnus-article-menu-hook +$B5-;v%b!<%I(B (article mode) $B%a%K%e!<$r:n@.$7$?8e$K8F$P$l$k%U%C%/$G$9!#(B + +@item gnus-group-menu-hook +@vindex gnus-group-menu-hook +$B%0%k!<%W%b!<%I(B (group mode) $B%a%K%e!<$r:n@.$7$?8e$K8F$P$l$k%U%C%/$G$9!#(B + +@item gnus-summary-menu-hook +@vindex gnus-summary-menu-hook +$B35N,%b!<%I(B (summary mode) $B%a%K%e!<$r:n@.$7$?8e$K8F$P$l$k%U%C%/$G$9!#(B + +@item gnus-server-menu-hook +@vindex gnus-server-menu-hook +$B%5!<%P!<%b!<%I(B (server mode) $B%a%K%e!<$r:n@.$7$?8e$K8F$P$l$k%U%C%/$G$9!#(B + +@item gnus-browse-menu-hook +@vindex gnus-browse-menu-hook +$B354Q%b!<%I(B (browse mode) $B%a%K%e!<$r:n@.$7$?8e$K8F$P$l$k%U%C%/$G$9!#(B + +@item gnus-score-menu-hook +@vindex gnus-score-menu-hook +$B%9%3%"%b!<%I(B (score mode) $B%a%K%e!<$r:n@.$7$?8e$K8F$P$l$k%U%C%/$G$9!#(B +@end table + +@node Buttons +@section $B%\%?%s(B +@cindex buttons +@cindex mouse +@cindex click + +$B:G6a$G$O!":G?7N.9T$N%^%&%9(B @dfn{mouse} $BAuCV$,!"$A$c$s$H$7$?A`:nK!$r3X$S(B +$B$?$,$i$J$$%J%&$J%d%s%0$N4V$GBg?M5$$G$9!#$=$l$G$O!";d$,(B Tops 20 $B%7%9%F%`(B +$B>e$G(B Emacs $B$r;H$C$F$$$?:"$N(B '89 $BG/$N2F$r;W$$5/$3$7$F$_$^$7$g$&!#(B300 $B?M$N(B +$BMxMQe$G!"$_$s$J$,(B Simula $B%3%s%Q%$%i$rAv$i$;$F$$$^$7$?!#(B +$B$"$"!"$P$+$P$+$7$$(B! + +$B$[$s$H$K$=$&$@$M!#(B + +@vindex gnus-carpal +$B$^$:$G$9$M!"(B@code{gnus-carpal} $B$r(B @code{t} $B$K@_Dj$9$k$3$H$K$h$C$F!"%/%j%C(B +$B%/$9$k$@$1$G2?$G$b$G$-$k%\%?%s$@$i$1$N%P%C%U%!$r(B Gnus $B$KI=<($5$;$k$3$H$,(B +$B$G$-$^$9!#$H$C$F$b4JC1$G$9!"$[$s$H$K!#;X05NEK!$N@h@8$K65$($F$"$2$F!#(B($BLu(B +$BCm(B: carpal $B$H$O$K$b2?$+$=$&$$$C(B +$B$?$3$H$G$9!#(B + +Gnus $B$O$5$^$6$^$J@)8f;R(B @dfn{handlers} $B$rDj5A$9$k$3$H$K$h$C$F$=$N$h$&$J(B +$B$3$H$r2DG=$K$7$^$9!#3F@)8f;R$O;0$D$NMWAG$+$i@.$j$^$9!#(B +@var{$B4X?t(B}, @var{$B;~4V(B}, @var{$B6uE>(B} $B%Q%i%a!<%?$G$9!#(B + +$B0J2<$O(B Emacs $B$,2?$b$7$J$$6uE>>uBV$,;0==J,B3$$$?$H$-$K@\B3$r@ZCG$9$k@)8f(B +$B;R$NNc$G$9!#(B + +@lisp +(gnus-demon-close-connections nil 30) +@end lisp + +$B0J2<$O(B Emacs $B$,2?$b$7$F$$$J$$$H$-!"0l;~4VKh$K(B @acronym{PGP} $B%X%C%@!<$rAv(B +$B::$9$k@)8f;R$G$9!#(B + +@lisp +(gnus-demon-scan-pgp 60 t) +@end lisp + +$B$3$N(B @var{$B;~4V(B} $B%Q%i%a!<%?$H$=$7$F(B @var{$B6uE>(B} $B%Q%i%a!<%?$O!"4qL/$G$+$DAG(B +$B@2$i$7$$J}K!$G0l=o$KF0:n$7$^$9!#4pK\E*$K$O!"(B@var{$B6uE>(B} $B$,(B @code{nil} $B$N(B +$B;~$K$O$3$N4X?t$O(B @var{$B;~4V(B} $BJ,Kh$K8F$S=P$5$l$^$9!#(B + +$B$b$7(B @var{$B6uE>(B} $B$,(B @code{t} $B$G$"$l$P!"$3$N4X?t$O(B Emacs $B$,2?$b$7$F$$$J$$(B +$B;~$K8B$j!"(B@var{$B;~4V(B} $BJ,8e$K8F$S=P$5$l$^$9!#0lC6(B Emacs $B$,$:$C$H6uE>>uBV$K(B +$B$J$C$?8e$O!"$3$N4X?t$O(B @var{$B;~4V(B} $BJ,Kh$K8F$S=P$5$l$^$9!#(B + +@var{$B6uE>(B} $B$,?t$G(B @var{$B;~4V(B} $B$b?t$G$"$k>l9g!"$3$N4X?t$O!"(BEmacs $B$N6uE>>u(B +$BBV$,(B @var{$B6uE>(B} $BJ,B3$$$?;~$K8B$j!"(B@var{$B;~4V(B} $BJ,Kh$K8F$S=P$5$l$^$9!#(B + +@var{$B6uE>(B} $B$,?t$G(B @var{$B;~4V(B} $B$,(B @code{nil} $B$N>l9g!"$3$N4X?t$O!"(BEmacs $B$N(B +$B6uE>>uBV$,(B @var{$B6uE>(B} $BJ,B3$/EY$K0lEY8F$S=P$5$l$^$9!#(B + +$B$=$7$F(B @var{$B;~4V(B} $B$,J8;zNs$N>l9g$O!"(B@samp{07:31} $B$N$h$&$J7A<0$G$J$1$l$P(B +$B$J$i$:!"$3$N4X?t$OKhF|$=$N:"$N;~4V$K$J$k$H0lEY8F$S=P$5$l$^$9!#$b$A$m$s!"(B +@var{$B6uE>(B} $B%Q%i%a!<%?$GF0:n$,JQ$o$j$^$9!#(B + +@vindex gnus-demon-timestep +($B$3$3$G(B ``$BJ,(B'' $B$H8@$C$?$H$-!"$=$l$O@\DI2C$7$?>l9g$K$O!"$=$l$r8z(B +$B$+$;$k$?$a$K(B @code{gnus-demon-init} $B$rC$9$K$O!"(B@code{gnus-demon-cancel} $B4X?t$r;H$&$3$H$,$G$-$^$9!#(B + +$B%G!<%b%s$NDI2C$O!"$d$j$9$.$k$N$O$H$C$F$b$*9T57$N$h$/$J$$$3$H$G$9!#A4$F$N(B +$B%5!<%P!<$+$iA4$F$N%K%e!<%9$H%a!<%k$rFsICKh$KD4$Y$^$o$94X?t$rIU$12C$($A$c$C(B +$B$?$j$9$k$H!"$I$s$JN)GI$J%7%9%F%`$G$b4V0c$$$J$/$*J'$$H"$K$7$F$7$^$$$^$9!#(B +$B$=$&F0$/$s$@$b$s!#(B + +@node NoCeM +@section NoCeM +@cindex nocem +@cindex spam + +@dfn{Spam} $B$H$O!"F1$85-;v$r2?2s$b2?2s$b2?2s$bEj9F$9$k$3$H$G$9!#(BSpam $B$O0-(B +$B$$$3$H$G$9!#(BSpam $B$O6'0-$G$9!#(B + +Spam $B$ODL>o0lF|$+$=$3$i$G!"$5$^$6$^$JH?(B spam $B5!4X$+$iC$7$5$l$^$9!#(B +$B$3$l$i$N5!4X$ODL>o0l=o$K!"(B@dfn{NoCeM} $B%a%C%;!<%8$bAw?.$7$^$9!#(B +@dfn{NoCeM} $B$O(B ``no see-'em'' ($BH`$i$r8+$?$/$J$$(B)$B$HH/2;$5$l!"0UL#$O$=$NL>(B +$BA0$NDL$j$G$9(B --- $B$3$N%a%C%;!<%8$O!":a$rHH$7$F$$$k5-;v$r!"$D$^$j!">C$7$F(B +$B$7$^$$$^$9!#(B + +$B$I$&$;$=$N5-;v$,C$7$5$l$F$7$^$&$N$J$i!"$3$l$i(B NoCeM $B%a%C%;!<%8$O2?(B +$B$K;H$o$l$k$N$G$7$g$&(B? $B$"$k%5%$%H$G$OC$7%a%C%;!<%8$r0z$-C$7%a%C%;!<%8$N$_$7$+0z$-C$75n$j$^$9!#(B + +$B$b$A$m$s!"$3$l$i$r%+%9%?%^%$%:$9$k$?$a$NJQ?t$,$$$/$D$+$"$j$^$9!#(B + +@table @code +@item gnus-use-nocem +@vindex gnus-use-nocem +$B$3$NJQ?t$r(B @code{t} $B$K@_Dj$9$k$3$H$G3hF0$r3+;O$5$;$^$9!#=i4|@_Dj$G(B +$B$O(B @code{nil} $B$G$9!#(B + +@item gnus-nocem-groups +@vindex gnus-nocem-groups +Gnus $B$O$3$N%0%k!<%W%j%9%H$+$i(B NoCeM $B%a%C%;!<%8$rC5$7$^$9!#=i4|@_DjCM(B +$B$O(B @code{("news.lists.filters" "news.admin.net-abuse.bulletins" +"alt.nocem.misc" "news.admin.net-abuse.announce")} $B$G$9!#(B + +@item gnus-nocem-issuers +@vindex gnus-nocem-issuers +NoCeM $B%a%C%;!<%8$rH/9T$9$k?M$O$?$/$5$s$$$^$9!#$3$N%j%9%H$G$O!"C/$N8@$&$3(B +$B$H$K=>$$$?$$$+$r;XDj$7$^$9!#=i4|@_DjCM$O(B @code{(("Automoose-1" +"clewis@@ferret.ocunix.on.ca" "cosmo.roadkill" "SpamHippo" +"hweede@@snafu.de")} $B$G$9!#H`$i$O$_$s$J!"N)GI$G9b7i$J;TL1$G$9!#(B + +$B$3$N%j%9%H$K4^$a$i$l$kM-L>$JH?(B spam $B2H$?$A(B +$B$O(B @uref{http://www.xs4all.nl/~rosalind/nocemreg/nocemreg.html} $B$K:\$C$F(B +$B$$$^$9!#(B + +$B$3$l$iA4$F$N?M!9$N(B NoCeM $B%a%C%;!<%8$KN10U$9$kI,MW$O$"$j$^$;$s(B --- $B8@$&$3(B +$B$H$rJ9$-$?$$?M$@$1$G$$$$$s$G$9!#$^$?$=$N?M$+$i$N(B NoCeM$B%a%C%;!<%8A4$F$r$l/$O(B +$B87L)$J!"DxEY$M!#$?$$$F$$$O>/$@$1$I(B)$B!#NI$/;H$o$l$kr(B +$B7o(B} @dots{})} $BMWAG$r;H$&I,MW$,$"$j$^$9!#3F>r7o$OJ8;zNs(B ($B;H$$$?$$l9g$O(B @var{$BJ8;zNs(B} $B$O;H$$$?$/$J$$l9g$K$O!"(B + +@lisp +("clewis@@ferret.ocunix.on.ca" ".*" (not "troll")) +@end lisp + +$B0lJ}!"H`$N(B @samp{spam} $B$H(B @samp{spew} $B%a%C%;!<%80J30$O2?$b$7$?$/$J$1$l$P!"(B +$B0J2<$N$h$&$K$G$-$^$9!#(B + +@lisp +("clewis@@ferret.ocunix.on.ca" (not ".*") "spew" "spam") +@end lisp + +$B$3$N;XDj$O:8$+$i1&$KE,MQ$5$l$^$9!#(B + +@item gnus-nocem-verifyer +@vindex gnus-nocem-verifyer +@findex pgg-verify-region +$B$3$l$O(B NoCeM $BH/9TZ$9$k4X?t$G$J$/$F$O$J$j$^$;$s!#(B +$B=i4|@_Dj$G$O!"0J2<$K<($9(B @code{pgg-verify-region} $B$r;H$&4X?t$G(B +$B$9(B ($BCp(B: Gnus $B$G$O(B @code{pgg-verify} $B$,%G%#%U%)%k%H$G$9(B)$B!#(B + +@lisp +(lambda () + (pgg-verify-region (point-min) (point-max))) +@end lisp + +$B$3$l$O8!>Z$K@.8y$7$?$iHs(B-@code{nil} $B$rJV$7!"$=$&$G$J$1$l$P(B (NoCeM $B%a%C%;!<(B +$B%8$,=pL>$5$l$F$$$J$$>l9g$r4^$_$^$9(B) @code{nil} $B$rJV$7$^$9!#$b$7$3$l$,Hs(B +$B>o$KCY$/$F!"8!>Z7k2L$r5$$K$7$J$$(B ($B$3$l$O$?$V$s4m81$G$9(B) $B$N$G$"$l$P!"$3$N(B +$BJQ?t$r(B @code{nil} $B$K$9$k$3$H$,$G$-$^$9!#(B + +$B0JA0!"%G%U%)%k%H$O(B Mailcrypt $B$N4X?t$G$"$k(B @code{mc-verify} $B$G$7$?!#$^$@(B +$B$=$l$r;H$&$3$H$,$G$-$^$9$,!"(BPGP $B$N8x3+80$r(B GnuPG $B$N80B+$K2C$($k$3$H$r1^(B +$B$o$J$1$l$P!"(BGnuPG $B$H$H$b$KF0:n$9$k%G%#%U%)%k%H$N4X?t$KJQ$($k$3$H$,$G$-$^(B +$B$9!#(B + +@item gnus-nocem-directory +@vindex gnus-nocem-directory +$B$3$l$O(B Gnus $B$,(B NoCeM $B%-%c%C%7%e%U%!%$%k$rJ]B8$9$k>l=j$G$9!#=i4|@_DjCM(B +$B$O(B @file{~/News/NoCeM/} $B$G$9!#(B + +@item gnus-nocem-expiry-wait +@vindex gnus-nocem-expiry-wait +$B8E$$(B NoCeM $B9`L\$r%-%c%C%7%e$+$i>C$9$^$G$NF|?t!#=i4|@_DjCM$O(B 15 $B$G$9!#$3(B +$B$l$rC;$/$9$k$[$I(B Gnus $B$OB.$/$J$j$^$9$,!"8E$$(B spam $B$r8+$k$3$H$K$J$C$F$7$^(B +$B$&$+$b$7$l$^$;$s!#(B + +@item gnus-nocem-check-from +@vindex gnus-nocem-check-from +$BHs(B@code{nil} $B$G$O!"5-;v$N%\%G%#$K$"$kH/9T?M$N@5Ev@-$rD4$Y$^$9!#$=$&$G$J(B +$B$$>l9g$O!"CxC$75n$C$F$7$^$C$?J}$,NI$$$G(B +$B$9(B (@pxref{Subscription Commands})$B!#(B + +@node Undo +@section $B$d$jD>$7(B +@cindex undo + +$B$7$,$G$-$k$H!"$H$F$bJXMx$G$9!#IaDL$N(B Emacs $B%P%C%U%!(B +$B$G$O!"$3$l$O==J,4JC1$G$9(B --- $BC1$K(B @code{undo} $B%\%?%s$r2!$9$@$1$G$9!#$7$+(B +$B$7(B Gnus $B$N%P%C%U%!$G$O!"$3$l$O4JC1$G$O$"$j$^$;$s!#(B + +Gnus $B$,%P%C%U%!!C5n$9$k(B +$B$N$O!"$=$N9T$O>C$(5n$j$^$9$,!"$=$l$O$7$O!"DL>o$N(B Emacs $B$N(B @code{undo} $B4X?t$G$O9T$J$&$3$H$,$G$-$^(B +$B$;$s!#(B + +Gnus $B$O!"MxMQ$72DG=$J%-!<4X?t$O6O$+$7$+Ds6!$7$F$$$^$;$s!#(B +$B$3$l$i$O!"%0%k!<%W$N:o=|!"%0%k!<%W$NE=$jIU$1!"%0%k!<%W$N4{FI5-;v$N%j%9%H(B +$B$NJQ99!"$=$l$@$1$J$s$G$9!#>-Mh$O$b$C$H4X?t$,DI2C$5$l$k$+$b$7$l$^$;$s$,!"(B +$B4X?t$NDI2C$O$=$l$>$lJ]B8$9$k$Y$-%G!<%?$rA}$d$9$3$H$K$J$k$N$G!"(BGnus $B$O7h(B +$B$7$F40A4$d$jD>$72DG=$K$O$J$i$J$$$G$7$g$&!#(B + +@findex gnus-undo-mode +@vindex gnus-use-undo +@findex gnus-undo +$B$d$jD>$75!G=$O(B @code{gnus-undo-mode} $B%^%$%J!<%b!<%I$K$h$C$FDs6!$5$l$^$9!#(B +$B$3$l$O(B @code{gnus-use-undo} $B$,(B @code{nil} $B0J30$G$"$l$P;HMQ$5$l!"$3$l$,=i(B +$B4|@_Dj$G$9!#(B@kbd{C-M-_} $B%-!<$,(B @code{gnus-undo} $BL?Na$ro$N(B Emacs $B$N(B @code{undo} $BL?Na$K$A$g$C$H$@$1;w$F$$$k$H;W$o$l$k$G$7$g$&!#(B + +@node Predicate Specifiers +@section $B=R8l$N@_Dj(B +@cindex predicate specifiers + +$B$$$/$D$+$N(B Gnus $B$NJQ?t(B +$B$O(B @dfn{$B=R8l;X<(;R(B} (@dfn{predicate specifiers}) $B$G$9!#$3$l$O=R8l$N;EMM(B +$B$KM;DL$r8z$+$;$k$3$H$,$G$-$kFCJL$J7A<0$G$9!#(B + +$B$3$l$i$N;X<(;R$O4X?t$K$h$k%j%9%H!"%7%s%\%k$^$?$O%j%9%H$G$9!#(B + +$B$3$l$ONc$G$9(B: + +@lisp +(or gnus-article-unseen-p + gnus-article-unread-p) +@end lisp + +$BMxMQ$G$-$k%7%s%\%k$O(B @code{or}$B!"(B@code{and} $B$*$h$S(B @code{not} $B$G$9!#4X?t(B +$B$O$9$Y$F0l$D$N%Q%i%a!<%?$r5G'$7(B +$B$F$$$J$$5-;v$r$?$^$?$^8+$D$1$?$H$7$?$i!"(B@kbd{c} $BL?Na$GC$7$G$-$^$9!#(B +@end enumerate + +$BFs$D$N%0%k!<%W$G;J2qA0$r0z?t$H$7$F$H$j$^$9!#(B + +@node Image Enhancements +@section $B2hA|$N3HD%(B + +XEmacs $B$=$l$K(B Emacs 21@footnote{MS $B%&%#%s%I%&%:$N(B Emacs 21 $B$O$^$@2hA|$r(B +$B%5%]!<%H$7$F$$$^$;$s!#(B} $B$O3($d$=$NB>$N$b$N$rI=<($9$k$3$H$,$G$-$k$N$G!"(B +Gnus $B$O$3$l$rMxMQ$9$k$3$H$K$7$^$9!#(B + +@menu +* X-Face:: $B%U%!%s%-!<$G$A$C$A$c$JGr9u$N3($rI=<($9$k(B +* Face:: $B$h$j%U%!%s%-!<$G$A$C$A$c$J%+%i!<$N3($rI=<($9$k(B +* Smileys:: $BI=<($5$l$k$Y$/@8$^$l$?9,$;$=$&$J4i$rI=<($9$kJ}K!(B +* Picons:: $B$"$J$?$,FI$s$G$$$k$b$N$N3($rI=<($9$kJ}K!(B +* XVarious:: $B$=$NB>$N(B XEmacs $B$G(B Gnus $B$JJQ?t(B +@end menu + +@node X-Face +@subsection X-Face +@cindex x-face + +@code{X-Face} $B%X%C%@!<$O!"%a%C%;!<%8$NCx%W%m%0%i%`$K$D$$$F$O!"(B +`compface' $B$d(B GNU/Linux $B%7%9%F%`$K$*$1$k(B `faces-xface' $B$N$h$&$J%Q%C%1!<(B +$B%8$rC5$7$F2<$5$$!#(B} $B$r%U%)!<%/$7$F8+$h$&$H$7$^$9!#(B + +XEmacs $B$+@E;_2h$r%5%]!<%H$7$F$$$k(B Emacs 21+ $B$G$N%G%#%U%)%k%H$NF0:n(B +$B$O(B @code{From} $BMs$NA0$K4i$rI=<($9$k$3$H$G$9!#(B(XEmacs $B$,(B X-Face $B5!G=IU$-(B +$B$G%3%s%Q%$%k$5$l$F$$$k$HNI$$$G$7$g$&!=!=$=$l$OI=<($r>/$7Aa$/$7$^$9!#$b$7(B +$B:,K\E*(B X-Face $B5!G=$,$J$$$N$G$"$l$P!"(BGnus $B$O(B @code{pbmplus} $B$d$=$NCg4V$N(B +$B30It%W%m%0%i%`$r;H$C$F(B @code{X-Face} $BMs$rJQ49$7$h$&$H;n$_$^$9(B @footnote{ +GNU/Linux $B%7%9%F%`$G$O(B @code{netpbm}$B!"(B@code{libgr-progs} $B$^$?(B +$B$O(B @code{compface} $B$N$h$&$JL>A0$N%Q%C%1!<%8$rC5$7$F2<$5$$!#(B}$B!#(B) + +($BCm(B: $BJQ?t(B/$B4X?tL>$K$O(B @code{xface} $B$G$O$J$/(B @code{x-face} $B$,;H$o$l$^$9!#(B) + +$B%U%'!<%9$HJQ?t(B: + +@table @code +@item gnus-x-face +@vindex gnus-x-face +X-Face $B$rI=<($9$k$?$a$N%U%'!<%9!#$3$N%U%'!<%9$N?'$,I=<($5$l$k(B X-Face $B$N(B +$BA07J?'$HGX7J?'$H$7$F;H$o$l$^$9!#%G%#%U%)%k%H$N?'$OGr$H9u$G$9!#(B + +@item gnus-face-properties-alist +@vindex gnus-face-properties-alist +Face (@pxref{Face}) $B$H(B X-Face $B2hA|$KE,MQ$5$l$k!"2hA|$N7A<0$H%W%m%Q%F%#$N(B +$BO"A[%j%9%H$G$9!#%G%#%U%)%k%HCM$O(B Emacs $BMQ$N(B @code{((pbm . (:face +gnus-x-face)) (png . nil))} $B$^$?$O(B XEmacs $BMQ$N(B @code{((xface . (:face +gnus-x-face)))} $B$G$9!#Nc$r5s$2$^$7$g$&(B: + +@lisp +;; From $B%X%C%@!<$K$*$1$k(B Face $B$H(B X-Face $B$N9b$5$r;XDj$7$^$9!#(B +(setq gnus-face-properties-alist + '((pbm . (:face gnus-x-face :ascent 80)) + (png . (:ascent 80)))) + +;; Face $B$H(B X-Face $B$r1z$s$@%\%?%s$N$h$&$KI=<($7$^$9!#(B +(setq gnus-face-properties-alist + '((pbm . (:face gnus-x-face :relief -2)) + (png . (:relief -2)))) +@end lisp + +$B$$$m$$$m$J2hA|$N7A<0$GMxMQ2DG=$J%W%m%Q%F%#$K$D$$$F$O(B @pxref{Image +Descriptors, ,Image Descriptors, elisp, The Emacs Lisp Reference +Manual} $B$r;2>H$7$F2<$5$$!#:#$N$H$3$m(B Emacs $B$G$O(B @code{pbm} $B$,(B X-Face $B2h(B +$BA|$K;H$o$l!"(B @code{png} $B$,(B Face $B2hA|$K;H$o$l$^$9!#(BXEmacs $B$G$O!"$=$l(B +$B$,(B @samp{libcompface} $B%i%$%V%i%j$H$H$b$K9=C[$5$l$F$$$l$P!"(B +@code{xface} $B2hA|7A<0$K(B @code{:face} $B%W%m%Q%F%#$@$1$,8z2L$r5Z$\$7$^$9!#(B +@end table + +Gnus $B$O!"30$K=P$9%a%C%;!<%8$K(B X-Face $B%X%C%@!<$r4JC1$KA^F~$9$k$?$a$N!"JX(B +$BMx$J4X?t$HJQ?t$r>/$7$P$+$jDs6!$7$^$9!#(B + +@findex gnus-random-x-face +@vindex gnus-convert-pbm-to-x-face-command +@vindex gnus-x-face-directory +@code{gnus-random-x-face} $B$O(B @code{gnus-x-face-directory} $B$K$"$k$9$Y$F(B +$B$N(B @samp{pbm} $B$r$/$^$J$/C5$7$F%i%s%@%`$K0l$D$rA*$S]D'$7$F$$$k$3$H$,4|BT$5$l$k!"(B +48$B!_(B48 $B2hAG$N%+%i!<2hA|$rIA$-$^$9!#(B + +@cindex face +@findex gnus-article-display-face +@code{Face} $B%X%C%@!<$NFbMF$O!"(Bbase64 $B$G%(%s%3!<%I$5$l$?(B PNG $B$N2hA|$G$J$1(B +$B$l$P$J$j$^$;$s!#@53N$J;EMM$K$D$$$F!"(B +@uref{http://quimby.gnus.org/circus/face/} $B$r;2>H$7$F2<$5$$!#(B + +$BJQ?t(B @code{gnus-face-properties-alist} $B$OI=<($5$l$k(B Face $B2hA|$N304Q$K1F(B +$B6A$7$^$9!#(B@xref{X-Face}. + +$BAw?.$9$k%a%C%;!<%8$K4JC1$K(B Face $B%X%C%@!<$rA^F~$G$-$k$h$&$K$9$k$?$a$K!"(B +Gnus $B$O(B 2$B!A(B3 $B$N4X?t$HJQ?t$rDs6!$7$^$9!#(B + +@findex gnus-convert-png-to-face +@code{gnus-convert-png-to-face} $B$O(B 726-byte $B0J2<$N(B 48$B!_(B48 $B$N(B PNG $B$N2hA|(B +$B$rFI$_9~$s$G!"$=$l$r(B Face $B$KJQ49$7$^$9!#(B + +@findex gnus-face-from-file +@vindex gnus-convert-image-to-face-command +@code{gnus-face-from-file} $B$O(B JPEG $B$N%U%!%$%kL>$r%Q%i%a!<%?$H$7$F$X$NBP1~$N%j%9(B +$B%H$G@)8f$5$l$^$9!#(B + +@vindex smiley-regexp-alist +$B;H$o$l$kO"A[%j%9%H$O!"JQ?t(B @code{smiley-regexp-alist} $B$G@_Dj$7$^$9!#3FMW(B +$BAG$N:G=i$N9`L\$O%^%C%A$5$;$?$$@55,I=8=$G!"FsHVL\$NMWAG$O3($GCV$-49$($?$$(B +$B%0%k!<%W$K%^%C%A$9$k@55,I=8=!"$=$7$F;0HVL\$NMWAG$OI=<($5$;$?$$%U%!%$%k$N(B +$BL>A0$G$9!#(B + +$B0J2<$NJQ?t$O!"%9%^%$%j!<$,$3$l$i$N%U%!%$%k$rC5$9>l=j$r%+%9%?%^%$%:$7$^$9(B: + +@table @code +@item smiley-data-directory +@vindex smiley-data-directory +$B%9%^%$%j!<$,4i%U%!%$%k$rC5$9>l=j!#(B + +@item gnus-smiley-file-types +@vindex gnus-smiley-file-types +$B%9%^%$%j!<$N%U%!%$%kL>$H$7$F;n$7$F$_$k3HD%;R$N%j%9%H$G$9!#(B +@end table + +@node Picons +@subsection Picons + +@iftex +@iflatex +\include{picons} +@end iflatex +@end iftex + +$B$=$l$G!D!"$"$J$?$O$3$N%K%e!<%9%j!<%@!<$r$5$i$K$b$C$HCY$/$7$?$$$C$F$o$1$@(B +$B$M(B! $B$3$l$O$=$&$9$k$N$K$T$C$?$j$JJ}K!$G$9!#$5$i$K$3$l$O!"$"$J$?$,%K%e!<%9(B +$B$rFI$s$G$$$k$s$@$H$$$&$3$H$r!"$"$J$?$N8*1[$7$K8+$D$a$F$$$k?M$K0u>]$E$1$k(B +$B$?$a$NAG@2$i$7$$J}K!$G$b$"$j$^$9!#(B + +Picon $B$H$O$J$s$G$7$g$&(B? Picons $B%&%'%V%5%$%H$+$iD>@\0zMQ$7$^$7$g$&!#(B + +@iftex +@iflatex +\margindex{} +@end iflatex +@end iftex + +@quotation +@dfn{Picon} $B$H$O!"(B``$B8D?M%"%$%3%s(B (personal icons)'' $B$NN,$G$9!#$3$l$O!"%M%C(B +$B%H>e$NMxMQ.$5$J2hA|$G!"%G!<%?%Y!<(B +$B%9$r;}$?$;$F!"$"$kEE;R%a!<%k%"%I%l%9$,$"$C$?$i!"$=$l$KE,@Z$J2hA|$r8+$D$1(B +$B$i$l$k$h$&$K$7$F$*$/$b$N$G$9!#MxMQl=j$G$9!#$3$l$O(B @file{news}, @file{domains}, +@file{users} ($B$J$I$J$I(B) $B$N%5%V%G%#%l%/%H%j!<$,4^$^$l$F$$$k%G%#%l%/%H%j!<(B +$B$N%j%9%H$G$9!#(B@code{("/usr/lib/picon" "/usr/local/faces")} $B$,%G%#%U%)%k(B +$B%H$G$9!#(B + +@item gnus-picon-news-directories +@vindex gnus-picon-news-directories +@code{gnus-picon-databases} $B$+$i%K%e!<%9%0%k!<%WMQ$N%U%'!<%9$rC5$9$?$a$N(B +$B%5%V%G%#%l%/%H%j!<$N%j%9%H$G$9!#%G%#%U%)%k%H$O(B @code{("news")} $B$G$9!#(B + +@item gnus-picon-user-directories +@vindex gnus-picon-user-directories +@code{gnus-picon-databases} $B$+$i%f!<%6$N%U%'!<%9$rC5$9$?$a$N%5%V%G%#%l%/(B +$B%H%j!<$N%j%9%H$G$9!#(B@code{("local" "users" "usenix" "misc")} $B$,%G%#%U%)(B +$B%k%H$G$9!#(B + +@item gnus-picon-domain-directories +@vindex gnus-picon-domain-directories +@code{gnus-picon-databases} $B$+$i%I%a%$%sL>$N%U%'!<%9$rC5$9$?$a$N%5%V%G%#(B +$B%l%/%H%j!<$N%j%9%H$G$9!#%G%#%U%)%k%H$O(B @code{("domains")} $B$G$9!#$3$N%j%9(B +$B%H$K(B @samp{"unknown"} $B$rDI2C$7$F$*$-$?$/$J$k?M$b$$$k$G$7$g$&!#(B + +@item gnus-picon-file-types +@vindex gnus-picon-file-types +Picon $B$N%U%!%$%kL>$H$7$F;n$7$F$_$k3HD%;R$N=gHV%j%9%H$G$9!#%G%#%U%)%k%H$O!"(B +@code{("xpm" "gif" "xbm")} $B$+$i(B Emacs $B$KAH$_9~$^$l$F$$$J$$$b$N$r=|30$7$?(B +$B$b$N$G$9!#(B +@end table + +@node XVarious +@subsection $B$5$^$6$^$J(B XEmacs $BJQ?t(B + +@table @code +@item gnus-xmas-glyph-directory +@vindex gnus-xmas-glyph-directory +$B$3$l$O(B Gnus $B$,3($rC5$9>l=j$G$9!#(BGnus $B$ODL>o$3$N%G%#%l%/%H%j$r<+F08!=P$7(B +$B$^$9$,!"$b$7I8=`E*$G$J$$%G%#%l%/%H%j!<9=B$$r;}$C$F$$$k>l9g$O!"$3$l$rl9g$O!"(B +@code{default-toolbar}, @code{top-toolbar}, @code{bottom-toolbar}, +@code{right-toolbar}, @code{left-toolbar} $B$N$I$l$+$G$J$/$F$O$J$j$^$;$s!#(B + +@item gnus-group-toolbar +@vindex gnus-group-toolbar +$B%0%k!<%W%P%C%U%!Fb$N%D!<%k%P!<$G$9!#(B + +@item gnus-summary-toolbar +@vindex gnus-summary-toolbar +$B35N,%P%C%U%!Fb$N%D!<%k%P!<$G$9!#(B + +@item gnus-summary-mail-toolbar +@vindex gnus-summary-mail-toolbar +$B%a!<%k%0%k!<%W$N35N,%P%C%U%!Fb$N%D!<%k%P!<$G$9!#(B +@end table + +@iftex +@iflatex +\margindex{} +@end iflatex +@end iftex + +@node Fuzzy Matching +@section $B%U%!%8!<$J0lCW(B +@cindex fuzzy matching + +Gnus $B$O!"%9%3%"IU$1!"%9%l%C%I$N7A@.!"%9%l%C%IHf3S$J$I$r9T$&$H$-$K!"(B +@code{Subject} $B9T$N%U%!%8!<$J0lCW(B @dfn{fuzzy matching} $BJ}K!$rDs6!$7$F$$(B +$B$^$9!#(B + +$B@55,I=8=0lCW$H$O0c$C$F!"%U%!%8!<$J0lCW$O$H$C$F$b%U%!%8!<$G$9!#$"$^$j$K$b(B +$B%U%!%8!<$9$.$F!"2?$,%U%!%8!<(B @dfn{fuzziness} $B$G$"$k$+$H$$$&Dj5A$5$($"$j(B +$B$^$;$s$7!"l9gBEEv$J7k2L$r=P$7$^$9(B --- $B$?$H$(%K%e!<%9%j!<(B +$B%@!<$N2>LL$r$+$V$C$?J8;zNs@Z$j9o$_5!$G@8@.$5$l$?J8;zNs$,:9$7=P$5$l$F$b!"(B +$B$G$9!#(B + +@node Thwarting Email Spam +@section spam $B%a!<%k$NN"$r$+$/(B +@cindex email spam +@cindex spam +@cindex UCE +@cindex unsolicited commercial email + +$B$3$3:G6a$N(B USENET $B$G$O!"@kEA$N%O%2%?%+$I$b$,!"H`$i$N:>5=$d@=IJ$r2!$7IU$1(B +$B$k$?$a$NEE;R%a!<%k%"%I%l%9$rC5$=$&$H$7$F!"5$0c$$$N$h$&$K%K%e!<%9>e$r$&$m(B +$B$D$$$F(B grep $B$7$^$/$C$F$$$^$9!#$3$l$KBP$9$kH?F0$H$7$F!"B?$/$N?M!9(B +$B$,(B @code{From} $B9T$KL50UL#$J%"%I%l%9$rF~$l$O$8$a$k$h$&$K$J$C$F$7$^$$$^$7(B +$B$?!#$3$l$OHs@8;:E*$J$3$H$@$H;d$O;W$$$^$9(B --- $B$"$J$?$,=q$$$?$3$H$KBP$9$k(B +$BJV?.$H$7$F@5Ev$J%a!<%k$rAw$k$3$H$rLLE]$K$5$;!"$^$?C/$,=q$$$?$b$N$J$N$+$r(B +$BJ,$+$j$E$i$/$7$^$9!#$3$s$J=q$-49$($O7k6I$O!"2!$7IU$1@kEA%a!<%k$=$l<+?H$h(B +$B$j$bBg$-$J6<0R$H$J$k$+$b$7$l$^$;$s!#(B + +$B;d$K$H$C$F$N(B spam $B%a!<%k$N:GBg$NLdBj$O!"13$N8}$^$l$J$$>&MQEE;R%a!<%k(B -- $B$NF,J8(B +$B;z(B @acronym{UCE}) $B$N$3$H$O$h$/CN$C$F$$$k$G$7$g$&!#4JC1$K8@$($P$=$l$O;f$N(B +$B%a!<%k$KHf$Y$FEE;R%a!<%k$NG[Aw$,$H$F$b0B$/$D$/$?$a$KB8:_$7!"Hs>o$K>.$5$J(B +$B3d9g$N?M!9$,(B UCE $B$K1~Ez$9$k$@$1$G9-9pl9g$O@\$N_I2a$OM-1W$K$J$jF@$^$9!#(B + +$B$b$&0l$D$NEE;R%a!<%k_I2a$X$Nl9g!"H`$O$=$l$i$N(B @var{N} $B8D$N%7%9%F%`$N$&$A$N0l$D$rD4$Y$^(B +$B$9!#(B + +$BJ,;67?(B spam $B=hM}$OF1;~$KB?$/$N%a%C%;!<%8$rAw$k(B spammers $B$HHs>o$K$h$/@o$C(B +$B$F$/$l$^$9$,!"$=$l$O%f!<%6!<$,$+$J$jJ#;($J%A%'%C%/$r@_Dj$9$k$3$H$r5a$a$^(B +$B$9!#>&MQ$H!"%U%j!<$JJ,;67?(B spam $B=hM}%7%9%F%`$,$"$j$^$9!#J,;67?(B spam $B=hM}(B +$B$O!"$=$l<+BN$N4m81$b$O$i$s$G$$$^$9!#Nc$($P!"@5Ev$JAw?.o$=$NJ,@O$O!"$*$=$i$/C18l$NBP$+;0$D(B +$B$NC18l$NAH9g$;$N9g@.$K$h$k!"C18l$N=P8=IQEY$NC1=c$J7W?t$G$9!#(BSpam $B$NE}7W(B +$BJ,@O$O$[$H$s$I$N>l9g$K$H$F$b$h$/F/$/$N$G$9$,!";~$H$7$F@5Ev$JEE;R%a!<%k(B +$B$r(B spam $B$H$7$FJ,N`$7$F$7$^$&$3$H$,$"$j$^$9!#J,@O$K$O;~4V$,$+$+$j$^$9!#$9(B +$B$Y$F$N%a%C%;!<%8$rJ,@O$7$J$1$l$P$J$j$^$;$s!#$=$7$F%f!<%6!<$O(B spam $B$rJ,@O(B +$B$9$k$?$a$N%G!<%?%Y!<%9$rMQ0U$7$J$1$l$P$J$j$^$;$s!#%5!<%P!<$G$NE}7WJ,@O$O(B +$B?M5$$rF@$F$$$^$9!#$3$l$K$O!"%f!<%6!<$OC1$K%a!<%k$rFI$a$PNI$$$H$$$&D9=j$H!"(B +$B$7$+$7%5!<%P!<$K$=$l$,2a$C$F%a!<%k$rJ,N`$7$?$3$H$rEA$($k$N$,:$Fq$@$H$$$&(B +$BC;=j$,$"$j$^$9!#(B + +$BM>?M$N8@$rBT$?$:$H$b!"(Bspam $B$H$N@o$$$O3Z$G$O$"$j$^$;$s!#%^%^$+$i$NEE;R%a!<(B +$B%k$H%P%$%"%0%i9-9p$r6hJL$9$kKbK!$N%9%$%C%A$O$"$j$^$;$s!#?M!9$O(B +$BHs(B-spam $B$H(B spam $B$r6hJL$9$k$N$KF$$$F$$$k$H$$$&$N$K!#$=$l$O!"(B +spammers $B$,7|L?$K$=$l$i$r%^%^$@$H;W$o$;$h$&$H$7$F$$$k$N$,K\$_$^$9!#(B + +@node Anti-Spam Basics +@subsection Spam $BB`<#$N4pAC(B +@cindex email spam +@cindex spam +@cindex UCE +@cindex unsolicited commercial email + +Spam $B$KBP=h$9$k0l$D$NJ}K!$O!"(BGnus $B$KA4$F$N(B spam $B$r(B @samp{spam} $B%a!<%k%0(B +$B%k!<%W$KJ,N%$5$;$F$7$^$&$3$H$G$9(B (@pxref{Splitting Mail})$B!#(B + +$B:G=i$K!"$"$J$?$KE~C#@-$N$"$k@5$7$$%a!<%k%"%I%l%9$r0l$DA*$S!"$=$l$rA4$F$N(B +$B$"$J$?$N%K%e!<%95-;v$N(B @code{From} $B%X%C%@!<$KF~$l$^$9!#(B($B$3$3$G$O(B +@samp{larsi@@trym.ifi.uio.no} $B$rA*$S$^$7$?$,!"(B +@samp{larsi+usenet@@ifi.uio.no} $B7A<0$N$?$/$5$s$N%"%I%l%9$NJ}$,NI$$A*Br$G(B +$B$9!#$"$J$?$N%5%$%H$N(B sendmail $B$N@_Dj$,%a!<%k%"%I%l%9$N%m!<%+%kIt$H$7$F$I(B +$B$s$J%-!<%o!<%I$r\n") +@end lisp + +$B$=$7$F(B @code{nnmail-split-fancy} $B$K0J2<$NJ,N%5,B'$rF~$l$^(B +$B$9(B (@pxref{Fancy Mail Splitting})$B!#(B + +@lisp +(... + (to "larsi@@trym.ifi.uio.no" + (| ("subject" "re:.*" "misc") + ("references" ".*@@.*" "misc") + "spam")) + ...) +@end lisp + +$B$3$N0UL#$O!"$3$N%"%I%l%9$KFO$$$?A4$F$N%a!<%k$r$^$:5?$$$^$9$,!"(B +@samp{Re:} $B$G;O$^$k(B @code{Subject} $B$,$D$$$F$$$k$+!"(B@code{References} $B%X%C(B +$B%@!<$,$D$$$F$$$l$P$*$=$i$/(B OK $B$@$m$&!"$H$$$&$3$H$G$9!#;D$j$OA4$F(B +@samp{spam} $B%0%k!<%W$K9T$-$^$9!#(B($B$3$N%"%$%G%"$O$*$=$i$/(B Tim Pierce $B;a$K(B +$B$h$k$b$N$G$9!#(B) + +$B$3$l$K2C$($F!"B?$/$N%a!<%k(B spam $B20$O!"$"$J$?$N$H$3$m$N(B @acronym{SMTP} $B%5!<(B +$B%P!<$HD>@\OC$7!"(B@code{To} $B%X%C%@!<$K$"$J$?$N%a!<%k%"%I%l%9$,L@<($5$l$J$$(B +$B$h$&$K$7$^$9!#$J$s$G$=$s$J$3$H$r$9$k$N$+$O$o$+$j$^$;$s$,(B --- $B$*$=$i$/;d(B +$B$?$A$NN"$r$+$/5!9=$NN"$r$+$/$?$a$+$J(B? $B$I$A$i$K$7$F$b!"BP=h$O4JC1$J$3$H$G(B +$B$9(B --- $B$"$J$?08$F$G$J$$$b$N$rA4It(B @samp{spam} $B%0%k!<%W$K$$$l$k$@$1$G$9!#(B +$B$3$l$O$*9%$_J,N%5,B'$N:G8e$K$3$s$JIw$KF~$l$k$3$H$G$G$-$^$9!#(B + +@lisp +( + ... + (to "larsi" "misc") + "spam") +@end lisp + +$B;d$N7P83$G$O!"$3$l$G;veA4$F$,@5$7$$%0%k!<%W$KJ,N`$5$l$^$9!#$^$"!"$=$l(B +$B$G$b$H$-$I$-(B @samp{spam} $B%0%k!<%W$r%A%'%C%/$7$F!"@5$7$$%a!<%k$,$"$k$+%A%'%C(B +$B%/$7$J$/$F$O$$$1$^$;$s$1$I$M!#$b$7$"$J$?$O<+J,$,NI$$%M%C%H%o!<%/;TL1$G$"(B +$B$k$H;W$C$F$$$k$J$i!"$=$l$>$l$N2!$7IU$1@kEA%a!<%k$N4X78Ev6I$K6l>p$rAw$jIU(B +$B$1$k$3$H$5$($b$G$-$^$9(B --- $B2K$J$H$-$K$G$b$M!#(B + +$B$3$l$G;d$N$H$3$m$G$OF0$$$F$$$^$9!#$3$l$G$_$s$J$O4JC1$JJ}K!$G;d$KO"Mm$ruBV$G$9!#;d$N0U8+$H$7$F$O!"(B@code{From} $B%X%C%@!<(B +$B$r56B$$7$FB8:_$7$J$$%I%a%$%s$KAw$i$;$k$N$O%-%?%J%$$G$9!#(B + +$B$3$N$N$[$H$s$I$NF;6q$K$b4JC1$KE,9g$9$k$O(B +$B$:$G$9!#(B + +$B$3$N9`$O(B @code{spam.el} $B%Q%C%1!<%8$H$O4X78L5$$$3$H$KCm0U$7$F2<$5$$!#$=$l(B +$B$Ol9g$N9M$(J}$r<($7$^(B +$B$9!#(B + +@lisp +(setq mail-sources + '((file :prescript "formail -bs spamassassin < /var/mail/%u") + (pop :user "jrl" + :server "pophost" + :postscript + "mv %t /tmp/foo; formail -bs spamc < /tmp/foo > %t"))) +@end lisp + +$B$$$C$?$s!"%a!<%k$rl9g!"%G%#%U%)%k%H$G$O5-;v$N%\%G%#$,%@%&%s%m!<(B +$B%I$5$l$J$$$3$H$KCm0U$7$F2<$5$$!#$=$l$r$9$k$?$a$K$O!"(B +@code{nnimap-split-download-body} $B$r(B @code{t} $B$K@_Dj$9$kI,MW$,$"$j$^(B +$B$9(B (@pxref{Splitting in IMAP})$B!#(B + +$B0J>e$,$3$l$K4X$9$k$3$H$G$9!#$$$/$D$+$N(B spam $B$O$I$&$7$F$bAGDL$j$7$F$7$^$&(B +$B$N$G!"(Bspam $B$rFI$`$O$a$K$J$C$?$H$-$K8F$V$?$a$N5$$NMx$$$?4X?t$,M_$7$$$G$7$g(B +$B$&!#$3$l$,$=$N5$$NMx$$$?4X?t$G$9(B: + +@lisp + (defun my-gnus-raze-spam () + "Submit SPAM to Vipul's Razor, then mark it as expirable." + (interactive) + (gnus-summary-show-raw-article) + (gnus-summary-save-in-pipe "razor-report -f -d") + (gnus-summary-mark-as-expirable 1)) +@end lisp + +@node Hashcash +@subsection Hashcash +@cindex hashcash + +Spam $B$H@o$&$?$a$N?7$7$$5;K!$O!"$$$/$P$/$+$NIiC4$K$O$J$k$,L@$i$+$KFHFC$J(B +$B$3$H$r!"Aw?.$9$k%a%C%;!<%8$KBP$7$FAw?..5,LO$J6&F1BN$G(B +$B$OLr$KN)$D$G$7$g$&!#(B + +$BA09`$NF;6qN`$,.$5$J%Q!<%;%s%F!<%8$N(B spam $B$,$$$D$bAGDL$j$7$F$7$^$&$3$H$r0UL#$7(B +$B$^$9!#$=$l$O$^$?!"$I$3$+$G$@$l$+$,$=$l$i$NF;6q$r99?7$9$k$?$a$K!"$?$/$5$s(B +$B$N(B spam $B$rFI$^$J$1$l$P$J$i$J$$$3$H$r$b0UL#$7$^$9!#(BHashcash $B$O$=$l$r2sHr(B +$B$7$^$9$,!"Be$o$j$K$"$J$?$,EE;R%a!<%k$GO"Mm$9$k$9$Y$F$N?M$?$A$K!"$J$k$Y$/(B +$B$=$N;EAH$_$r;H$C$F$b$i$&I,MW$,$"$j$^$9!#$"$J$?$Or(B (dogmatic) $B$NFs$D$N$N$P$i$P$i$J$b$N$h$j6/NO$J$N$G$9!#(B + +@cindex X-Hashcash +$B!V$$$/$P$/$+$NIiC4!W$H$O(B CPU $B;~4V$r>CHq$9$k$3$H$G!"6qBNE*$K$O0lDj?t$N%S%C(B +$B%H$^$G%O%C%7%e$N>WFM(B (hash collision) $B$r7W;;$9$k$3$H$G$9!#$=$N7k2L$H$7$F(B +$B$N(B hashcash $B%/%C%-!<$O(B @samp{X-Hashcash:} $B%X%C%@!<$KA^F~$5$l$^$9!#$b$C$H(B +$B>\$7$$$3$H!"$=$7$F$3$N5!G=$r;H$&$?$a$K%$%s%9%H!<%k$9$kI,MW$,$"$k30It%"%W(B +$B%j%1!<%7%g%s$N(B @code{hashcash} $B$K$D$$$F(B +$B$O(B @uref{http://www.hashcash.org/} $B$r;2>H$7$F2<$5$$!#$5$i$J$k>pJs(B +$B$,(B @uref{http://www.camram.org/} $B$G8+$D$+$k$G$7$g$&!#(B + +$BAw?.$9$k%a%C%;!<%8$N$=$l$>$l$K$D$$$F(B hashcash $B$r@8@.$5$;$h$&$H;W$&$J$i!"(B +$B0J2<$N$h$&$K(B @code{message-generate-hashcash} (@pxref{Mail Headers,,Mail +Headers,message-ja, The Message Manual}) $B$r%+%9%?%^%$%:$7$F2<$5$$(B: + +@lisp +(setq message-generate-hashcash t) +@end lisp + +$B$$$/$D$+$NDI2C$NJQ?t$N@_Dj$b$7$J$1$l$P$J$j$^$;$s(B: + +@table @code +@item hashcash-default-payment +@vindex hashcash-default-payment +$B$3$NJQ?t$O%O%C%7%e$N>WFM$r@.$9%G%#%U%)%k%H$N%S%C%H?t$r<($7$^$9!#5,DjCM(B +$B$O(B 20 $B$G$9!#Ds>'$5$l$F$$$kM-8z$JCM$O(B 17 $B$+$i(B 29 $B$^$G$N?t$G$9!#(B + +@item hashcash-payment-alist +@vindex hashcash-payment-alist +$B2??M$+$NWFM$N%S%C%H?t$G$9!#$3$l$O$^(B +$B$?(B @samp{(@var{addr} @var{string} @var{amount})} $B$NMWAG$r;}$D$3$H$b2DG=(B +$B$G!"(B@var{string} $B$OJ8;zNs(B ($BDL>o$O%a!<%k%"%I%l%9$+%K%e!<%9%0%k!<%WL>(B) $B$H(B +$B$7$F;H$o$l$^$9!#(B + +@item hashcash-path +@vindex hashcash-path +@code{hashcash} $B%P%$%J%j$,%$%s%9%H!<%k$5$l$F$$$k>l=j!#$3$NJQ?t(B +$B$O(B @code{executable-find} $B$K$h$C$F<+F0E*$K@_Dj$5$l$k$O$:$G$9$,!"$=$l(B +$B$,(B @code{nil} $B$@$C$?(B ($B$"$j$,$A$J$N$O(B @code{hashcash} $B%P%$%J%j$,l9g$O!"(Bhashcash payments $B$r%A%'%C%/$9$k$H$-$K7Y9p$5$l!"(B +hashcash payments $B$r@8@.$9$k$H$-$O%(%i!<$K$J$k$G$7$g$&!#(B +@end table + +Gnus $B$O(B hashcash $B%/%C%-!<$rG'>Z$9$k$3$H$,$G$-$^$9$,!"Z$9$k$K$O!"(B@code{hashcash.el} $B%i%$%V%i%j(B +$B$N(B @code{mail-check-payment} $B4X?t$r;H$C$F2<$5$$!#F~$C$F$-$?%a!<%k(B +$B$N(B hashcash $B%/%C%-!<$r3NG'$7!"$=$l$K$h$C$F%a!<%k$r_I2a$9$k$?$a$K!"(B +@code{spam-use-hashcash} $B%P%C%/%(%s%I$G(B @code{spam.el} $B$r;H$&$3$H$b$G$-(B +$B$^$9(B (@pxref{Anti-spam Hashcash Payments})$B!#(B + +@node Filtering Spam Using The Spam ELisp Package +@subsection Spam ELisp $B%Q%C%1!<%8$r;H$C$?(B Spam $B$N_I2a(B +@cindex spam filtering +@cindex spam + +@code{spam.el} $B$N??$NL\E*$O(B spam $B8!=P$H_I2a$N$?$a$N41@)%;%s%?!<(B +$B$r(B Gnus $B$NCf$K;}$D$3$H$G$9!#$=$N$?$a$K(B @code{spam.el} $B$OFs$D$N$3$H$r9T$J(B +$B$$$^$9(B: $B?7$7$$%a!<%k$r_I2a$7!"(Bspam $B$^$?$O(B ham $B$H$7$FCN$i$l$k%a!<%k$rJ,@O(B +$B$9$k$3$H$G$9!#(B@dfn{Ham} $B$O(B @code{spam.el} $B$N$$$?$k=j$G(B spam $B$G$O$J$$%a%C(B +$B%;!<%8$r<($9$?$a$K;H$&L>A0$G$9!#(B + +@code{spam.el} $B%7!<%1%s%9$N%$%Y%s%H$N9`$r$A$c$s$HFI$_$^$7$g$&!#(B +@ref{Spam ELisp Package Sequence of Events} $B$r;2>H$7$F2<$5$$!#(B + +@cindex spam-initialize +@code{spam.el} $B$r;H$&$K$O!"(B@file{spam.el} $B$r<+F0FI$_9~$_(B (autoload) $B$7(B +$B$F(B @code{spam.el} $B$N3F%U%C%/$r%$%s%9%H!<%k$9$k$?$a$K!"4X(B +$B?t(B @code{spam-initialize} $B$r(B @strong{$B\:Y$O8e=R(B (@pxref{Spam ELisp +Package Sequence of Events})$B!#(B + +$B0J2<$N%-!<%\!<%IL?Na$,;H$($k$h$&$K$J$j$^$9(B: + +@table @kbd +@item M-d +@itemx M s x +@itemx S x +@kindex M-d +@kindex S x +@kindex M s x +@findex gnus-summary-mark-as-spam +@code{gnus-summary-mark-as-spam}$B!#(B + +$B8=:_$N5-;v$K(B spam $B$H$7$F0u$rIU$1!"$=$l$r(B @samp{$} $B0u$GI=<($7$^$9!#(B +Spam $B5-;v$r8+$?$H$-$O$$$D$G$b!"%0%k!<%W$rH4$1$kA0$KI,$:(B @kbd{M-d} $B$G$=$N(B +$B35N,9T$K0u$rIU$1$k$h$&$K$7$F2<$5$$!#$3$l$O(B @emph{spam} $B%0%k!<%W$NL$FI5-(B +$B;v$KBP$7$F$O<+F0E*$K9T$J$o$l$^$9!#(B + +@item M s t +@itemx S t +@kindex M s t +@kindex S t +@findex spam-bogofilter-score +@code{spam-bogofilter-score}$B!#(B + +$B$3$N%3%^%s%I$,$A$c$s$HF/$/$?$a$K$O(B Bogofilter $B$r%$%s%9%H!<%k$7$J$1$l$P$J(B +$B$j$^$;$s!#(B + +@xref{Bogofilter}. + +@end table + +$B$^$?!"(B@file{spam.el} $B$rFI$_9~$`$H!"$=$NJQ?t72$r%+%9%?%^%$%:$9$k$3$H$,$G(B +$B$-$k$h$&$K$J$j$^$9!#(B@samp{spam} $BJQ?t%0%k!<%W$K$D$$(B +$B$F(B @code{customize-group} $B$r;n$7$F$_$F2<$5$$!#(B + +@menu +* Spam ELisp Package Sequence of Events:: +* Spam ELisp Package Filtering of Incoming Mail:: +* Spam ELisp Package Global Variables:: +* Spam ELisp Package Sorting and Score Display in Summary Buffer:: +* Spam ELisp Package Configuration Examples:: +* Blacklists and Whitelists:: +* BBDB Whitelists:: +* Gmane Spam Reporting:: +* Anti-spam Hashcash Payments:: +* Blackholes:: +* Regular Expressions Header Matching:: +* Bogofilter:: +* SpamAssassin back end:: +* ifile spam filtering:: +* spam-stat spam filtering:: +* SpamOracle:: +* Extending the Spam ELisp package:: +@end menu + +@node Spam ELisp Package Sequence of Events +@subsubsection Spam ELisp Package Sequence of Events +@cindex spam filtering +@cindex spam filtering sequence of events +@cindex spam +$B$I$N$h$&$K(B @code{spam.el} $B$,F/$/$+$rM}2r$9$k$?$a$K!"I,$:$3$N9`$rFI$s$G2<(B +$B$5$$!#FI$_Ht$P$7!"B.FI!"$^$?$OH(B +$B$7$F2<$5$$!#(B + +@vindex gnus-spam-autodetect +@vindex gnus-spam-autodetect-methods +@code{nntp} $B$N$h$&$J%P%C%/%(%s%I$K$O?7Ce%a!<%k$N%9%W!<%k$,L5$$$N$G!"Be$o(B +$B$j$N5!9=$r;H$o$J$1$l$P$J$j$^$;$s!#$3$l$O!"%5!<%P!<$,?7Ce%a!<%k$NJ,3d$rC4(B +$BEv$7$F$$$F!"(BGnus $B$,$5$i$K$^$?J,3d$r9T$J$o$J$$%P%C%/%(%s%I$G$b!"(B($BBe$o$j$N(B +$B5!9=$,(B) $BI,MW$K$J$k$+$b$7$l$^$;$s!#%0%k!<%W%Q%i%a!<(B +$B%?(B @code{spam-autodetect} $B$H(B @code{spam-autodetect-methods} ($BIaDL(B @kbd{G +c} and @kbd{G p} $B$GA`:n2D(B)$B!"$=$7$F$=$l$i$KBP1~$9$kJQ(B +$B?t(B @code{gnus-spam-autodetect} $B$*$h(B +$B$S(B @code{gnus-spam-autodetect-methods} (@kbd{M-x customize-variable} $B$G(B +$BA`:n2D(B) $B$,LrN)$A$^$9!#(B + +@code{spam-autodetect} $B$,;H$o$l$k>l9g(B ($B$=$l$O%0%k!<%W(B/$B%H%T%C%/$K$D$$$F!"(B +$B$"$k$$$OI,MW$K1~$8$F!"@55,I=8=$N9gCW$K$h$C$F==GD$R$H$+$i$2$K(B ON $B$K$G$-$^(B +$B$9(B)$B!"$=$l$O%0%k!<%W$KF~$k(B ($B$=$N%0%k!<%W$N35N,%P%C%U%!$K0\F0$9$k(B) $B=hM}$K(B +$B$*$$$F/$J$j$H$b(B spam $B_I2a$N4IM}$r%f!<%6$K5v2D$7(B +$B$^$9!#%f!<%6$O3F%0%k!<%W$N(B spam $B8!=P$No(B +$B$N(B spam $B$H$7$F=hM}$5$l$^$9!#H`$,(B @code{spam-split} $B$G9T$J$C$F$bNI$$$h$&(B +$B$K!"%f!<%6$O8!::$N(B @emph{sequence} $B$r$h$j>/$J$/4IM}$7$^$9!#(B + +$B?7$?$KJ,3d$5$l$?%a!<%k$,%0%k!<%W$KF~$C$?!"$^$?$O%a%C%;!<%8$,(B ham $B$^$?(B +$B$O(B spam $B$H$7$F<+F08!=P$5$l$?>l9g!"8e$K(B spam $B=hM}$r9T$J$o$;$k$?$a$K!"$=$l(B +$B$i$N%0%k!<%W$r(B ($BI,MW$J$iF~$C$?8e$G(B) $BH4$1=P$J$/$F$O$J$j$^$;$s!#%0%k!<%W$,(B +$B$=$N(B @code{spam-content} $B%Q%i%a!<%?(B (@pxref{Spam ELisp Package Global +Variables}) $B$K4p$E$$$F(B ham $B$^$?$O(B spam $B%0%k!<%W$H9M$($i$l$k$+!"L$J,N`$+(B +$B$I$&$+$O=EMW$G$9!#(BSpam $B%0%k!<%W$O!"$=$3$KF~$k$H!"$^$@FI$^$l$?$3$H$,L5$$!"(B +$B$^$?$OL$FI$N5-;v$K(B spam $B$N0u$,IU$1$i$l$k(B ($BJQ(B +$B?t(B @code{spam-mark-only-unseen-as-spam} $B$K0MB8(B) $B$H$$$&IU2CE*$JFC@-$r;}$A(B +$B$^$9!#$3$N$h$&$K!"J,3d$5$l$F(B spam $B%0%k!<%W$KF~$l$i$l$?5-;v$K$O!"$"$J$?$,(B +$B$=$N%0%k!<%W$KF~$C$?$H$-$K<+F0E*$K(B spam $B$N0u$,IU$1$i$l$^$9!#(B + +$B$7$?$,$C$F!"%0%k!<%W(B ($B$N35N,%P%C%U%!(B) $B$rH4$1$k(B +$B$H(B @code{spam-processors} $B$,(B ($B2?$G$"$l@_Dj$5$l$F$$$l$P(B) $BE,MQ$5$l!"=hM}$5(B +$B$l$?%a!<%k$O5-;v$NJ,N`$K4p$E$$(B +$B$F(B @code{ham-process-destination} $B$+(B @code{spam-process-destination} $B$K(B +$B0\F0$5$;$i$l$^$9!#(B@code{ham-process-destination} $B$^$?(B +$B$O(B @code{spam-process-destination} $B$N$I$A$i$+$,(B ($BLuCp(B: $B0\F0@h$H$7$F(B) $B$U(B +$B$5$o$7$$>l9g$G$b!"$=$l$i$,(B @code{nil} $B$@$C$?>l9g!"$=$N5-;v$O8=:_$N%0%k!<(B +$B%W$K;D$5$l$^$9!#(B + +$B$I$l$+$N%0%k!<%W$G(B spam $B$,8+$D$+$C$?$i(B ($BHs(B-spam $B%0%k!<%W$K8B$C(B +$B$F$O(B @code{spam-move-spam-nonspam-groups-only} $B$GJQ992D(B)$B!"%0%k!<%W$rH4$1(B +$B$k$H$-$K3h$-$F$$$k(B @code{spam-processors} (@pxref{Spam ELisp Package +Global Variables}) $B$G=hM}$5$l$^$9!#$5$i$K!"8e$G%H%l!<%K%s%0$^$?$O:o=|$9(B +$B$k$?$a$K!"(Bspam $B$O(B @code{spam-process-destination} (@pxref{Spam ELisp +Package Global Variables}) $B$K0\F0$5$;$i$l$^$9!#(BSpam $B$,:F;0=hM}$5$l$k$3$H(B +$B$rK>$^$J$$$J$i$P!"(B@file{gnus-registry.el} $B%Q%C%1!<%8$rFI$_9~$_!"(B +@code{spam-log-to-registry} $BJQ?t$rM-8z$K$7$J$1$l$P$J$j$^$;$s!#$3$N$h$&(B +$B$K(B spam $B$O$I$3$G$b8!=P$5$l=hM}$5$l$^$9!#$=$l$O$[$H$s$I$N?M!9$,!"$=$&$7$?(B +$B$$$H;W$&$3$H$G$9!#(B@code{spam-process-destination} $B$,(B @code{nil} $B$@$C$?>l(B +$B9g!"(Bspam $B$K$O4|8B@Z$l>C5n$N0u$,IU$1$i$l$^$9!#IaDL$=$l$O@5$7$$9T$J$$$G$9!#(B + +Spam $B$,0\F0$G$-$J$$>l9g(B ($BNc$($P(B @acronym{NNTP} $B$N$h$&$JFI$_9~$_@lMQ%P%C(B +$B%/%(%s%I$G$"$k$?$a$K(B)$B!"$=$l$O%3%T!<$5$l$^$9!#(B + +Ham $B%0%k!<%W$G(B @code{ham-marks} $B%Q%i%a!<%?$G7hDj$5$l$k(B ham $B%a!<%k$,8+$D(B +$B$+$C$?$i!"%0%k!<%W$rH4$1$k$H$-$K3h$-$F$$$k(B ham @code{spam-processor} $B$G(B +$B=hM}$5$l$^$9!#$5$i$K!"JQ?t(B @code{spam-process-ham-in-spam-groups} $B$*$h(B +$B$S(B @code{spam-process-ham-in-nonham-groups} $B$K$h$C$F!"$I$3$G8+$D$+$C(B +$B$?(B ham $B$G$b=hM}$G$-$k$h$&$KF0:n$rJQ99$9$k$3$H$,$G$-$^$9!#(BHam $B$,:F;0=hM}(B +$B$5$l$k$3$H$rK>$^$J$$$J$i$P!"(B@file{gnus-registry.el} $B%Q%C%1!<%8$rFI$_9~$_!"(B +@code{spam-log-to-registry} $BJQ?t$rM-8z$K$7$J$1$l$P$J$j$^$;$s!#$3$N$h$&(B +$B$K(B ham $B$OI,MW$J>l9g$@$18!=P$5$l=hM}$5$l$^$9!#$=$l$O$[$H$s$I$N?M!9$,!"$=(B +$B$&$7$?$$$H;W$&$3$H$G$9!#$3$l$K4X$9$k>\:Y$O(B @xref{Spam ELisp Package +Configuration Examples}. + +Ham $B$,0\F0$G$-$J$$>l9g(B ($BNc$($P(B @acronym{NNTP} $B$N$h$&$JFI$_9~$_@lMQ%P%C%/(B +$B%(%s%I$G$"$k$?$a$K(B)$B!"$=$l$O%3%T!<$5$l$^$9!#(B + +$B$3$l$i$N$9$Y$F$,$o$1$,$o$+$i$J$/$F$b!"?4G[$OMW$j$^$;$s(B ($BLuCm(B: $B$G$bLuJ8$,(B +$B@53N$G$O$J$$$+$b$7$l$J$$$N$G!"JQ$@$H;W$C$?$i86J8$r8+$F$M(B :-p)$B!#$9$0$K$=(B +$B$l$O?@7P%$%s%?!<%U%'!<%9>e$K(B Lisp $B$G>.OC$r=q$/$h$&$K<+A3$J$3$H$K$J$j$^(B +$B$9(B@dots{} $B$(!+$4$a$s!"$=$l$K$O$^$@(B 50$BG/Aa$$$G$9$M!#$?$@;d$?$A$r?.Mj$7$F(B +$B2<$5$$!#$=$l$OA0$N%0%k!<%W$KAw$j$^$9!#%G%#(B +$B%U%)%k%H$G$O$=$N%0%k!<%WL>$O(B @samp{spam} $B$G$9$,!"(B +@code{spam-split-group} $B$r%+%9%?%^%$%:$9$k$3$H$,2DG=$G$9!#(B +@code{spam-split-group} $B$NFbMF$,(B @emph{$B@dBP(B} $B%0%k!<%WL>$G$"$k$3$H!"Nc$((B +$B$P(B @samp{your-server} $B$H$$$&(B @code{nnimap} $B%5!<%P!<$N>l9g$O!"(B +@samp{spam} $BJQ?t$,:G=*E*$K(B @samp{nnimap+your-server:spam} $B$K$J$k$3$H$r3N(B +$B$+$a$F2<$5$$!#=>$C$F(B @samp{nnimap+server:spam} $B$H$$$&CM$O4V0c$$$G!"$=$l(B +$B$O$KBP$7(B +$B$F42MF$+$I$&$+$K0MB8$9$k$G$7$g$&!#(B + +$B$^$?!"(B@code{spam-split} $B$K%Q%i%a!<%?!"Nc$((B +$B$P(B @code{spam-use-regex-headers} $B$^$?$O(B @code{"maybe-spam"} $B$rM?$($k$3$H(B +$B$b$G$-$^$9!#$J$<$3$l$,M-MQ$J$N$G$7$g$&$+(B? + +$B$3$l$i$N(B (@code{spam-use-regex-headers} $B$H(B @code{spam-use-blackholes} $B$N(B +$B@_Dj$K$h$k(B) $BJ,3d$N5,B'$r8+$F2<$5$$(B: + +@example + nnimap-split-fancy '(| + (any "ding" "ding") + (: spam-split) + ;; @r{$B%G%#%U%)%k%H$N%a!<%k%\%C%/%9!#(B} + "mail") +@end example + +$B$5$F!"LdBj$O(B ding $B08$F$N%a%C%;!<%8$r$9$Y$F(B ding $B%U%)%k%@!<$KF~$l$h$&$H$7(B +$B$F$$$k$3$H$G$9!#$G$b$=$l$O(B ding $B%a!<%j%s%0%j%9%H08$F$KAw$i$l$?(B spam ($BNc(B +$B$($P(B SpamAssassin $B$H(B @code{spam-use-regex-headers} $B$K$h$C$F8!=P$5$l(B +$B$k(B spam) $B$r5v$7$F$7$^$&$G$7$g$&!#0lJ}!"$$$/$D$+$N(B ding $B08$F$N%a%C%;!<%8(B +$B$O%V%i%C%/%[!<%k%j%9%H$K:\$C$F$$$k%a!<%k%5!<%P!<$+$i$d$C$FMh$k$N$G!"(B +ding $B$N5,B'$h$jA0$K(B @code{spam-split} $B$rH/F0$9$k$3$H$,$G$-$^$;$s!#(B + +SpamAssassin $B%X%C%@!<$K(B ding $B$N5,B'$rCV$-49$($5$;$k$3$H$O$G$-$^$9$,!"B>(B +$B$N$9$Y$F$N(B @code{spam-split} $B$N5,B'(B ($BBhFs$N@55,I=8=%X%C%@!<8!::$r4^(B +$B$`(B) $B$O(B ding $B$N5,B'$N8e$K$J$C$F$7$^$&$G$7$g$&!#(B + +@example + nnimap-split-fancy '(| +;;; @r{@code{spam-use-regex-headers} $B$G8!=P$5$l$?$9$Y$F$N(B spam $B$O(B @samp{regex-spam} $B$X!#(B} + (: spam-split "regex-spam" 'spam-use-regex-headers) + (any "ding" "ding") +;;; @r{spam-split $B$G8!=P$5$l$?B>$N$9$Y$F$N(B spam $B$O(B @code{spam-split-group} $B$X!#(B} + (: spam-split) + ;; @r{$B%G%#%U%)%k%H$N%a!<%k%\%C%/%9!#(B} + "mail") +@end example + +$B4pK\E*$K!"$3$l$OFC$K$"$J$?$NI,MW$K0MB8$7$?FCDj$N(B @code{spam-split} $B8!(B +$B::$r5/F0$5$;!"$=$l$i$N8!::$N7k2L$OFCDj$N(B spam $B%0%k!<%W$r;X$7<($7$^$9!#$9(B +$B$Y$F$N%a!<%k$r$9$Y$F$N(B spam $B%F%9%H$KEj$2$kI,MW$O$"$j$^$;$s!#$3$l$,NI$$JL(B +$B$NM}M3$O!"5,B'$r;}$C$F$$$k%a!<%j%s%0%j%9%H$X$N%a%C%;!<%8$KBP$7$F!";q8;=8(B +$BLsE*$J%V%i%C%/%[!<%k!&%A%'%C%/$rr7o(B +$BIU$-$NFI$_9~$_$,9T$o$l$k$+$i$G$9!#(B + +@emph{@acronym{IMAP} $BMxMQl9g$O!"%V!<(B +$B%kJQ?t(B @code{nnimap-split-download-body} $B$,@_Dj$5$l$kI,MW$,$"$j$^$9!#%G%#(B +$B%U%)%k%H$G$O!"(Bnnimap $B%P%C%/%(%s%I$O%a%C%;!<%8%X%C%@!<$@$1$rpJs(B +$B$rF@$k(B) $B$N$h$&$J(B @emph{$BE}7WE*$J(B} $B_I2a4o$r;H$&$J$i$P!"$3$NJQ?t$O<+F0E*$K(B +$B@_Dj$5$l$k$G$7$g$&!#$=$l$O(B @acronym{IMAP} $B$NF0:n$rCY$/$7$F$7$^$&$N$G!"E}(B +$B7WE*$G$O$J$$%P%C%/%(%s%I$KBP$7$F%G%#%U%)%k%H$G$O@_Dj$5$l$F$$$^$;$s!#(B + +@xref{Splitting in IMAP}. + +@node Spam ELisp Package Global Variables +@subsubsection Spam ELisp Package Global Variables +@cindex spam filtering +@cindex spam filtering variables +@cindex spam variables +@cindex spam + +@vindex gnus-spam-process-newsgroups +Ham $B%W%m%;%C%5!<$H(B spam $B%W%m%;%C%5!<$N35G0$OHs>o$K=EMW$G$9!#$"$k%0%k!<%W(B +$B$N(B ham $B%W%m%;%C%5!<$H(B spam $B%W%m%;%C%5!<$O!"(B@code{spam-process} $B%0%k!<%W(B +$B%Q%i%a!<%?$+(B @code{gnus-spam-process-newsgroups} $BJQ?t$G@_Dj$9$k$3$H$,$G(B +$B$-$^$9!#8e$GF1MM$N%a!<%k$r(B spam $B$G$O$J$$$H2r\$7$/$O8D!9$N(B spam $B%W(B +$B%m%;%C%5!<$N9`$r;2>H$7$F2<$5$$!#(B + +@vindex gnus-spam-newsgroup-contents +Gnus $B$O$"$J$?$,e$N(B spam $B%0(B +$B%k!<%W$K(B spam $B5-;v$r=8$a$F!"JQ?t(B @code{spam-junk-mailgroups} $B$rE,@Z$K@_(B +$BDj$b$7$/$O%+%9%?%^%$%:$7$J$1$l$P$J$j$^$;$s!#$^$?!"(Bspam $B$r4^$a$k%0%k!<%W(B +$B$r!"$=$N%0%k!<%W%Q%i%a!<(B +$B%?(B @code{spam-contents} $B$r(B @code{gnus-group-spam-classification-spam} $B$K(B +$B@_Dj$9$k$+!"$^$?$O$=$l$KBP1~$9$kJQ(B +$B?t(B @code{gnus-spam-newsgroup-contents} $B$r%+%9%?%^%$%:$9$k$3$H$K$h$C$F@k(B +$B8@$9$k$3$H$,$G$-$^$9!#(B@code{spam-contents} $B%0%k!<%W%Q%i%a!<%?(B +$B$H(B @code{gnus-spam-newsgroup-contents} $BJQ?t$O!"$=$l$i$NC$;$P!"$=$N8e$=$N%0%k!<%W$KF~$C$?$H(B +$B$-$K!"$=$l$K$O(B spam $B0u$OIU$-$^$;$s!#$?$@(B +$B$7(B @code{spam-mark-only-unseen-as-spam} $B%Q%i%a!<%?$r(B @code{nil} $B$K$9$l$P!"(B +$B$=$&$$$&F0:n$r$d$a$5$;$k!"$D$^$j$9$Y$F$NL$FI%a%C%;!<%8$K(B spam $B0u$,IU$/$h(B +$B$&$K$9$k$3$H$,$G$-$^$9!#$=$N%0%k!<%W$N35N,%P%C%U%!$K$$$k$H$-!"$d$C$Q(B +$B$j(B spam $B$G$O$J$+$C$?$9$Y$F$N(B $B5-;v$+$i(B @samp{$} $B0u$r>C$5$J$1$l$P$J$j$^$;(B +$B$s!#(B@samp{$} $B0u$r>C$9$K$O(B @kbd{M-u} $B$G$=$N5-;v$r(B ``$BL$FI(B'' $B$K$9$k$+!"$"$k(B +$B$$$O(B @kbd{d} $B$G(B spam $B$G$O$J$$$b$N$H$7$FFI$s$@$3$H$r@k8@$9$l$PNI$$$G$7$g(B +$B$&!#%0%k!<%W$rH4$1$k$H$-!"$9$Y$F$N(B spam $B0u(B (@samp{$}) $B$,IU$$$?5-;v(B +$B$O(B spam $B%W%m%;%C%5!<$KAw$i$l!"$=$l$i$r(B spam $B$NI8K\$H$7$F3X=,$7$^$9!#(B + +$B%a%C%;!<%8$OB>$N$$$m$$$m$JJ}K!$K$h$C$F$b>C5n$5$l$k$+$b$7$l$^$;$s$7!"(B +@code{ham-marks} $B%0%k!<%W%Q%i%a!<%?$,8e=R$N$h$&$K>e=q$-$5$l$J$1$l$P!"Dc(B +$B$$%9%3%"$N$?$a$N(B @samp{Y} $B0u$HF1MM!"%G%#%U%)%k%H$N4{FI$+L@<(E*$J>C5n$N$?(B +$B$a$N(B @samp{R} $B$H(B @samp{r} $B0u!"<+F0$^$?$OL@<(E*$J:o=|$N$?$a(B +$B$N(B @samp{X} $B$H(B @samp{K} $B0u!"$=$l$i$9$Y$F$,(B spam $B$H$OL54X78$G$"$k$H2rDj$O!"K\J*$N(B spam $B$r8!=P$9$k$?$a$K>C5n(B (kill) $B%U%!%$%k$+%9(B +$B%3%"%U%!%$%k$rFCJL$K;H$C$F$$$k>l9g$O4V0c$C$F$$$k$+$b$7$l$^$;$s!#$=$&$G$"(B +$B$l$P(B @code{ham-marks} $B%0%k!<%W%Q%i%a!<%?$rD4@0$9$k$Y$-$G$9!#(B + +@defvar ham-marks +$B$3$N%0%k!<%W$^$?$O%H%T%C%/%Q%i%a!<%?$r(B ham $B$G$"$k$H2rC5n(B (deleted)$B!"4{FI(B (read)$B!"(B +$B:o=|(B (killed)$B!"(Bkill $B%U%!%$%k$K$"$k$b$N(B (kill-filed) $B$*$h$SDc$$%9%3(B +$B%"(B (low-score$B!"4{FI$@$1$l$I$b(B spam $B$G$O$J$$$H9M$($k(B) $B0u$N%j%9%H$G$9!#(B +Ham $B0u$N%j%9%H$K2D;k(B (tick) $B0u$r4^$a$k$3$H$,LrN)$D$3$H$b$"$j$^$9!#L$FI0u(B +$B$r(B ham $B0u$K$9$k$3$H$O!"DL>o$=$l$,J,N`$,B-$j$F$$$J$$$3$H$rI=$9$N$G!"4+$a(B +$B$i$l$^$;$s!#$7$+$7!"$"$J$?$,$=$l$r9T$J$&$3$H$O$G$-$k$7!";d$?$A$KITK~$O$"(B +$B$j$^$;$s!#(B +@end defvar + +@defvar spam-marks +$B$3$N%0%k!<%W$^$?$O%H%T%C%/%Q%i%a!<%?$r(B spam $B$G$"$k$H2r!C5n$r9T$J$&$H!"$?$^$K$=$l$O8+$F$$$J$$(B @samp{K} $B0u$,IU(B +$B$$$?5-;v$G=*$o$k$+$b$7$l$^$;$s!#$=$7$F$=$l$i$O6vA3$K(B spam $B$r4^$s$G$$$k$+(B +$B$b$7$l$^$;$s!#:G$bNI$$$N$O!"K\Ev$N(B spam $B$K(B @samp{$} $B$,IU$$$F$$$F!"B>$K2?(B +$B$bL5$$$3$H$r3N$+$a$k$3$H$G$9!#(B + +@vindex gnus-ham-process-destinations +@emph{Spam} $B%0%k!<%W$rH4$1$k$H$-$K!"(Bspam $B0u$,IU$$$F$$$k$9$Y$F$N5-;v(B +$B$K$O(B spam $B%W%m%;%C%5!<$G=hM}$7$?8e$G4|8B@Z$l>C5n$N0u$,IU$1$i$l$^$9!#$3$l(B +$B$O(B @emph{$BL$J,N`(B} $B$^$?$O(B @emph{ham} $B%0%k!<%W$KBP$7$F$O9T$J$o$l$^$;$s!#$5(B +$B$i$K(B spam $B%0%k!<%W$K$"$k$I$N(B @strong{ham} $B5-;v$b!"(B +@code{ham-process-destination} $B%0%k!<%W%Q%i%a!<%?(B +$B$+(B @code{gnus-ham-process-destinations} $BJQ?t$N$I$A$i$+$K9gCW$9$k>l=j$K0\(B +$B$5$l$^$9!#$=$l$i$O%0%k!<%WL>$K9gCW$9$k@55,I=8=$N%j%9%H$G(B +$B$9(B (@kbd{M-x customize-variable @key{RET} +gnus-ham-process-destinations} $B$K$h$C$F$3$NJQ?t$r%+%9%?%^%$%:$9$k$N$,:G(B +$B$b4JC1$G$9(B)$B!#JQ?t$r$l$N%0%k!<%WL>$N%j%9%H$OIaDL$N(B Lisp $B$N(B list $B$G$9!#(B +@code{ham-process-destination} $B%Q%i%a!<%?$,@_Dj$5$l$F$$$J$$$H!"(Bham $B5-;v(B +$B$O$=$3$KN1$aCV$+$l$^$9!#(B +@code{spam-mark-ham-unread-before-move-from-spam-group} $B%Q%i%a!<%?$,@_Dj(B +$B$5$l$F$$$k$H!"(Bham $B5-;v$O0\F0$5$;$i$l$kA0$KL$FI$N0u$,IU$1$i$l$^$9!#(B + +Ham $B$,0\F0$G$-$J$$>l9g(B ($BNc$($P(B @acronym{NNTP} $B$N$h$&$JFI$_9~$_@lMQ%P%C%/(B +$B%(%s%I$G$"$k$?$a$K(B)$B!"$=$l$O%3%T!<$5$l$^$9!#(B + +$B%0%k!<%W$^$?$O@55,I=8=$4$H$KJ#?t$N0\F0@h$r;XDj$G$-$k$3$H$KCmL\$7$F2<$5$$(B! +$B$3$l$K$h$C$F(B ham $B5-;v$r@55,$N%a!<%k%0%k!<%W$H(B @emph{ham $B%H%l!<%K%s%0(B} $B%0(B +$B%k!<%W$KAw$k$3$H$,$G$-$^$9!#(B + +@emph{Ham} $B%0%k!<%W$rH4$1$k$H$-$K!"(Bham $B0u$,IU$$$F$$$k$9$Y$F$N5-;v(B +$B$O(B ham $B%W%m%;%C%5!<$KAw$i$l!"$=$l$i$r(B spam $B$G$O$J$$I8K\$H$7$F3X=,$7$^$9!#(B + +@vindex spam-process-ham-in-spam-groups +$BJQ?t(B @code{spam-process-ham-in-spam-groups} $B$O%G%#%U%)%k%H$G(B +$B$O(B @code{nil} $B$G$9!#(BSpam $B%0%k!<%W$G8+$D$+$C$?(B ham $B$,%W%m%;%C%5!<$KAw$i$l(B +$B$k$h$&$K$7$?$$>l9g$O(B @code{t} $B$K$7$F2<$5$$!#DL>o$3$l$O9T$J$o$l$^$;$s!#$"(B +$B$J$?$,<+J,$G(B ham $B5-;v$r(B ham $B%0%k!<%W$KAw$C$F!"$=$3$G=hM}$9$k$3$H$,4|BT$5(B +$B$l$F$$$^$9!#(B + +@vindex spam-process-ham-in-nonham-groups +$BJQ?t(B @code{spam-process-ham-in-nonham-groups} $B$O%G%#%U%)%k%H$G(B +$B$O(B @code{nil} $B$G$9!#(BHam $B$G$O$J$$(B (spam $B$^$?$OL$J,N`$N(B) $B%0%k!<%W$G8+$D$+$C(B +$B$?(B ham $B$,%W%m%;%C%5!<$KAw$i$l$k$h$&$K$7$?$$>l9g$O(B @code{t} $B$K$7$F2<$5$$!#(B +$BDL>o$3$l$O9T$J$o$l$^$;$s!#$"$J$?$,<+J,$G(B ham $B5-;v$r(B ham $B%0%k!<%W$KAw$C$F!"(B +$B$=$3$G=hM}$9$k$3$H$,4|BT$5$l$F$$$^$9!#(B + +@vindex gnus-spam-process-destinations +@emph{Ham} $B$^$?$O(B @emph{$BL$J,N`(B} $B%0%k!<%W$rH4$1$k$H$-$K!"$9$Y$F(B +$B$N(B @strong{spam} $B5-;v$O!"(B@code{spam-process-destination} $B%0%k!<%W%Q%i%a!<(B +$B%?$+(B @code{gnus-spam-process-destinations} $BJQ?t$N$I$A$i$+$K9gCW$9$k>l=j(B +$B$K0\$5$l$^$9!#$=$l$i$O%0%k!<%WL>$K9gCW$9$k@55,I=8=$N%j%9%H$G(B +$B$9(B (@kbd{M-x customize-variable @key{RET} +gnus-spam-process-destinations} $B$K$h$C$F$3$NJQ?t$r%+%9%?%^%$%:$9$k$N$,:G(B +$B$b4JC1$G$9(B)$B!#JQ?t$r$l$N%0%k!<%WL>$N%j%9%H$OIaDL$N(B Lisp $B$N(B list $B$G$9!#(B +@code{spam-process-destination} $B%Q(B +$B%i%a!<%?$,@_Dj$5$l$F$$$J$$$H!"(Bspam $B5-;v$OC1$K4|8B@Z$l>C5n$5$l$^$9!#%0%k!<(B +$B%WL>$O40A47A$G$"$k$3$H!"$9$J$o$A%0%k!<%W%P%C%U%!$G%0%k!<%WL>$NA0(B +$B$K(B @samp{nntp:servername} $B$N$h$&$J$b$N$,8+$($k>l9g$O!"$3$3$G$b$=$l$r;H$&(B +$BI,MW$,$"$j$^$9!#(B + +Spam $B$,0\F0$G$-$J$$>l9g(B ($BNc$($P(B @acronym{NNTP} $B$N$h$&$JFI$_9~$_@lMQ%P%C(B +$B%/%(%s%I$G$"$k$?$a$K(B)$B!"$=$l$O%3%T!<$5$l$^$9!#(B + +$B%0%k!<%W$^$?$O@55,I=8=$4$H$KJ#?t$N0\F0@h$r;XDj$G$-$k$3$H$KCmL\$7$F2<$5$$(B! +$B$3$l$K$h$C$F(B spam $B5-;v$r@55,$N%a!<%k%0%k!<%W(B +$B$H(B @emph{spam $B%H%l!<%K%s%0(B} $B%0%k!<%W$KAw$k$3$H$,$G$-$^$9!#(B + +@vindex spam-log-to-registry +Ham $B$H(B spam $B$K4X$9$kLdBj$O!"(BGnus $B$,%G%#%U%)%k%H$G$O$3$N=hM}$rDI@W$7$F$/(B +$B$l$J$$$3$H$G$9!#=hM}$5$l$?5-;v$rDI@W$7!"$+$DJ#?t2s$K$o$?$C$F=hM}$9$k$3$H(B +$B$r2sHr$9$k$?$a$K(B @code{spam.el} $B$,(B @code{gnus-registry.el} $B$r;H$&$h$&$K!"(B +@code{spam-log-to-registry} $BJQ?t$rM-8z$K$7$F$/$@$5$$!#EPO??t$r@)8B$9$k$H!"(B +$B@)8B$,L5$$>l9g$N$h$&$KF0:n$7$J$$$3$H$r3P$($F$*$$$F2<$5$$!#(B + +@vindex spam-mark-only-unseen-as-spam +Spam $B%0%k!<%W$K$"$k!"$^$@FI$^$l$?$3$H$,L5$$5-;v$@$1$K(B spam $B$N0u$rIU$1$?(B +$B$$>l9g$O!"$3$NJQ?t$r%;%C%H$7$F2<$5$$!#%G%#%U%)%k%H$G$O%;%C%H$5$l$F$$$^$9!#(B +$B$3$l$r(B @code{nil} $B$K$9$k$H!"L$FI$N5-;v$K$b(B spam $B0u$,IU$1$i$l$^$9!#(B + +@vindex spam-mark-ham-unread-before-move-from-spam-group +Ham $B$,(B spam $B%0%k!<%W$+$i0\F0$5$l$kA0$K0u$r>C$7$?$$>l9g$O!"$3$NJQ?t$r%;%C(B +$B%H$7$F2<$5$$!#$3$l$O(B ham $B$K0u$rIU$1$k$?$a$K2D;k(B (tick) $B0u$N$h$&$J$b$N$r(B +$B;H$&>l9g$K!"$H$F$bLr$KN)$A$^$9!#5-;v$O$"$?$+$b$=$l$,%a!<%k%5!<%P$r=P$?$P(B +$B$+$j$N$h$&$K!"L50u$G(B @code{ham-process-destination} $B$KCV$+$l$k$G$7$g$&!#(B + +@vindex spam-autodetect-recheck-messages +$B$3$NJQ?t$O(B @code{spam.el} $B$,(B spam $B$N<+F08!=P$r9T$J$&>l9g$K!"$^$@FI$^$l$?(B +$B$3$H$,L5$$5-;v$@$1!"$^$?$O$9$Y$F$NL$FI5-;v$N(B spam $B8!::$r9T$J$&$+$I$&$+$r(B +$B;X<($7$^$9!#$3$l$O$=$N$^$^$K$7$F$*$/$3$H$r4+$a$^$9!#(B + +@node Spam ELisp Package Sorting and Score Display in Summary Buffer +@subsubsection Spam ELisp Package Sorting and Score Display in Summary Buffer +@cindex spam scoring +@cindex spam sorting +@cindex spam score summary buffer +@cindex spam sort summary buffer +@cindex spam + +$B35N,%P%C%U%!$K(B spam $B$N%9%3%"$rI=<($9$k$3$H$,$G$-$^$9!#$^$?!"$=$l$i(B +$B$N(B spam $B$N%9%3%"$K$h$C$F!"5-;v$r%=!<%H$9$k$3$H$b$G$-$^$9!#(B + +$B:G=i$K!"$I$N%P%C%/%(%s%I$r;H$&$+$r7h$a$kI,MW$,$"$j$^$9!#(B +@code{spam-use-spamassassin}$B!"(B@code{spam-use-spamassassin-headers} $B$^$?(B +$B$O(B @code{spam-use-regex-headers} $B%P%C%/%(%s%I$r;H$&>l9g!"(B +@code{X-Spam-Status} $B%X%C%@!<$,;H$o$l$^$9!#(B@code{spam-use-bogofilter} $B$r(B +$B;H$&>l9g$O!"(B@code{X-Bogosity} $B$,;H$o$l$^$9!#(B@code{spam-use-crm114} $B$r;H(B +$B$&$N$J$i$P!"(BCRM114 $B%9%3%"!&%U%)!<%^%C%H$K9gCW$9$k!"$$$:$l$+$N%X%C%@!<$,(B +$B;H$o$l$^$9!#(B@file{spam.el} $B$r%m!<%I$9$k(B @emph{$BA0(B} $B$K!"E,@Z$J%P%C%/%(%s%I(B +$BJQ?t$r(B t $B$K@_Dj$9$k8B$j!"$&$^$/$$$/$G$7$g$&!#(B@code{spam.el} $B$O!"(BGnus $B$,(B +$BFbItE*$KI,MW$H$9$k%X%C%@!<$N%j%9%H$K!"@5$7$$%X%C%@!<$r<+F0E*$KDI2C$7$^$9!#(B + +$B35N,%P%C%U%!$K(B spam $B$N%9%3%"$rI=<($5$;$k$K$O!"$3$N9T$r(B @code{gnus.el} $B%U%!(B +$B%$%k$K2C$($F2<$5$$(B ($BCm(B: @code{spam.el} $B$O%G%#%U%)%k%H$G$O$=$l$r9T$J$o$J(B +$B$$$N$G!"$"$J$?$,;}$C$F$$$k$+$b$7$l$J$$!"B8:_$9$k$I$s$J(B @code{S} $B%U%)!<%^%C(B +$B%H$r$b>e=q$-$7$^$;$s(B)$B!#(B + +@lisp +(defalias 'gnus-user-format-function-S 'spam-user-format-function-S) +@end lisp + +$B$G$O!"35N,%P%C%U%!$N9T=qK!;EMM(B (summary line format) $B$,(B @code{%uS} $B$r;H(B +$B$&$h$&$K@_Dj$7$^$7$g$&!#0J2<$O(B spam $B$N%9%3%"$r(B 5$B7e$N%U%#!<%k%I$KI=<($9$k(B +$BNc$G$9(B: + +@lisp +(setq gnus-summary-line-format + "%U%R %10&user-date; $%5uS %6k %B %(%4L: %*%-25,25a%) %s \n") +@end lisp + +$B:G8e$K!"(Bspam $B$N>uBV$K$h$k%=!<%H$rA4%0%k!<%W$G9T$J$o$;$k$h$&$K$7$^$7$g$&(B: + +@lisp +(setq + gnus-show-threads nil + gnus-article-sort-functions + '(spam-article-sort-by-spam-status)) +@end lisp + +$B%0%k!<%WKh$K9T$J$o$;$?$$>l9g$O(B @ref{Sorting the Summary Buffer} $B$r;2>H$7(B +$B$F2<$5$$!#(B + +@node Spam ELisp Package Configuration Examples +@subsubsection Spam ELisp Package Configuration Examples +@cindex spam filtering +@cindex spam filtering configuration examples +@cindex spam configuration examples +@cindex spam + +@subsubheading Ted $B$N@_Dj(B + +From Ted Zlatanov . +@example + +;; @r{@code{gnus-registry-split-fancy-with-parent} $B$H(B spam $B$N<+F08!=P$N$?$a!#(B} +;; @r{$B>\:Y$O(B @file{gnus-registry.el} $B$r;2>H!#(B} +(gnus-registry-initialize) +(spam-initialize) + +;; @r{$B;d$O(B spam $B0u$rIU$1$k$N$K(B @kbd{C-s} $B$r9%$`!#(B} +(define-key gnus-summary-mode-map "\C-s" 'gnus-summary-mark-as-spam) + +(setq + spam-log-to-registry t ;; @r{Spam $B$N<+F08!=P$N$?$a!#(B} + spam-use-BBDB t + spam-use-regex-headers t ;; @r{X-Spam-Flag (SpamAssassin) $B$r$D$+$^$($k!#(B} + ;; @r{$BL>A0$K(B @samp{spam} $B$r4^$`$9$Y$F$N%0%k!<%W$K$O(B spam $B5-;v$,$"$k!#(B} + gnus-spam-newsgroup-contents '(("spam" gnus-group-spam-classification-spam)) + ;; @r{$B$3$l$i$N(B docstring $B$r;2>H!#(B} + spam-move-spam-nonspam-groups-only nil + spam-mark-only-unseen-as-spam t + spam-mark-ham-unread-before-move-from-spam-group t + nnimap-split-rule 'nnimap-split-fancy + ;; @r{$B$"$J$?$N@_Dj$KDI2C$9$kA0$K!"$3$l$,2?$r$9$k$+M}2r$;$h(B!} + nnimap-split-fancy '(| + ;; @r{References $B$r?F$^$GC)$C$F$=$l$i$N%0%k!<%W$rF~$l$k!#(B} + (: gnus-registry-split-fancy-with-parent) + ;; @r{$B$3$l$O%5!<%P!e$G!";d$O(B SpamAssassin $B$,(B spam $B$rG'<1$9$k(B} +;; @r{$B%H%l!<%K%s%0$N$?$a$K(B @samp{train} $B%0%k!<%W$r!"(Bham $B$rG'<1$9$k%H%l!<(B} +;; @r{$B%K%s%0$N$?$a$K(B @samp{trainham} $B%0%k!<%W$r;H$$$^$9!#$G$b(B Gnus $B$O$=$&(B} +;; @r{$B$$$&$3$H$O$d$C$F$/$l$^$;$s!#(B} + +@end example + +@subsubheading $B%5!<%P!<>e$N(B IMAP $B%5!<%P!<$G!"E}7WE*$J_I2a4o$H(B @code{spam.el} $B$r;H$&(B +From Reiner Steib . + +$B;d$N%W%m%P%$%@$O(B (@acronym{IMAP}) $B%a!<%k%5!<%P!<>e$G(B (@acronym{DCC} $B$HO"(B +$B78$7$?(B) bogofilter $B$r2TF/$5$;$F$$$^$9!#G'<1$5$l(B +$B$?(B spam $B$O(B @samp{spam.detected} $B$X9T$-!";D$j$K$ODL>o$N_I2a5,B'$,E,MQ$5$l(B +$B$k!"(B $B$9$J$o$A(B @samp{some.folder} $B$+(B @samp{INBOX} $B$K9T$-$^$9!#9NDj$N<:GT(B +$B$"$k$$$OH]Dj$N%H%l!<%K%s%0$O!"(B@samp{training.ham} $B$^$?(B +$B$O(B @samp{training.spam} $B$=$l$>$l$K5-;v$r%3%T!<$9$k$+0\F0$5$;$k$3$H$K$h$C(B +$B$F9T$J$o$l$^$9!#%5!<%P!<>e$N(B cron $B%8%g%V$,!"$=$l$i$rE,@Z$J(B ham $B$^$?(B +$B$O(B spam $B%*%W%7%g%s$H$H$b$K(B bogofilter $B$KM?$(!"(B@samp{training.ham} $B$*$h(B +$B$S(B @samp{training.spam} $B%U%)%k%@$+$i$=$l$i$r:o=|$7$^$9!#(B + +$B0J2<$N(B @code{gnus-parameters} $B$N9`$K$h$C$F!"(B@code{spam.el} $B$O$[$H$s$I$N(B +$B;E;v$r;d$N$?$a$K$3$J$7$^$9(B: + +@lisp + ("nnimap:spam\\.detected" + (gnus-article-sort-functions '(gnus-article-sort-by-chars)) + (ham-process-destination "nnimap:INBOX" "nnimap:training.ham") + (spam-contents gnus-group-spam-classification-spam)) + ("nnimap:\\(INBOX\\|other-folders\\)" + (spam-process-destination . "nnimap:training.spam") + (spam-contents gnus-group-spam-classification-ham)) +@end lisp + +@itemize + +@item @b{The Spam folder:} + +@samp{spam.detected} $B%U%)%k%@$K$*$$$F!";d$O9NDj$N<:GT(B ($B$9$J$o$A!"(B +bogofilter $B$+(B DCC $B$,(B spam $B$G$"$k$H8m$C$FH=Dj$7$?@5Ev$J%a!<%k(B) $B$N%A%'%C%/(B +$B$r$7$J$1$l$P$J$j$^$;$s!#(B + +@code{gnus-group-spam-classification-spam} $B$N9`$N$?$a$K!"$9$Y$F$N%a%C%;!<(B +$B%8$K$O(B spam $B$N0u(B (@code{$}) $B$,IU$1$i$l$^$9!#9NDj$K<:GT$7$?$b$N$r8+$D$1$?(B +$B$i!";d$O5-;v$K$$$/$D$+$NB>$N(B ham $B0u(B (@code{ham-marks}, @ref{Spam ELisp +Package Global Variables}) $B$rIU$1$^$9!#%0%k!<%W$r=P$k$H$-!"$=$l$i$N5-;v(B +$B$O(B @samp{INBOX} ($B;d$,5-;v$rCV$$$F$*$-$?$$$H$3(B +$B$m(B) $B$H(B @samp{training.ham} (bogofilter $B$N%H%l!<%K%s%0MQ(B) $B$NN>J}$N%0%k!<(B +$B%W$K%3%T!<$5$l!"(B@samp{spam.detected} $B%U%)%k%@$+$i:o=|$5$l$^$9!#(B + +@code{gnus-article-sort-by-chars} $B$N9`$O!";d$N<:GT$7$?9NDj$N8!=P$rC1=c$K(B +$B$7$^$9!#;d$O!"$9$Y$F;w$?%5%$%:$N!"$?$/$5$s$N%o!<%`(B (sweN, @dots{}) $B$r$N4V0c$C$?9NDj(B +$B$r8+$D$1$d$9$/$J$k$N$G$9!#(B($B$b$A$m$s87L)$K$O%o!<%`$O(B @i{spam} +(@acronym{UCE}, @acronym{UBE}) $B$G$O$"$j$^$;$s!#$H$b$"$l!"$=$l$i$NMW$i$J(B +$B$$%a!<%k$r_I2a$9$k$N$K(B bogofilter $B$O;d$K$H$C$FM%=($JF;6q$G$9!#(B) + +@item @b{Ham folders:} + +$B;d$N(B ham $B%U%)%k%@$G!"G'<1$5$l$J$+$C$?(B spam $B%a!<%k(B ($BH]Dj$N<:GT(B) $B$r8+$?$H(B +$B$-$O$$$D$G$b!";d$OC1$K(B @kbd{S x} (@code{gnus-summary-mark-as-spam}) $B$rC!(B +$B$-$^$9!#%0%k!<%W$r=P$k$H$-!"$=$l$i$N%a%C%;!<%8$O(B @samp{training.spam} $B$K(B +$B0\$5$l$^$9!#(B +@end itemize + +@subsubheading @code{spam-report.el} $B$G(B Gmane $B%0%k!<%W$N(B spam $B$rJs9p$9$k(B + +From Reiner Steib . + +$B0J2<$N(B @code{gnus-parameters} $B$KG<$a$?9`L\$K$h$C$F!"(B@kbd{S x} +(@code{gnus-summary-mark-as-spam}) $B$G(B @code{gmane.*} $B%0%k!<%W$N(B spam $B5-(B +$B;v$K0u$rIU$1!"%0%k!<%W$r=P$k$H$-$K(B Gmane $B$KJs9p$7$^$9(B: + +@lisp + ("^gmane\\." + (spam-process (gnus-group-spam-exit-processor-report-gmane))) +@end lisp + +$B2C$($F!";d$O(B news.gmane.org $B$+$i$G$O$J$/%m!<%+%k%K%e!<%9%5!<(B +$B%P!<(B (leafnode) $B$rDL$7$F5-;v$rFI$s$G$$$k$N$G!"(B +@code{(setq spam-report-gmane-use-article-number nil)} $B$r;H$C$F$$$^$9!#(B +$B$D$^$j!"5-;vHV9f$,(B news.gmane.org $B$K$*$1$k$b$N$H0[$J$k$N$G!"@5$7$$5-;vHV(B +$B9f$r8+$D$1$k$?$a$K(B @code{spam-report.el} $B$K(B @code{X-Report-Spam} $B%X%C%@!<(B +$B$r8!::$5$;$J$1$l$P$J$j$^$;$s!#(B + +@node Blacklists and Whitelists +@subsubsection $B%V%i%C%/%j%9%H$H%[%o%$%H%j%9%H(B +@cindex spam filtering +@cindex whitelists, spam filtering +@cindex blacklists, spam filtering +@cindex spam + +@defvar spam-use-blacklist + +$BF~$C$F$/$k%a!<%k$rJ,3d$9$k$H$-$K%V%i%C%/%j%9%H$r;H$$$?$$>l9g$O!"$3$NJQ?t(B +$B$r(B @code{t} $B$K@_Dj$7$F2<$5$$!#Aw?.l9g$O!"$3$NJQ?t(B +$B$r(B @code{t} $B$K@_Dj$7$F2<$5$$!#Aw?.l9g$O!"$3$N(B +$BJQ?t$r(B @code{t} $B$K$7$F2<$5$$!#Cm0U$7$F;H$C$F2<$5$$!#(B + +@end defvar + +@defvar gnus-group-spam-exit-processor-blacklist + +$B$3$N%7%s%\%k$r!"%0%k!<%W%Q%i%a!<%?$N%+%9%?%^%$%:$K$h$C$F%0%k!<%W(B +$B$N(B @code{spam-process} $B%Q%i%a!<%?$K2C$($k$+!"$^$?(B +$B$O(B @code{gnus-spam-process-newsgroups} $BJQ?t$K2C$($F2<$5$$!#$3$N%7%s%\%k(B +$B$,%0%k!<%W$N(B @code{spam-process} $B%Q%i%a!<%?$K2C$($i$l$k$H!"(Bspam $B0u$,IU$$(B +$B$?5-;v$NAw?.)$7$^$9!#$9$Y$FF1Ey$KF0(B +$B:n$9$k$3$H$OJ]>Z$5$l$^$9!#(B + +@end defvar + +@defvar gnus-group-ham-exit-processor-whitelist + +$B$3$N%7%s%\%k$r!"%0%k!<%W%Q%i%a!<%?$N%+%9%?%^%$%:$K$h$C$F%0%k!<%W(B +$B$N(B @code{spam-process} $B%Q%i%a!<%?$K2C$($k$+!"$^$?(B +$B$O(B @code{gnus-spam-process-newsgroups} $BJQ?t$K2C$($F2<$5$$!#$3$N%7%s%\%k(B +$B$,%0%k!<%W$N(B @code{spam-process} $B%Q%i%a!<%?$K2C$($i$l$k$H!"(Bham $B0u$,IU$$(B +$B$?(B @emph{ham} $B%0%k!<%W$N5-;v$NAw?.)$7$^$9!#$9$Y$FF1Ey$KF0(B +$B:n$9$k$3$H$OJ]>Z$5$l$^$9!#(B + +@end defvar + +$B%V%i%C%/%j%9%H$O!"$"$J$?$,(B spam $B$NAw?.@\(B @code{spam-whitelist} $B$H(B @code{spam-blacklist} $BJQ?t$G%+%9%?%^%$%:(B +$B$9$k$3$H$,$G$-$^$9!#%[%o%$%H%j%9%H$H%V%i%C%/%j%9%H$N%U%!%$%k$O!"%G%#%U%)(B +$B%k%H$G$O(B @code{spam-directory} $B$N%G%#%l%/%H%j$K$"$j!"$=$l$>(B +$B$l(B @file{whitelist} $B$H(B @file{blacklist} $B$H$$$&L>A0$,IU$1$i$l$^$9!#(B + +@node BBDB Whitelists +@subsubsection BBDB $B%[%o%$%H%j%9%H(B +@cindex spam filtering +@cindex BBDB whitelists, spam filtering +@cindex BBDB, spam filtering +@cindex spam + +@defvar spam-use-BBDB + +@code{spam-use-whitelist} (@pxref{Blacklists and Whitelists}) $B$K;w$F$$$^(B +$B$9$,!"%[%o%$%H%j%9%H$N%"%I%l%9$N8;$H$7$F!"@55,I=8=$G$O$J$$(B BBDB $B$r;H$$$^(B +$B$9!#(B@code{spam-use-BBDB} $B$r$A$c$s$HF0:n$5$;$k$K$O(B BBDB $B$r(B load $B$7$J$1$l(B +$B$P$J$j$^$;$s!#$=$NAw?.l9g$O!"$3$NJQ?t(B +$B$r(B @code{t} $B$K$7$F2<$5$$!#Cm0U$7$F;H$C$F2<$5$$!#(BBBDB $B$K:\$C$F$$$kAw?.$N$9$Y$F$O(B spammers $B$H$7$FJ,N`$5$l$^$9!#(B + +@code {spam.el} $B$K4X$9$k8B$j$O!"(B@code{spam-use-BBDB} $B$NJLL>$H$7(B +$B$F(B @code{spam-use-BBDB-exclusive} $B$r;H$&$3$H$,$G$-$^$9$,!"$=$l$OJL$N%P%C(B +$B%/%(%s%I$G$O$"$j$^$;$s!#(B@code{spam-use-BBDB-exclusive} $B$r(B @code{t} $B$K@_(B +$BDj$9$l$P!"(BBBDB $B$K$h$kJ,3d$O$9$Y$FGSB>E*$K$J$j$^$9!#(B + +@end defvar + +@defvar gnus-group-ham-exit-processor-BBDB + +$B$3$N%7%s%\%k$r!"%0%k!<%W%Q%i%a!<%?$N%+%9%?%^%$%:$K$h$C$F%0%k!<%W(B +$B$N(B @code{spam-process} $B%Q%i%a!<%?$K2C$($k$+!"$^$?(B +$B$O(B @code{gnus-spam-process-newsgroups} $BJQ?t$K2C$($F2<$5$$!#$3$N%7%s%\%k(B +$B$,%0%k!<%W$N(B @code{spam-process} $B%Q%i%a!<%?$K2C$($i$l$k$H!"(Bham $B0u$,IU$$(B +$B$?(B @emph{ham} $B%0%k!<%W$N5-;v$NAw?.)$7$^$9!#$9$Y$FF1Ey$KF0:n$9$k(B +$B$3$H$OJ]>Z$5$l$^$9!#(B + +@end defvar + +@node Gmane Spam Reporting +@subsubsection Gmane Spam $BJs9p(B +@cindex spam reporting +@cindex Gmane, spam reporting +@cindex Gmane, spam reporting +@cindex spam + +@defvar gnus-group-spam-exit-processor-report-gmane + +$B%0%k!<%W%Q%i%a!<%?$+JQ?t(B @code{gnus-spam-process-newsgroups} $B$r%+%9%?%^(B +$B%$%:$7$F!"$3$N%7%s%\%k$r%0%k!<%W$N(B @code{spam-process} $B%Q%i%a!<%?$K2C$((B +$B$F2<$5$$!#$3$l$,2C$($i$l$k$H!"(Bspam $B0u$,IU$$$?5-;v$N%0%k!<%W$,(B HTTP $B7PM3(B +$B$G(B Gmane $B$N4IM})$7$^$9!#$9$Y$FF1Ey$KF0:n$9(B +$B$k$3$H$OJ]>Z$5$l$^$9!#(B + +@end defvar + +@defvar spam-report-gmane-use-article-number + +$B$3$NJQ?t$O%G%#%U%)%k%H$G(B @code{t} $B$G$9!#$"$J$?<+?H$,%K%e!<%9%5!<%P!<$r1?(B +$B1D$7$F$$$k!"$9$J$o$A%m!<%+%k$J5-;vHV9f$,(B Gmane $B$N5-;vHV9f$H9g$o$J$$>l9g(B +$B$O!"(B@code{nil} $B$K@_Dj$7$F2<$5$$!#(B +@code{spam-report-gmane-use-article-number} $B$,(B @code{nil} $B$G$"$k$H!"(B +@file{spam-report.el} $B$O(B Gmane $B$,Ds6!$9$k(B @code{X-Report-Spam} $B%X%C%@!<(B +$B$r;H$$$^$9!#(B + +@end defvar + +@node Anti-spam Hashcash Payments +@subsubsection $BHs(B-spam Hashcash $B0u(B +@cindex spam filtering +@cindex hashcash, spam filtering +@cindex spam + +@defvar spam-use-hashcash + +@code{spam-use-whitelist} (@pxref{Blacklists and Whitelists}) $B$K;w$F$$$^(B +$B$9$,!"Aw?.u$G$O(B @code{spam-use-dig} $B$r(B @code{nil} $B$K@_Dj$9$k$3$H$O!"$$(B +$B$/?M$+$N%f!<%6!<$,;H$($J$$$+$b$7$l$J$$$N$G!"$=$l$,2DG=$J@-G=2~A1$G$"$k$K(B +$B$b$+$+$o$i$:?d>)$5$l$^$;$s!#$7$+$7!"$=$l$,F0$/$+$I$&$+$r3N$+$a$k$3$H$O$G(B +$B$-$^$9!#(B + +@end defvar + +@defvar spam-blackhole-servers + +$B%V%i%C%/%[!<%k!&%A%'%C%/$N$?$a$K0U8+$r5a$a$k%5!<%P!<$N%j%9%H$G$9!#(B + +@end defvar + +@defvar spam-blackhole-good-server-regex + +$B%V%i%C%/%[!<%k!&%5!<%P!<$N%j%9%H$H>H9g$5$l$F$O$J$i$J$$(B IP $B$N@55,I=8=!#(B +@code{nil} $B$K@_Dj$5$l$k$HL58z$G$9!#(B + +@end defvar + +@defvar spam-use-dig + +@file{dns.el} $B%Q%C%1!<%8$NBe$o$j$K(B @file{dig.el} $B%Q%C%1!<%8$r;H$$$^$9!#(B +$B%G%#%U%)%k%H$N@_Dj$G$"$k(B @code{t} $B$,?d>)$5$l$^$9!#(B + +@end defvar + +$B%V%i%C%/%[!<%k!&%A%'%C%/$OF~$C$FMh$k%a!<%k$KBP$7$F$@$19T$J$o$l$^$9!#%V%i%C(B +$B%/%[!<%k$K(B spam $B$^$?$O(B ham $B%W%m%;%C%5!<$O$"$j$^$;$s!#(B + +@node Regular Expressions Header Matching +@subsubsection $B@55,I=8=$K$h$k%X%C%@!<$N9gCW8!::(B +@cindex spam filtering +@cindex regular expressions header matching, spam filtering +@cindex spam + +@defvar spam-use-regex-headers + +$B$3$N%*%W%7%g%s$O%G%#%U%)%k%H$GL58z$K$J$C$F$$$^$9!#$3$N%*%W%7%g%s$r%;%C%H(B +$B$9$k$H!"(BGnus $B$K@55,I=8=$N%j%9%H$H%a%C%;!<%8%X%C%@!<$r>H9g$5$;$k$3$H$,$G(B +$B$-$^$9!#JQ?t(B @code{spam-regex-headers-spam} $B$*$h(B +$B$S(B @code{spam-regex-headers-ham} $B$,@55,I=8=$N%j%9%H$r;}$A$^$9!#%a%C%;!<(B +$B%8$,(B spam $B$^$?$O(B ham $B$+$I$&$+$r7h$a$k$?$a$K!"(BGnus $B$O%a%C%;!<%8%X%C%@!<$N(B +$B$=$l$>$l$r8!::$7$^$9!#(B + +@end defvar + +@defvar spam-regex-headers-spam + +$B%a%C%;!<%8%X%C%@!<$NCf$G0lCW$7$?;~$K!"$=$l$,L@$i$+$K(B spam $B$G$"$k$3$H$r8+(B +$BJ,$1$k$?$a$N@55,I=8=$N%j%9%H$G$9!#(B + +@end defvar + +@defvar spam-regex-headers-ham + +$B%a%C%;!<%8%X%C%@!<$NCf$G0lCW$7$?;~$K!"$=$l$,L@$i$+$K(B ham $B$G$"$k$3$H$r8+(B +$BJ,$1$k$?$a$N@55,I=8=$N%j%9%H$G$9!#(B + +@end defvar + +$B@55,I=8=$K$h$k%X%C%@!<$N8!::$O!"F~$C$F$-$?%a!<%k$KBP$7$F$@$19T$J$o$l$^$9!#(B +$B@55,I=8=$N$?$a$KFCM-$J(B spam $B$^$?$O(B ham $B%W%m%;%C%5!<$O$"$j$^$;$s!#(B + +@node Bogofilter +@subsubsection Bogofilter +@cindex spam filtering +@cindex bogofilter, spam filtering +@cindex spam + +@defvar spam-use-bogofilter + +Eric Raymond $B$N?WB.$J(B Bogofilter $B$r(B @code{spam-split} $B$K;HMQ$7$?$$>l9g$O!"(B +$B$3$NJQ?t$r%;%C%H$7$F$/$@$5$$!#(B + +Spam $B5-;v$@$1$N(B @samp{$} $B0u$r4XO"IU$1$k:G>.$N@$OC$K$h$C$F!"(BBogofilter $B%H(B +$B%l!<%K%s%0$O$9$Y$F$+$J$j<+F0E*$K$J$j$^$9!#3F%+%F%4%j!<$N(B spam $B$+$=$&$G$J(B +$B$$?tI4$N5-;v$rF~l9g!"(BBogofilter $B$N=hM}$O(B +$BC$5$l$^$9!#(B + +@code{spam-use-bogofilter-headers} $B$r;H$&>l9g$O!"$3$l$rM-8z$K$7$F$O$$$1(B +$B$^$;$s!#(B + +@end defvar + +@defvar spam-use-bogofilter-headers + +$B%a%C%;!<%8%X%C%@!<$@$1$rD4$Y$k$?$a$K(B Eric Raymond $B$N?WB.(B +$B$J(B Bogofilter $B$r(B @code{spam-split} $B$K;HMQ$7$?$$>l9g$O!"$3$NJQ?t$r%;%C%H(B +$B$7$F$/$@$5$$!#$3$l$O(B @code{spam-use-bogofilter} $B$HF1$8$h$&$KF0:n$7$^$9$,!"(B +$B$"$i$+$8$a(B @code{X-Bogosity} $B%X%C%@!<$,%a%C%;!<%8$KB8:_$7$J$1$l$P$J$j$^(B +$B$;$s!#DL>o$3$l$O(B procmail $B$N5;K!$+!"2?$+$=$l$K;w$?$b$N$G9T$J$&$3$H$K$J$k(B +$B$G$7$g$&!#(BBogofilter $B$N%$%s%9%H!<%k$K4X$9$kJ8=q$rD4$Y$F2<$5$$!#(B + +@code{spam-use-bogofilter} $B$r;H$&>l9g$O!"$3$l$rM-8z$K$7$F$O$$$1$^$;$s!#(B + +@end defvar + +@defvar gnus-group-spam-exit-processor-bogofilter +$B$3$N%7%s%\%k$r!"%0%k!<%W%Q%i%a!<%?$N%+%9%?%^%$%:$K$h$C$F%0%k!<%W(B +$B$N(B @code{spam-process} $B%Q%i%a!<%?$K2C$($k$+!"$^$?(B +$B$O(B @code{gnus-spam-process-newsgroups} $BJQ?t$K2C$($F2<$5$$!#$3$N%7%s%\%k(B +$B$,%0%k!<%W$N(B @code{spam-process} $B%Q%i%a!<%?$K2C$($i$l$k$H!"(Bspam $B0u$,IU$$(B +$B$?5-;v$,(B bogofilter $B$N(B spam $B%G!<%?%Y!<%9$K2C$($i$^$9!#(B + +@emph{$B7Y9p(B} + +$BGQ$l$?(B @code{gnus-group-spam-exit-processor-bogofilter} $B$NBe$o$j$K!"(B +@code{'(spam spam-use-bogofilter)} $B$r;H$&$3$H$r?d>)$7$^$9!#$9$Y$FF1Ey$K(B +$BF0:n$9$k$3$H$OJ]>Z$5$l$^$9!#(B +@end defvar + +@defvar gnus-group-ham-exit-processor-bogofilter +$B$3$N%7%s%\%k$r!"%0%k!<%W%Q%i%a!<%?$N%+%9%?%^%$%:$K$h$C$F%0%k!<%W(B +$B$N(B @code{spam-process} $B%Q%i%a!<%?$K2C$($k$+!"$^$?(B +$B$O(B @code{gnus-spam-process-newsgroups} $BJQ?t$K2C$($F2<$5$$!#$3$N%7%s%\%k(B +$B$,%0%k!<%W$N(B @code{spam-process} $B%Q%i%a!<%?$K2C$($i$l$k$H!"(Bham $B0u$,IU$$(B +$B$?(B @emph{ham} $B%0%k!<%W$N5-;v$,Hs(B-spam $B5-;vMQ$N(B Bogofilter $B%G!<%?%Y!<%9$K(B +$BDI2C$5$l$^$9!#(B + +@emph{$B7Y9p(B} + +$BGQ$l$?(B @code{gnus-group-ham-exit-processor-bogofilter} $B$NBe$o$j$K!"(B +@code{'(ham spam-use-bogofilter)} $B$r;H$&$3$H$r?d>)$7$^$9!#$9$Y$FF1Ey$KF0(B +$B:n$9$k$3$H$OJ]>Z$5$l$^$9!#(B +@end defvar + +@defvar spam-bogofilter-database-directory + +$B$3$l$O(B Bogofilter $B$,$=$N%G!<%?%Y!<%9$r3JG<$9$k%G%#%l%/%H%j$G$9!#%G%#%U%)(B +$B%k%H$G$O@_Dj$5$l$F$$$J$$$N$G!"(BBogofilter $B$O$=$l<+?H$N%G%#%U%)%k%H$N%G!<(B +$B%?%Y!<%9!&%G%#%l%/%H%j$r;H$$$^$9!#(B + +@end defvar + +Bogofilter $B$N%a!<%kJ,N`4o$O!"0U?^$HL\E*$NE@$G(B @command{ifile} $B$K;w$F$$$^(B +$B$9!#(BSpam $B$H(B ham $B$N%W%m%;%C%5!<$,Ds6!$5$l!"2C$($F(B spam-$BJ,(B +$B3d(B (spam-split) $B$K$b(B Bogofilter $B$,;H$o$l$k$Y$-$G$"$k$3$H!"$^$?$O$9$G$K5-(B +$B;v$K;H$o$l$?$3$H$r<($9(B @code{spam-use-bogofilter} $B$*$h(B +$B$S(B @code{spam-use-bogofilter-headers} $BJQ?t$,Ds6!$5$l$^$9!#$3$N5!G=$r8!::(B +$B$9$k$?$a$K(B Bogofilter $B$N%P!<%8%g%s(B 0.9.2.1 $B$,;H$o$l$^$7$?!#(B + +@node SpamAssassin back end +@subsubsection SpamAssassin back end +@cindex spam filtering +@cindex spamassassin, spam filtering +@cindex spam + +@defvar spam-use-spamassassin + +@code{spam-split} $B$K(B SpamAssassin $B$r;H$$$?$$>l9g$O!"$3$NJQ?t$r%;%C%H$7$F(B +$B2<$5$$!#(B + +SpamAssassin $B$O!"%Y%$%8%"%s%U%#%k%?$rFbJq$9$k5,B'$HJ,@O$N%;%C%H$K4p$E$$(B +$B$F!"$=$l$>$l$N5-;v$N%9%3%"$r:[Dj$7$^$9!#%Y%$%8%"%s%U%#%k%?$O!"(Bspam $B5-;v(B +$B$N(B @samp{$} $B0u$r4XO"$5$;$k$3$H$K$h$j71N}$9$k$3$H$,$G$-$^$9!#(BSpam $B$N%9%3(B +$B%"$O!"35N,%b!<%I$G(B @kbd{S t} $B%3%^%s%I$r;H$&$3$H$K$h$C$F8+$k$3$H$,$G$-$^(B +$B$9!#(B + +$B$3$NJQ?t$r%;%C%H$9$k$H!"$=$l$>$l$N5-;v$O(B @code{spam-split} $B$,8F$P$l$k$H(B +$B$-$K(B SpamAssassin $B$K$h$C$F=hM}$5$l$^$9!#%a!<%k$,(B SpamAssassin $B$G=hM}$5$l(B +$B$k$h$&$K$J$C$F$$$k>l9g$K!"C1$K(B SpamAssassin $B%X%C%@!<$r;H$$$?$$$N$J$i$P!"(B +$BBe$o$j$K(B @code{spam-use-spamassassin-headers} $B$r%;%C%H$7$F2<$5$$!#(B + +@code{spam-use-spamassassin-headers} $B$r;H$&>l9g!"$3$l$rM-8z$K$7$F$O$$$1(B +$B$^$;$s!#(B + +@end defvar + +@defvar spam-use-spamassassin-headers + +$B%a!<%k$,(B SpamAssassin $B$G=hM}$5$l$k$h$&$K$J$C$F$$$k>l9g$K!"(B +SpamAssassin $B%X%C%@!<$K4p$E$$$F(B @code{spam-split} $B$KJ,3d$r9T$J$o$;$?$$$N(B +$B$J$i$P!"$3$NJQ?t$r%;%C%H$7$F2<$5$$!#(B + +@code{spam-use-spamassassin} $B$r;H$&>l9g!"$3$l$rM-8z$K$7$F$O$$$1$^$;$s!#(B + +@end defvar + +@defvar spam-spamassassin-path + +$B$3$NJQ?t$O(B SpamAssassin $B$NpJs$O!"(B +SpamAssassin $B$N%I%-%e%a%s%H$r8+$F2<$5$$!#(B + +@end defvar + +SpamAssassin $B$O!"(Bspam $B$rF1Dj$9$k$?$a$K9-HO$JJ,@O$r9T$J$&!"6/NO$GM;DL@-$N(B +$B$"$k(B spam $B_I2a4o$G$9!#(BSpamAssassin $B$,Ds6!$9$k(B ham $B$H(B spam $B$N%W%m%;%C%5!<(B +$B$r;H$&$+!"$"$k$$$O4{$K$=$l$i$,5-;v$KE,MQ:Q$_$+$I$&$+$r!"(B +@code{spam-use-spamassassin} $B$H(B @code{spam-use-spamassassin-headers} $BJQ(B +$B?t$G(B @code{spam-split} $B$K;X<($7$^$9!#$3$N5!G=$r8!::$9$k$?$a(B +$B$K(B SpamAssassin $B$N%P!<%8%g%s(B 2.63 $B$,;H$o$l$^$7$?!#(B + +@node ifile spam filtering +@subsubsection ifile $B$K$h$k(B spam $B$N_I2a(B +@cindex spam filtering +@cindex ifile, spam filtering +@cindex spam + +@defvar spam-use-ifile + +Bogofilter $B$K;w$?E}7WJ,@O4o$G$"(B +$B$k(B @command{ifile} $B$r(B @code{spam-split} $B$K;H$$$?$$>l9g$O!"$3$NJQ?t$rM-8z(B +$B$K$7$F2<$5$$!#(B + +@end defvar + +@defvar spam-ifile-all-categories + +@code{spam-use-ifile} $B$K!"C1$J$k(B spam/$BHs(B-spam $B$G$O$J$/$F(B ifile $B$N$9$Y$F(B +$B$N%+%F%4%j!<$rM?$($F$b$i$$$?$$$J$i$P!"$3$NJQ?t$rM-8z$K$7$F2<$5$$!#$3$l$r(B +$B;H$&>l9g$O!"$=$NJ88%$K=q$+$l$F$$$k$h$&$K(B ifile $B$r%H%l!<%K%s%0$7$F$*$+$J(B +$B$1$l$P$J$j$^$;$s!#(B + +@end defvar + +@defvar spam-ifile-spam-category + +ifile $B$K4X$9$k8B$j!"$3$l$O(B spam $B%a%C%;!<%8$N%+%F%4%j!<$G$9!#$G$9!#%G%#%U%)%k%H$G$ODj5A$5$l$F$$(B +$B$J$$$N$G!"(Bifile $B$O$=$l<+?H$N%G%#%U%)%k%H$N%G!<%?%Y!<%9L>$r;H$$$^$9!#(B + +@end defvar + +ifile $B$N%a!<%kJ,N`4o$O!"0U?^$HL\E*$NE@$G(B Bogofilter $B$K;w$F$$$^$9!#(B +Spam $B$H(B ham $B$N%W%m%;%C%5!)$7$^$9!#$9$Y$FF1Ey$KF0:n$9(B +$B$k$3$H$OJ]>Z$5$l$^$9!#(B +@end defvar + +@defvar gnus-group-ham-exit-processor-stat +$B$3$N%7%s%\%k$r!"%0%k!<%W%Q%i%a!<%?$N%+%9%?%^%$%:$K$h$C$F%0%k!<%W(B +$B$N(B @code{spam-process} $B%Q%i%a!<%?$K2C$($k$+!"$^$?(B +$B$O(B @code{gnus-spam-process-newsgroups} $BJQ?t$K2C$($F2<$5$$!#$3$N%7%s%\%k(B +$B$,%0%k!<%W$N(B @code{spam-process} $B%Q%i%a!<%?$K2C$($i$l$k$H!"(Bham $B0u$,IU$$(B +$B$?(B @emph{ham} $B%0%k!<%W$N5-;v$,Hs(B-spam $B5-;vMQ$N(B spam-stat $B%G!<%?%Y!<%9$K(B +$BDI2C$5$l$^$9!#(B + +@emph{$B7Y9p(B} + +$BGQ$l$?(B @code{gnus-group-ham-exit-processor-stat} $B$NBe$o$j$K!"(B +@code{'(ham spam-use-stat)} $B$r;H$&$3$H$r?d>)$7$^$9!#$9$Y$FF1Ey$KF0:n$9$k(B +$B$3$H$OJ]>Z$5$l$^$9!#(B +@end defvar + +$B$3$l$O(B @code{spam.el} $B$,(B @file{spam-stat.el} $B$HF/$-9g$&$3$H$r2DG=$K$7$^(B +$B$9!#(B@file{spam-stat.el} $B$O(B (Lisp $B$@$1$N(B) spam $BFbIt%G!<%?%Y!<%9$rDs6!$7$^(B +$B$9$,!"$=$l$O(B ifile $B$d(B Bogofilter $B$H0c$C$F30It%W%m%0%i%`$rI,MW$H$7$^$;$s!#(B +Spam $B$H(B ham $B$N%W%m%;%C%5!<$H(B @code{spam-split} $B$N$?$a(B +$B$N(B @code{spam-use-stat} $BJQ?t$,Ds6!$5$l$^$9!#(B + +@node SpamOracle +@subsubsection Gnus $B$G(B SpamOracle $B$r;H$&$K$O(B +@cindex spam filtering +@cindex SpamOracle +@cindex spam + +$B5$7Z$K(B spam $B$r_I2a$9$k0l$D$N$d$jJ}$O(B SpamOracle $B$r;H$&$3$H$G$9!#E}7WE*$K(B +$B%a!<%k$r_I2a$9$k$?$a$NF;6q$G$"$k(B SpamOracle $B$O!"(BXavier Leroy $B$K$h$C$F=q(B +$B$+$l$^$7$?!#$3$l$OJL$K%$%s%9%H!<%k$9$kI,MW$,$"$j$^$9!#(B + +Gnus $B$G(B SpamOracle $B$r;H$&$K$O!"$$$/$D$+$N$d$jJ}$,$"$j$^$9!#$9$Y$F$N>l9g(B +$B$K!"%a!<%k$O(B @emph{mark} $B%b!<%I$GF0:n$7$F$$$k(B SpamOracle $B$K%Q%$%W$5$l$^(B +$B$9!#$9$k$H(B SpamOracle $B$O!"$=$N%a!<%k$r(B spam $B$@$H8+$J$7$?$+$I$&$+$r<((B +$B$9(B @samp{X-Spam} $B%X%C%@!<$r5-F~$7$^$9!#(B + +$Bl9g$O(B @samp{Junk} $B$K0\F0$5$;$i$l$^$9!#(BHam $B$J%a%C%;!<%8(B +$B$O(B @samp{INBOX} $B$K;D$j$^$9(B: + +@example +(setq spam-use-spamoracle t + spam-split-group "Junk" + nnimap-split-inbox '("INBOX") + nnimap-split-rule 'nnimap-split-fancy + nnimap-split-fancy '(| (: spam-split) "INBOX")) +@end example + +@defvar spam-use-spamoracle +Gnus $B$K(B SpamOracle $B$r;H$C$F(B spam $B$N_I2a$r$5$;$?$$>l9g$K(B @code{t} $B$K$7$F(B +$B2<$5$$!#(B +@end defvar + +@defvar spam-spamoracle-binary +Gnus $B$O%f!<%6$N(B PATH $B$G8+$D$+$C$?(B @file{spamoracle} $B$H$$$&(B SpamOracle $B$N(B +$B%P%$%J%j$r;H$$$^$9!#$3$l$K$O%+%9%?%^%$%:2DG=$JJQ(B +$B?t(B @code{spam-spamoracle-binary} $B$r;H$$$^$9!#(B +@end defvar + +@defvar spam-spamoracle-database +SpamOracle $B$O$=$N2r@O7k2L$r%G!<%?%Y!<%9$H$7$F3JG<$9$k$?$a$K!"%G%#%U%)%k(B +$B%H$G(B @file{~/.spamoracle.db} $B%U%!%$%k$r;H$$$^$9!#$3$l$OJQ(B +$B?t(B @code{spam-spamoracle-database} $B$G@)8f$5$l!"%G%#%U%)%k%H(B +$B$O(B @code{nil} $B$G$9!#$=$l$O!"%G%#%U%)%k%H$N(B SpamOracle $B%G!<%?%Y!<%9$,;H$o(B +$B$l$k$3$H$r0UL#$7$^$9!#%G!<%?%Y!<%9$,$I$3$+FCJL$J>l=j$K$"$k>l9g$O!"(B +@code{spam-spamoracle-database} $B$r$=$N%Q%9$K@_Dj$7$F2<$5$$!#(B +@end defvar + +SpamOracle $B$O%a%C%;!<%8$,(B spam $B$+(B ham $B$+$r8+6K$a$k$?$a$KE}7WE*$J/$J$$NI$$7k2L$rF@$k$?$a$K!"(BSpamOracle $B$O%H%l!<(B +$B%K%s%0$rI,MW$H$7$^$9!#(BSpamOracle $B$O(B spam $B%a!<%k$NFCD'$r3X$S$^$9!#(B +@emph{add} $B%b!<%I(B ($B%H%l!<%K%s%0!&%b!<%I(B) $B$r;H$C$F!"NI$$%a!<(B +$B%k(B (ham) $B$H(B spam $B$r(B SpamOracle $B$KM?$($J$1$l$P$J$j$^$;$s!#$3$l$O!"35N,%P%C(B +$B%U%!$G(B @kbd{|} $B$r2!$9$3$H$K$h$C$F%a!<%k$r(B SpamOracle $B$N%W%m%;%9$K%Q%$%W(B +$B$9$k$+!"$^$?$O(B @code{spam.el} $B$N(B spam $B$*$h$S(B ham $B%W%m%;%C%5!<$r;H$&$3$H(B +$B$K$h$C$F9T$J$&$3$H$,$G$-$^$9!"(B@xref{Filtering Spam Using The Spam ELisp +Package}. + +@defvar gnus-group-spam-exit-processor-spamoracle +$B$3$N%7%s%\%k$r!"%0%k!<%W%Q%i%a!<%?$N%+%9%?%^%$%:$K$h$C$F%0%k!<%W(B +$B$N(B @code{spam-process} $B%Q%i%a!<%?$K2C$($k$+!"$^$?(B +$B$O(B @code{gnus-spam-process-newsgroups} $BJQ?t$K2C$($F2<$5$$!#$3$N%7%s%\%k(B +$B$,%0%k!<%W$N(B @code{spam-process} $B%Q%i%a!<%?$K2C$($i$l$k$H!"(Bspam $B0u$,IU$$(B +$B$?5-;v$,(B spam $B$N%5%s%W%k$H$7$F(B SpamOracle $B$KAw$i$l$^$9!#(B + +@emph{$B7Y9p(B} + +$BGQ$l$?(B @code{gnus-group-spam-exit-processor-spamoracle} $B$NBe$o$j$K!"(B +@code{'(spam spam-use-spamoracle)} $B$r;H$&$3$H$r?d>)$7$^$9!#$9$Y$FF1Ey$K(B +$BF0:n$9$k$3$H$OJ]>Z$5$l$^$9!#(B +@end defvar + +@defvar gnus-group-ham-exit-processor-spamoracle +$B$3$N%7%s%\%k$r!"%0%k!<%W%Q%i%a!<%?$N%+%9%?%^%$%:$K$h$C$F%0%k!<%W(B +$B$N(B @code{spam-process} $B%Q%i%a!<%?$K2C$($k$+!"$^$?(B +$B$O(B @code{gnus-spam-process-newsgroups} $BJQ?t$K2C$($F2<$5$$!#$3$N%7%s%\%k(B +$B$,%0%k!<%W$N(B @code{spam-process} $B%Q%i%a!<%?$K2C$($i$l$k$H!"(B@emph{ham} $B%0(B +$B%k!<%W$K$"$k(B ham $B0u$,IU$$$?5-;v$,(B ham $B$N5-;v$N%5%s%W%k$H$7(B +$B$F(B SpamOracle $B$KAw$i$l$^$9!#(B + +@emph{$B7Y9p(B} + +$BGQ$l$?(B @code{gnus-group-ham-exit-processor-spamoracle} $B$NBe$o$j$K!"(B +@code{'(ham spam-use-spamoracle)} $B$r;H$&$3$H$r?d>)$7$^$9!#$9$Y$FF1Ey$KF0(B +$B:n$9$k$3$H$OJ]>Z$5$l$^$9!#(B +@end defvar + +@emph{$BNc(B:} $B$3$l$i$O(B ham $B%0%k!<%W$H$7$FJ,N`$5$l$?!"$D$^$j(B ham $B$N5-;v$7$+(B +$B$J$$%0%k!<%W$N%0%k!<%W%Q%i%a!<%?$G$9!#(B + +@example + ((spam-contents gnus-group-spam-classification-ham) + (spam-process ((ham spam-use-spamoracle) + (spam spam-use-spamoracle)))) +@end example + +$B$3$N%0%k!<%W$G$O(B @code{spam-use-spamoracle} $B$,(B ham $B$H(B spam $BN>J}$N=hM}$r(B +$B9T$J$$$^$9!#$3$N%0%k!<%W$K(B spam $B5-;v$,$"$C$F(B (SpamOracle $B$,==J,$J%5%s%W(B +$B%k$r?)$Y$5$;$F$b$i$C$F$$$J$1$l$P!"$=$&$J$j$^$9$M(B)$B!"$+$D%f!<%6$,$$$/$D$+(B +$B$N5-;v$K(B spam $B$N0u$rIU$1$?$J$i$P!"$=$l$i$N5-;v$O(B SpamOracle $B$K$h$C$F=hM}(B +$B$5$l$^$9!#$=$N%W%m%;%C%5!<$O!"?7$7$$(B spam $B$N%5%s%W%k$H$7$F(B SpamOracle $B$K(B +$B5-;v$rAw$j$^$9!#(B + +@node Extending the Spam ELisp package +@subsubsection Spam ELisp $B%Q%C%1!<%8$N3HD%(B +@cindex spam filtering +@cindex spam elisp package, extending +@cindex extending the spam elisp package + +$B?7$7$$%P%C%/%(%s%I(B blackbox $B$rDI2C$7$?$$$"$J$?$O!"F~$C$F$/$k%a!<%k$r_I2a(B +$B$9$k$?$a$K0J2<$rMQ0U$7$F2<$5$$(B: + +@enumerate + +@item +$B%3!<%I(B + +@lisp +(defvar spam-use-blackbox nil + "Blackbox $B$r;H$&$H$-$O(B t $B$K$9$k!#(B") +@end lisp + +Blackbox $B$,!"F~$C$F$/$k%a!<%k$r8!::$G$-$k$N$G$"$l$P!"(B +@code{spam-check-blackbox} $B$r=q$$$F2<$5$$!#(B + +Blackbox $B$,(B spam $B$H(B ham $B$r(B register/unregister $B$G$-$k$N$G$"$l$P!"$N(B restister/unregister $B%k!<%A%s$r;H$C(B +$B$F(B @code{spam-blackbox-register-routine} $B$*$h(B +$B$S(B @code{spam-blackbox-unregister-routine} $B$r=q$$$F2<$5$$!#(B + +@item +$B4X?t(B + +@code{spam-check-blackbox} $B4X?t$O!"B>$N=,47$KJo$C(B +$B$F(B @samp{nil} $B$+(B @code{spam-split-group} $B$rJV$5$J$1$l$P$J$j$^$;$s!#$"$J(B +$B$?$K$G$-$k$3$H$NNc$O!"4{B8$N(B @code{spam-check-*} $B4X?t$r;2>H$7$F$/$@$5$$!#(B +$B$^$?!"$"$J$?$,$=$&$G$J$$M}M3$r40A4$KM}2r$7$F$$$J$$$J$i$P!"%F%s%W%l!<%H$K(B +$Bsv$jIU$$$F2<$5$$!#(B + +@end enumerate + +Spam $B$H(B ham $B%a%C%;!<%8$r=hM}$9$k$K$O!"0J2<$rMQ0U$7$F2<$5$$(B: + +@enumerate + +@item +$B%3!<%I(B + +Spam $B$^$?$O(B ham $B$N%W%m%;%C%5!<$rMQ0U$9$kI,MW$O$"$j$^$;$s!#(B +Blackbox $B$,(B spam $B$^$?$O(B ham $B$N=hM}$r%5%]!<%H$9$k>l9g$@$1!"$=$l$i$rMQ0U$7(B +$B$F2<$5$$!#(B + +$B$5$i$K(B ham $B$H(B spam $B$N%W%m%;%C%5!<$OC10l$NJQ?t$G$O$J$/$5$l$D$D$"$j!"Be$o(B +$B$j$K(B @code{'(spam spam-use-blackbox)} $B$^$?(B +$B$O(B @code{'(ham spam-use-blackbox)} $B$N7A<0$,?d>)$5$l$^$9!#:#$N$H$3(B +$B$m(B spam/ham $B%W%m%;%C%5!$rMQ(B +$B0U$7$^$9!#:#$N$H$3$m!"$3$l(B +$B$O(B @code{spam-use-BBDB-exclusive} $B$r(B @code{spam-use-BBDB} $B$N$h$&$KF/$+$;(B +$B$k$?$a$@$1$K;H$o$l$^$9!#(B + +@item +@code{spam-install-nocheck-backend} + +$B$3$N4X?t$O!"8!::$9$k5!G=$OL5$$$,(B ham $B$^$?(B +$B$O(B spam $B$r(B register/unregister $B$9$k$3$H$,$G$-$k%P%C%/%(%s%I$rMQ0U$7$^$9!#(B +@code{spam-use-gmane} $B$,$=$N$h$&$J%P%C%/%(%s%I$G$9!#(B + +@item +@code{spam-install-checkonly-backend} + +$B$3$N4X?t$O!"F~$C$F$/$k%a!<%k$,(B spam $B$+$I$&$+$N8!::$@$1$r9T$J$&$3$H$,$G$-(B +$B$k%P%C%/%(%s%I$rMQ0U$7$^$9!#$=$l$O%a%C%;!<%8$r(B register $B$^$?(B +$B$O(B unregister $B$9$k$3$H$,$G$-$^$;$s!#(B@code{spam-use-blackholes} $B$*$h(B +$B$S(B @code{spam-use-hashcash} $B$,$=$N$h$&$J%P%C%/%(%s%I$G$9!#(B + +@item +@code{spam-install-statistical-checkonly-backend} + +$B$3$N4X?t$O!"F~$C$F$/$k%a!<%k$N8!::$@$1$r9T$J$&$3$H$,$G$-$k!"E}7W=hM}$r9T(B +$B$J$&%P%C%/%(%s%I(B ($B8!::$N$?$a$K%a%C%;!<%8$NK\J8A4BN$rI,MW$H$9$k(B) $B$rMQ0U$7(B +$B$^$9!#(B@code{spam-use-regex-body} $B$,$=$N$h$&$J_I2a4o$G$9!#(B + +@item +@code{spam-install-statistical-backend} + +$B$3$N4X?t$O!"F~$C$F$/$k%a!<%k$N8!::$H(B registration/unregistration $B%k!<%A(B +$B%s$r;}$D!"E}7W=hM}$r9T$J$&%P%C%/%(%s%I$rMQ0U$7$^$9!#(B +@code{spam-use-bogofilter} $B$O!"$=$N$h$&$K;EN)$F$i$l$F$$$^$9!#(B + +@item +@code{spam-install-backend} + +$B$3$l$O:G$bIaDL$J%P%C%/%(%s%I$rMQ0U$7$^$9!#$=$l$O8!::$H%a%C%;!<%8(B +$B$N(B register/unregister $B$r9T$J$&$3$H$,$G$-!"E}7W=hM}$NG=NO$O$"$j$^$;$s!#(B +@code{spam-use-BBDB} $B$,$=$N$h$&$J%P%C%/%(%s%I$G$9!#(B + +@item +@code{spam-install-mover-backend} + +$B0\F0$5$;$k(B (Mover) $B%P%C%/%(%s%I$O!"35N,%P%C%U%!$r=P$k$H$-$K(B +@code{spam.el} $B$NFbIt$G!"$"$k0lDj$N$d$jJ}$G5-;v$r0\F0$5$;$^$9!#$*$=$i$/!"(B +$B$=$N$h$&$J%P%C%/%(%s%I$O!"$"$^$j%$%s%9%H!<%k$7$J$$$G$7$g$&!#(B +@end enumerate + +@end enumerate + +@node Filtering Spam Using Statistics with spam-stat +@subsection Spam $B$N_I2a$K(B spam-stat $B$K$h$kE}7W$r;H$&(B +@cindex Paul Graham +@cindex Graham, Paul +@cindex naive Bayesian spam filtering +@cindex Bayesian spam filtering, naive +@cindex spam filtering, naive Bayesian + +Paul Graham $B$O!"E}7W$r;H$C$?(B spam $B$N_I2a$K4X$9$kM%$l$?%(%C%;%$$r=q$-$^$7(B +$B$?(B: @uref{http://www.paulgraham.com/spam.html,A Plan for Spam}$B!#$=$3$GH`(B +$B$O(B SpamAssassin $B$K$h$C$F;H$o$l$F$$$k$h$&$J%k!<%k%Y!<%9$N_I2a$K8GM-$J7g4Y(B +$B$K$D$$$F=R$Y$F$$$^$9!#Nc$($P(B: $BC/$+$,%k!<%k$r=q$+$J$1$l$P$J$i$J$$$7!"B>$N(B +$B$9$Y$F$N?M$O$3$l$i$N%k!<%k$r%$%s%9%H!<%k$7$J$1$l$P$J$j$^$;$s!#$"$J$?$O$$(B +$B$D$bCY$l$r$H$C$F$7$^$$$^$9!#$=$l$h$j$b!"$=$l$,(B spam $B$^$?$OHs(B-spam $B$K2?$H(B +$B$J$/;w$F$$$k$+$I$&$+$K4p$E$$$F%a!<%k$r_I2a$9$k$[$&$,$O$k$+$KNI$$$@$m$&$H(B +$BH`$O$N(B spam $B%a!<%k$K;w$F$$$k$+$I$&$+$r%A%'%C%/$9$kJ}K!$N(B +$B5-=R$K?J$_$^$9!#(B + +$B4pK\E*$J0F$O$3$l$G$9(B: $B$"$J$?$N%a!<%k$NFs$D$N%3%l%/%7%g%s$r:n$j$^$9!#0l$D(B +$B$O(B spam$B!"$b$&0l$D$OHs(B-spam $B$G!#N>J}$N%3%l%/%7%g%s$K$*$1$k3FC18l$N=P8=IQ(B +$BEY$r?t$($F!"%3%l%/%7%g%s$N%a!<%k$NAm?t$G=E$_IU$1$r9T$J$$!"$3$N>pJs$r<-=q(B +$B$K3JG<$7$^$9!#?7Ce%a!<%k$N$9$Y$F$NC18l$K$D$$$F!"(Bspam $B$+Hs(B-spam $B%a!<%k$K(B +$BB0$9$k3NN($r7hDj$7$^$9!#(B15 $B$N:G$b82Cx$JC18l$r;H$C$F!"$=$N%a!<%k(B +$B$,(B spam $B$G$"$k$3$H$N3NN($NAm7W$r7W;;$7$^$9!#$3$N3NN($,$"$kogCM$h$j9b$+$C(B +$B$?$i!"$=$N%a!<%k$O(B spam $B$G$"$k$H9M$($i$l$^$9!#(B + +Gnus $B$O$3$NJ}$N%3%l%/%7%g%s$K$D$-?tI4DL$N%a!<%k$,I,(B +$BMW$G$9!#(B + +$B:#$N$H$3$m(B Gnus $B$O(B nnml $B%P%C%/%(%s%I$G$@$1<-=q$N<+F0@8@.$r%5%]!<%H$7$^$9!#(B +nnml $B%P%C%/%(%s%I$O0lDL$N%a!<%k$K$D$-0l$D$N%U%!%$%k$G!"$9$Y$F$N%a!<%k$r(B +$B%G%#%l%/%H%j$K3JG<$7$^$9!#0J2<$r;H$C$F2<$5$$!#(B + +@defun spam-stat-process-spam-directory +$B$3$N%G%#%l%/%H%j$K$"$k$9$Y$F$N%U%!%$%k$K$D$$$F(B spam $B$NE}7W$r@8@.$7$^$9!#(B +$B$9$Y$F$N%U%!%$%k$O0l$D$N(B spam $B%a!<%k$H$7$F07$o$l$^$9!#(B +@end defun + +@defun spam-stat-process-non-spam-directory +$B$3$N%G%#%l%/%H%j$K$"$k$9$Y$F$N%U%!%$%k$K$D$$$FHs(B-spam $B$NE}7W$r@8@.$7$^$9!#(B +$B$9$Y$F$N%U%!%$%k$O0l$D$N(B spam $B$G$O$J$$%a!<%k$H$7$F07$o$l$^$9!#(B +@end defun + +$BIaDL$O(B @file{~/Mail/mail/spam} $B$N$h$&$J%G%#%l%/%H%j(B ($BDL(B +$B>o(B @samp{nnml:mail.spam} $B%0%k!<%W$KBP1~(B) $B$KBP$7(B +$B$F(B @code{spam-stat-process-spam-directory} $B$r8F$V$G$7$g$&!#$^(B +$B$?(B @file{~/Mail/mail/misc} $B$N$h$&$J%G%#%l%/%H%j(B ($BDL(B +$B>o(B @samp{nnml:mail.misc} $B%0%k!<%W$KBP1~(B) $B$KBP$7(B +$B$F(B @code{spam-stat-process-non-spam-directory} $B$r8F$V$G$7$g$&!#(B + +$B$"$J$?$,(B @acronym{IMAP} $B$r;H$C$F$$$k$J$i%a!<%k$r%m!<%+%k$K$O;}$C$F$$$J$$(B +$B$N$G!"$=$l$OF0$+$J$$$G$7$g$&!#0l$D$N2r7h:v$O!"(BGnus $B%(!<%8%'%s%H$G5-;v$r(B +$B%-%c%C%7%e$9$k$3$H$G$9!#$=$&$9$l(B +$B$P(B @code{spam-stat-process-spam-directory} $B$H$7(B +$B$F(B @file{"~/News/agent/nnimap/mail.yourisp.com/personal_spam"} $B$N$h$&$J(B +$B$b$N$,;H$($^$9!#(B@xref{Agent as Cache}. + +@defvar spam-stat +$B$3$NJQ?t$O$9$Y$F$NE}7W$N%O%C%7%e%F!<%V%k(B -- $B2f!9$,<-=q$H8@$C$F$$$k$b(B +$B$N(B -- $B$r;}$A$^$9!#$3$N%O%C%7%e%F!<%V%k$O!"APJ}$N%3%l%/%7%g%s$N$9$Y$F$NC1(B +$B8l$K$D$$$F(B spam $B$*$h$SHs(B-spam $B%a!<%k$K$*$1$k=P8=IQEY$rI=$9%Y%/%H%k$r3JG<(B +$B$7$^$9!#(B +@end defvar + +$BE}7W$r:G=i$+$i:n$jD>$7$?$$$H$-$O!"<-=q$r%j%;%C%H$9$kI,MW$,$"$j$^$9!#(B + +@defun spam-stat-reset +@code{spam-stat} $B%O%C%7%e%F!<%V%k$r%j%;%C%H$7!"$9$Y$F$NE}7W$r:o=|$7$^$9!#(B +@end defun + +$B9T$J$C$?$i<-=q$r%;!<%V$7$J$1$l$P$J$j$^$;$s!#<-=q$O$+$J$jBg$-$/$J$k$+$b$7(B +$B$l$^$;$s!#<-=q$rDI2C99?7$7$J$$>l9g(B ($B8@$$49$($k$H!"Nc$($PKh7n0l2s:n$jD>$9(B +$B>l9g(B)$B!"IQHK$K8=$l$J$$$+!"$^$?$O(B spam $B$+Hs(B-spam $B$N$I$A$i$KB0$9$k$+$,$O$C(B +$B$-$j$7$J$$$9$Y$F$NC18l$r:o=|$9$k$3$H$K$h$C$F!"<-=q$N%5%$%:$r>.$5$/$9$k$3(B +$B$H$,$G$-$^$9!#(B + +@defun spam-stat-reduce-size +$B<-=q$N%5%$%:$r>.$5$/$7$^$9!#$3$l$O<-=q$rDI2C99?7$7$?$/$J$$>l9g$@$1;H$C$F(B +$B2<$5$$!#(B +@end defun + +@defun spam-stat-save +$B<-=q$r%;!<%V$7$^$9!#(B +@end defun + +@defvar spam-stat-file +$B<-=q$N3JG<$K;H$&%U%!%$%kL>$G$9!#%G%#%U%)%k%H$O(B @file{~/.spam-stat.el} $B$G(B +$B$9!#(B +@end defvar + +@node Splitting mail using spam-stat +@subsubsection spam-$BE}7W(B (spam-stat) $B$r;H$C$F%a!<%k$rJ,3d$9$k(B + +@code{spam-stat} $B$r;H$C$F%a!<%k$rJ,3d$9$k$?$a$K!"(B@file{~/.gnus.el} $B%U%!(B +$B%$%k$K0J2<$rDI2C$9$kI,MW$,$"$j$^$9!#(B + +@lisp +(require 'spam-stat) +(spam-stat-load) +@end lisp + +$B$3$l$OI,MW$J(B Gnus $B$N%3!<%I$H$"$J$?$,:n$C$?<-=q$r(B load $B$7$^$9!#(B + +$B$r;}$D%a!<%k$rB>$N%0%k!<%W$KF~$l$k_I2a$r$b9T$J$$$?$$$J$i$P!"0J(B +$B2<$N<0$r;H$C$F2<$5$$!#@55,I=8=$K9gCW$7$J$$%a!<%k$@$1$r(B spam $B$+$b$7$l$J$$(B +$B$H9M$($^$9!#(B + +@lisp +(setq nnmail-split-fancy + `(| ("Subject" "\\bspam-stat\\b" "mail.emacs") + (: spam-stat-split-fancy) + "mail.misc")) +@end lisp + +$B:G=i$K(B spam $B$N_I2a$r$7$?$$>l9g!"<-=q$r:n$k$H$-$K==J,$KCm0U$7$J$1$l$P$J$j(B +$B$^$;$s!#(B +@code{spam-stat-split-fancy} $B$O(B @samp{mail.emacs} $B$H(B @samp{mail.misc} $B$N(B +$B$I$A$i$N%a!<%k$bHs(B-spam $B$G$"$k$H2rJ}$H$bF~$C$F$$$J$1$l$P$J$i$J$$$3$H$KCm0U$7$F(B +$B2<$5$$!#(B + +@lisp +(setq nnmail-split-fancy + `(| (: spam-stat-split-fancy) + ("Subject" "\\bspam-stat\\b" "mail.emacs") + "mail.misc")) +@end lisp + +$B$3$l$rEAE}E*$J_I2a$HAH$_9g$o$;$k$3$H$b$G$-$^$9!#$3$3$G$O2f!9$O$9$Y$F(B +$B$N(B HTML $B$@$1$N%a!<%k$r(B @samp{mail.spam.filtered} $B%0%k!<%W$KF~$l$k$b$N$H(B +$B$7$^$7$g$&!#(B@code{spam-stat-split-fancy} $B$O$=$l$i$N%a!<%k$r8+$J$$$N$G!"(B +$B<-=q$r:n$k$H$-$K!"(B@samp{mail.spam.filtered} $B$N%a!<%k$,(B spam $B$^$?$O(B +$BHs(B-spam $B%3%l%/%7%g%s$N$I$A$i$K$bF~$k$Y$-$G$O$J$$$3$H$KCm0U$7$F2<$5$$(B! + +@lisp +(setq nnmail-split-fancy + `(| ("Content-Type" "text/html" "mail.spam.filtered") + (: spam-stat-split-fancy) + ("Subject" "\\bspam-stat\\b" "mail.emacs") + "mail.misc")) +@end lisp + +@node Low-level interface to the spam-stat dictionary +@subsubsection spam-$BE}7W(B (spam-stat) $B<-=q$X$NDc3,AX%$%s%?!<%U%'!<%9(B + +@code{spam-stat} $B$r;H$&$?$a$No$N%a!<%k$@$H$O$b$O$d9M$($i$l$J$$%a!<%k$,$"$k%P%C%U%!$G(B +$B8F$P$l$^$9!#$9$G$KHs(B-spam $B$G$"$k$b$N$H$7$F=hM}$5$l$F$7$^$C$?%a!<%k$NCO0L(B +$B$NJQ99$K;H$C$F2<$5$$!#(B +@end defun + +@defun spam-stat-buffer-change-to-non-spam +$BDL>o$N%a!<%k$G$O$J$$(B spam $B$@$H$O$b$O$d9M$($i$l$J$$%a!<%k$,$"$k%P%C%U%!$G(B +$B8F$P$l$^$9!#$9$G$K(B spam $B$G$"$k$b$N$H$7$F=hM}$5$l$F$7$^$C$?%a!<%k$NCO0L$N(B +$BJQ99$K;H$C$F2<$5$$!#(B +@end defun + +@defun spam-stat-save +$B%O%C%7%e%F!<%V%k$r%U%!%$%k$K%;!<%V$7$^$9!#JQ?t(B @code{spam-stat-file} $B$G(B +$B@_Dj$5$l$?%U%!%$%kL>$,;H$o$l$^$9!#(B +@end defun + +@defun spam-stat-load +$B%O%C%7%e%F!<%V%k$r%U%!%$%k$+$i(B load $B$7$^$9!#JQ(B +$B?t(B @code{spam-stat-file} $B$G@_Dj$5$l$?%U%!%$%kL>$,;H$o$l$^$9!#(B +@end defun + +@defun spam-stat-score-word +$BC18l$N(B spam $B%9%3%"$rJV$7$^$9!#(B +@end defun + +@defun spam-stat-score-buffer +$B%P%C%U%!$N(B spam $B%9%3%"$rJV$7$^$9!#(B +@end defun + +@defun spam-stat-split-fancy +$BFC5i%a!<%kJ,3d$N$?$a$K$3$N4X?t$r;H$C$F2<$5$$!#(B +@code{nnmail-split-fancy} $B$K5,B'(B @samp{(: spam-stat-split-fancy)} $B$rDI2C(B +$B$7$^$9!#(B +@end defun + +$B$=$l$r;H$&A0$K!"I,$:<-=q$,(B load $B$5$l$F$$$k$h$&$K$7$F2<$5$$!#$3$l$K(B +$B$O(B @file{~/.gnus.el} $B%U%!%$%k$K0J2<$,I,MW$G$9(B: + +@lisp +(require 'spam-stat) +(spam-stat-load) +@end lisp + +$BBeI=E*$J%F%9%H$O0J2<$N4X?t8F=P$7$rI,MW$H$7$^$9(B: + +@example +Reset: (setq spam-stat (make-hash-table :test 'equal)) +Learn spam: (spam-stat-process-spam-directory "~/Mail/mail/spam") +Learn non-spam: (spam-stat-process-non-spam-directory "~/Mail/mail/misc") +Save table: (spam-stat-save) +File size: (nth 7 (file-attributes spam-stat-file)) +Number of words: (hash-table-count spam-stat) +Test spam: (spam-stat-test-directory "~/Mail/mail/spam") +Test non-spam: (spam-stat-test-directory "~/Mail/mail/misc") +Reduce table size: (spam-stat-reduce-size) +Save table: (spam-stat-save) +File size: (nth 7 (file-attributes spam-stat-file)) +Number of words: (hash-table-count spam-stat) +Test spam: (spam-stat-test-directory "~/Mail/mail/spam") +Test non-spam: (spam-stat-test-directory "~/Mail/mail/misc") +@end example + +$B<-=q$r@8@.$9$kJ}K!(B: + +@example +Reset: (setq spam-stat (make-hash-table :test 'equal)) +Learn spam: (spam-stat-process-spam-directory "~/Mail/mail/spam") +Learn non-spam: (spam-stat-process-non-spam-directory "~/Mail/mail/misc") +Repeat for any other non-spam group you need... +Reduce table size: (spam-stat-reduce-size) +Save table: (spam-stat-save) +@end example + +@node Other modes +@section $BB>$N%b!<%I$H$NAj8_:nMQ(B + +@subsection Dired +@cindex dired + +@code{gnus-dired-minor-mode} $B$O(B dired $B%P%C%U%!$G;H$($k$$$/$D$+$NJXMx$J5!(B +$BG=$rDs6!$7$^$9!#$3$l$O$C$F%U%!%$%k$r3+$-$^(B +$B$9(B (@code{gnus-dired-find-file-mailcap})$B!#@\F,<-$rIU$1$k$H!"%U%!%$%k$r?7(B +$B$7$$%P%C%U%!$G3+$-$^$9!#(B + +@item C-c C-m C-p +@findex gnus-dired-print +mailcap $B9`L\$K=>$C$F%U%!%$%k$r0u:~$7$^$9(B (@code{gnus-dired-print})$B!#0u:~(B +$B%3%^%s%I$,L5$$>l9g$O(B PostScript $B2hA|$K0u:~$7$^$9!#(B +@end table + +@node Various Various +@section $B$$$m$$$m$N$$$m$$$m(B +@cindex mode lines +@cindex highlights + +@table @code +@item gnus-home-directory +@vindex gnus-home-directory +$B$9$Y$F$N(B Gnus $B$N%U%!%$%kL>$H%G%#%l%/%H%jL>$NJQ?t$O!"$3$l$K$h$C$F=i4|2=$5(B +$B$l$^$9!#%G%#%U%)%k%HCM$O(B @file{~/} $B$G$9!#(B + +@item gnus-directory +@vindex gnus-directory +Gnus $B$,3JG<$9$k$?$/$5$s$N%U%!%$%kL>$H%G%#%l%/%H%jL>$NJQ?t$O!"$3$l$K$h$C(B +$B$F=i4|2=$5$l$^$9!#%G%#%U%)%k%HCM$O(B @env{SAVEDIR} $B4D6-JQ?t$NCM$+!"$=$NJQ(B +$B?t$,@_Dj$5$l$F$$$J$$>l9g$O(B @file{~/News/} $B$G$9!#(B + +@file{~/.gnus.el} $B%U%!%$%k$,FI$^$l$?$H$-$O(B Gnus $B$N$[$H$s$I$O$9$G$KFI$_9~(B +$B$^$l$F$$$k$H$$$&$3$H$KCm0U$7$F$/$@$5$$!#$3$l$O$D$^$j!"$3$NJQ?t(B +$B$r(B @file{~/.gnus.el} $B$NCf$G@_Dj$7$F$b!"$3$NJQ?t$K$h$C$F=i4|2=$5$l$kB>$N(B +$B%G%#%l%/%H%jJQ?t$O@5$7$/@_Dj$5$l$J$$$@$m$&$H$$$&$3$H$G$9!#$3$NJQ?t$OBe$o(B +$B$j$K(B @file{.emacs} $B$G@_Dj$7$F$/$@$5$$!#(B + +@item gnus-default-directory +@vindex gnus-default-directory +$B>e5-$NJQ?t$K$OA4$/4X78$"$j$^$;$s(B --- $B$3$NJQ?t$OA4$F$N(B Gnus $B%P%C%U%!!<$N(B +$B%G%#%U%)%k%H%G%#%l%/%H%j!<$r$I$&$9$Y$-$+$r@_Dj$7$^$9!#$b(B +$B$7(B @kbd{C-x C-f} $B$N$h$&$JL?Na$r/$J$$(B +$BNL$@$1$rFI$b$&$HEXNO$7$^$9!#$3$NJQ?t(B ($B=i4|@_DjCM(B 4096) $B$O!"%P%C%/%(%s%I(B +$B$,%X%C%@!<$HK\J8$N4V$N6h@Z$j9T$r8+$D$1$k$^$G$KFI$_9~$b$&$H$9$k@dBP:GBgD9(B +$B$r;XDj$7$^$9!#$3$NJQ?t$,(B @code{nil} $B$G$"$l$P!"FI$_9~$_>e8B$O$"$j$^$;$s!#(B +$B$b$7(B @code{t} $B$G$"$l$P!"%P%C%/%(%s%I$O5-;v$rItJ,ItJ,$GFI$_9~$b$&$H$O$;$:!"(B +$B5-;vA4BN$rFI$_9~$_$^$9!#$3$l$O(B @code{ange-ftp} $B$d(B @code{efs} $B$N$"$k%P!<(B +$B%8%g%s$G0UL#$r$b$A$^$9!#(B + +@item nnheader-head-chop-length +@vindex nnheader-head-chop-length +$B$3$NJQ?t(B ($B=i4|@_DjCM(B 2048) $B$O!"A05-$NA`:n$r9T$C$F$$$k$H$-$K!"$I$l$/$i$$(B +$B$NBg$-$5$NC10L$G3F5-;v$rFI$_9~$`$+$r@_Dj$7$^$9!#(B + +@item nnheader-file-name-translation-alist +@vindex nnheader-file-name-translation-alist +@cindex file names +@cindex invalid characters in file names +@cindex characters in file names +$B$3$l$O%U%!%$%kL>$NJ8;z$r$I$N$h$&$KJQ49$9$k$+$r;XDj$9$kO"A[%j%9%H$G$9!#Nc(B +$B$($P!"$b$7(B @samp{:} $B$,$"$J$?$N%7%9%F%`$G$O%U%!%$%kL>$NJ8;z$H$7$F$O;H$($J(B +$B$$>l9g(B ($B$"$J$?$O(B OS/2 $B%f!<%6$G$9(B)$B!"0J2<$N$h$&$K$9$k$3$H$,$G$-$^$9!#(B + +@lisp +@group +(setq nnheader-file-name-translation-alist + '((?: . ?_))) +@end group +@end lisp + +$Be$G$N$3$NJQ?t$N=i4|(B +$B@_DjCM$G$9!#(B + +@item gnus-hidden-properties +@vindex gnus-hidden-properties +$B$3$l$O(B ``$BIT2D;k(B'' $B%F%-%9%H$r1#$9$?$a$K;H$o$l$kB0@-$N%j%9%H$G$9!#$[$H$s$I(B +$B$N%7%9%F%`$G$O=i4|@_DjCM$O(B @code{(invisible t intangible t)} $B$G!"$3$l$O(B +$BIT2D;k%F%-%9%H$r8+$($J$/$7$F?($l$J$/$7$^$9!#(B + +@item gnus-parse-headers-hook +@vindex gnus-parse-headers-hook +$B%X%C%@!<$r2rpJs$r$r3NG'$9$k$H$-$K;H$&!"(B``$B;H$($J$$(B'' $B%0%k!<%WL>$K%^%C%A(B +$B$9$k@55,I=8=$G$9!#4{DjCM$O(B Gnus $B$NFbItF0:n(B ($BA*BrJ}K!$H%0%k!<%W$N6-3&$K!"(B +$BDL>o(B @samp{:} $B$r;H$C$F$$$k(B) $B$r$a$A$c$a$A$c$K$7$F$7$^$&$+$b$7$l$J$$!"$$$/(B +$B$D$+$N(B @strong{$BK\Ev$K(B} $B;H$($J$$%0%k!<%WL>$rJa$^$($^$9!#(B + +@acronym{IMAP} $B%f!<%6$O%0%k!<%WL>$K(B @samp{/} $B$r;H$$$?$$$H;W$&$G$7$g$&$1(B +$B$l$I!#(B +@end table + +@node The End +@chapter $B=*$o$j(B + +$B$O$$!"0J>e$,%^%K%e%"%k$G$9(B---$B$"$J$?$O$b$&<+J,<+?H$N?M@8$rAw$k;v$,$G$-$^(B +$B$9!#O"Mm$r$H$C$F2<$5$$!#$"$J$?$NG-$K:#F|$O!"$H$$$C$F$*$$$F2<$5$$!#(B + +$B$*$*!"(B@strong{$B?@$h(B}---$B$5$h$J$i$rBQ$($k;v$O$G$-$^$;$s!#(B($B$9$9$j5c$-!#(B) + +Ol' Charles Reznikoff $B$O$=$l$rHs>o$K$h$/8=$7$F$$$^$9$N$G!"$3$3$OH`$N$?$a(B +$B$K>y$j$^$9(B: + +@quotation +@strong{Te Deum} + +@sp 1 +Not because of victories @* +I sing,@* +having none,@* +but for the common sunshine,@* +the breeze,@* +the largess of the spring. + +@sp 1 +Not for victory@* +but for the day's work done@* +as well as I was able;@* +not for a seat upon the dais@* +but at the common table.@* +@end quotation + +$B;nLu(B: + +@quotation +@strong{Te Deum} + +@sp 1 +$B>!Mx$7$?$+$i$G$O$J$/(B @* +$B;d$O2N$&(B @* +$B2?$bL5$$$1$l$I(B @* +$B$"$NF|8w$d(B @* +$BB)?a$d(B @* +$B=U$NBg$-$5$N$?$a$K(B @* + +@sp 1 +$B>!Mx$N$?$a$G$O$J$/(B @* +$B0lF|$NO+F/$N$?$a$K(B @* +$B$^$?!"$=$l$rC#@.$G$-$?$3$H$K(B @* +$B9b:B$N>e$N@J$N$?$a$G$O$J$/(B @* +$BIaDL$N%F!<%V%k$N$H$3$m$G(B @* +@end quotation + +@node Appendices +@chapter $BIUO?(B + +@menu +* XEmacs:: XEmacs $B$G%$%s%9%H!<%k$9$k$?$a$NMW7o(B +* History:: $B$I$&$d$C$F(B Gnus $B$,:#F|$N$h$&$K$J$C$?$+(B +* On Writing Manuals:: $B$J$<$3$l$,=i?4e$=$&$H7h?4$7$^$7$?!#(B + +$B$3$NL5Ni$r9T$C$??MJ*$rD4$Y$F$_$?$$$N$J$i!"$"$J$?$N(B ($B$/$=(B!) $B%&%'%V%V%i%&(B +$B%6!<$r(B @uref{http://quimby.gnus.org/} $B$K8~$1$k;v$,$G$-$^$9!#(B +$B$3$l$O?7$7$/$F?h$JHG$N(B Gnus $B$NBh0lG[I[>l=j$G!"(BNewsrc $B$r$V$C2u$7$F?M!9$r(B +$B7cE\$5$l$k%5%$%H$H$7$FCN$i$l$F$$$^$9!#(B + +$B:G=i$N%"%k%U%!HG$N3+H/4|4V$K!"?7$7$$(B Gnus $B$O(B ``(ding) Gnus'' $B$H8F$P$l$F(B +$B$$$^$7$?!#(B@dfn{(ding)} $B$O$b$A$m$s!"(B@dfn{ding is not Gnus} $B$NC;=L7A$G!"$3(B +$B$l$OA4$/40A4$J13$G$9$,!"$@$l$,$=$s$J$3$H$r5$$K$9$k$G$7$g$&$+(B? ($B$H$3$m$G!"(B +$B$3$NC;=L7A$N(B ``Gnus'' $B$O$*$=$i$/G_ED$5$s$N0U?^DL$j(B ``$B%K%e!<%9(B'' $B$HH/2;$5(B +$B$l$k$Y$-$G!"$=$&$9$k$H$b$C$HE,@Z$JL>A0$K$J$j$^$9!#$=$&;W$$$^$;$s$+(B?) + +$B$I$A$i$K$;$h!"A4$F$N%(%M%k%.!<$r?7$7$$855$$NNI$$L>A0$rIU$1$k$N$K;H$$2L$?(B +$B$7$?8e!"$=$NL>A0$O(B @emph{$B$"$^$j$K(B} $B855$$,NI$9$.$k$H$$$&;v$K$J$j!"$=$l(B +$B$r(B ``Gnus'' $B$H:F$SL?L>$7$^$7$?!#$G$b!":#2s$OBgJ8;z$H>.J8;z$r:.$<$F$$$^$9!#(B +``Gnus'' $B$H(B ``@sc{gnus}'' $B$G$9!#?7$7$$$b$N(B $B$H(B $B8E$$$b$N!#(B + +@menu +* Gnus Versions:: $B$I$s$J%P!<%8%g%s$N(B Gnus $B$,%j%j!<%9$5$l$F$$$k$+(B +* Other Gnus Versions:: $B%j%j!<%9$5$l$F$$$kB>$N%P!<%8%g%s$N(B Gnus +* Why?:: Gnus $B$NL\E*$O2?(B? +* Compatibility:: Gnus $B$O(B @sc{gnus} $B$H$I$l$/$i$$8_49@-$,$"$k$N(B? +* Conformity:: Gnus $B$OA4$F$NI8=`$rK~$?$=$&$H$9$k(B +* Emacsen:: Gnus $B$O$$$/$D$+$N8=BeE*$J(B Emacs $B4D6-$G(B ``September Gnus'' (99 $B%j%j!<%9$N8e(B +$B$G(B)) $B$,(B ''Gnus 5.2`` $B$H$$$&L>A0$G%j%j!<%9$5$l$^$7$?(B (40 $B%j%j!<%9(B)$B!#(B + +1996$BG/$N(B 7$B7n(B28$BF|$K(B Red Gnus $B$N:n6H$,;O$^$j!"$=$l$O(B 1997$BG/(B1$B7n(B25$BF|(B +$B$K(B (84 $B%j%j!<%9$N8e$G(B) ``Gnus 5.4'' $B$H$7$F%j%j!<%9$5$l$^$7$?(B (67 $B%j%j!<(B +$B%9(B)$B!#(B + +1997$BG/(B9$B7n(B13$BF|$K!"(BQuassia Gnus $B$,3+;O$5$l!"(B37 $B%j%j!<%9B3$-$^$7$?!#$=$l(B +$B$O(B ``Gnus 5.6'' $B$H$7$F(B 1998$BG/(B3$B7n(B8$BF|$K%j%j!<%9$5$l$^$7$?(B (46 $B%j%j!<%9(B)$B!#(B + +1998$BG/(B8$B7n(B29$BF|$K(B Gnus 5.6 $B$+$i(B Pterodactyl Gnus $B$,@8$^$l!"(B1999$BG/(B12$B7n(B3$BF|(B +$B$K(B (99 $B%j%j!<%9$H(B CVS $B%j%]%8%H%j$G$N:n6H$N8e(B) ``Gnus 5.8'' $B$H$7$F%j%j!<(B +$B%9$5$l$^$7$?!#(B + +2000$BG/(B10$B7n(B26$BF|$K(B Oort Gnus $B$,3+;O$5$l$^$7$?!#(B + +$B$b$7@\F,<-$r;}$C$?HG$N(B Gnus -- ``(ding) Gnus'', ``September Gnus'', +``Red Gnus'', ``Quassia Gnus'', ``Pterodactyl Gnus'', ``Oort Gnus'' +-- $B$K=P2q$C$F$b!":.Mp$7$J$$$G$/$@$5$$!#$"$J$?$,62$,$C$F$$$k;v$rCN$i$l$F(B +$B$O$$$1$^$;$s!#8e$m$K2<$,$j$J$5$$!#$f$C$/$j$H!#B>$K2?$r$7$F$b!"Av$C$F$O$$(B +$B$1$^$;$s!#$=$l$,FO$+$/$J$k$^$G!"@E$+$KJb$-5n$j$J$5$$!#E,@Z$K%j%j!<%9$5$l(B +$B$?HG$N(B Gnus $B$r8+$D$1$F!"Be$o$j$K$=$l$K4s$jE:$C$F2<$5$$!#(B + +@node Other Gnus Versions +@subsection $BB>$N(B Gnus $B$N%P!<%8%g%s(B +@cindex Semi-gnus + +Lars $B$5$s$,D4@=$7$F%j%j!<%9$7$?(B Gnus $B$K2C$($F!"F|K\$G$O(B Semi-gnus $B$N3+H/(B +$B$,9T$J$o$l$F$$$^$9!#$3$l$O(B @acronym{SEMI} $B$H$$$&(B @acronym{MIME} $B$N5!G=$r(B +$BN$5$l!"(BT-gnus, Nana-gnus $B$*$h$S(B Chaos $B$N0[$J$C(B +$B$?7OE}$,$"$j$^$9!#$3$l$i$O6/NO$J(B @acronym{MIME} $B$N5!G=$H3F9q8lBP1~$N5!G=(B +$B$rDs6!$9$k$b$N$G!"FC$KF|K\?M$N%f!<%6$K$H$C$FBg;v$J$b$N$G$9!#(B + +@node Why? +@subsection $B$J$<(B? + +Gnus $B$NL\E*$O2?$G$9$+(B? + +$B;d$O!"$"$J$?$N9M$(IU$/;v$rA4$F$G$-$k(B ``$B$9$P$i$7$$(B'' ``$B$+$C$3$$$$(B'' ``$B$$(B +$B$+$9(B'' ``$B$O$d$j$N(B'' $B%K%e!<%9%j!<%@$rDs6!$7$?$$$H;W$$$^$9!#$3$l$O;d$NBg85(B +$B$NF05!$G$9$,!"(BGnus $B$N:n6H$r$7$F$$$k4V$K!"$3$N@$Be$N%K%e!<%9%j!<%@!<$OK\(B +$BEv$K@P4o;~Be$KB0$7$F$$$k$H$$$&;v$,L@$i$+$K$J$j$^$7$?!#%K%e!<%9%j!<%@!<$O!"(B +$B%$%s%?!<%M%C%H$NMD;y4|$+$i$[$H$s$IH/E8$7$F$$$^$;$s$G$7$?!#$b$78=:_$NA}2C(B +$BN($GNL$,A}2C$7$D$E$1$l$P!"A4$F$N8=:_$N%K%e!<%9%j!<%@!<$OA4$/Lr$KN)$?$J$/(B +$B$J$k$G$7$g$&!#0lF|$K(B 1000 $B$d$b$C$H$?$/$5$s$N?7$7$$5-;v$N$"$k%K%e!<%9%0%k!<(B +$B%W$r07$&$K$O$I$&$9$l$PNI$$$N$G$7$g$&(B? $BEj9F$r$9$kI4K|$d$=$l$h$jB?$$?M!9$K(B +$BCY$l$J$$$h$&$KIU$$$F$$$/$K$O$I$&$9$l$PNI$$$N$G$7$g$&(B? + +Gnus $B$O$3$l$i$Nl$H$7$F;H$o$l$FM_$7$$$G$9!#G_ED$5(B +$B$s$N%K%e!<%9%j!<%@!<$r%P%C%/%(%s%I$+$iJ,N%$9$k$H$$$&8-L@$JJ}?K$r3HD%$9$k(B +$B;v$K$h$C$F!"(BGnus $B$O%a!<%k$r7$$$F$$$k$N$G$9!#(B + +$B$*$=$i$/(B Gnus $B$O40@.$9$k;v$O$J$$$N$+$b$7$l$^$;$s!#(B +@kbd{C-u 100 M-x all-hail-emacs} $B$H(B @kbd{C-u 100 M-x all-hail-xemacs} $B$G(B +$B$9!#(B + +@node Compatibility +@subsection $B8_49@-(B + +@cindex compatibility +Gnus $B$O(B @sc{gnus} $B$H40A4$K8_49@-$,$"$k$h$&$K@_7W$5$l$F$$$^$9!#$[$H$s$IA4(B +$B$F$N%-!<%P%$%s%G%#%s%0$O$=$N$^$^;D$C$F$$$^$9!#$b$A$m$s!"B?$/$N%-!<%P%$%s(B +$B%G%#%s%0$,DI2C$5$l$^$7$?$,!"0l$D$+Fs$D$N$"$$$^$$$J>l9g$r=|$$$F!"8E$$%P%$(B +$B%s%G%#%s%0$,JQ99$5$l$?;v$O$"$j$^$;$s!#(B + +$B2f!9$N%b%C%H!<$O(B: +@quotation +@cartouche +@center $B9]E4$N9|AH$_$N6u9b$/!#(B +@end cartouche +@end quotation +$B$G$9!#(B + +$BA4$F$NL?Na$O$=$NL>A0$,JQ$o$C$F$$$^$;$s!#$$$/$D$+$NFbIt4X?t$OL>A0$rJQ$($^(B +$B$7$?!#(B + +@code{gnus-uu} $B%Q%C%1!<%8$O7`E*$KJQ2=$7$F$$$^$9!#(B@xref{Decoding +Articles}. + +$B0l$D$Ne$2$^$9(B)$B!"D>@\O"A[%j%9%H$rJQ99$9$k;v$O0[>o$J7k2L$r$b$?$i$9$G$7$g$&!#(B + +@cindex hilit19 +@cindex highlighting +$B8E$$(B hilit19 $B$N%3!<%I$OA4$/F0:n$7$^$;$s!#$N%3!<(B +$B%I(B) $B$r>C5n$9$k$Y$-$G$7$g$&!#(B@sc{gnus} $B$Ko$K(B} $B$h$/%P%0Js9p$rAw$kJJ$,$"$k$N$G$"$l$P!"$7$P$i$/$9$k$HLr$KN)(B +$B$D(B help $B%P%C%U%!$,$&$k$5$$$H46$8$k$+$b$7$l$^$;$s!#$=$&$G$"$l$P!"$=$l$,I=(B +$B<($5$l$k$N$rHr$1$k$?$a$K!"(B +@code{gnus-bug-create-help-buffer} $B$r(B @code{nil} $B$K@_Dj$7$F2<$5$$!#(B + +@node Conformity +@subsection $B0lCW@-(B + +$B$3$l$O!"M}M3L5$-H?93!"$8$c$J$$$G$9$h!"1|$5$s!#2f!9$OA4$F$NCN$i$l$F$$$kI8(B +$B=`$K1h$C$F$$$^$9!#$b$A$m$s!"2f!9$,;?@.$G$-$J$$I8=`$H(B/$B$b$7$/$O=,47$O=|$-(B +$B$^$9$,!#(B + +@table @strong +@item RFC (2)822 +@cindex RFC 822 +@cindex RFC 2822 +$B$3$NI8=`$X$NCN$i$l$F$$$k0cH?$O$"$j$^$;$s!#(B + +@item RFC 1036 +@cindex RFC 1036 +$B$3$NI8=`$bCN$i$l$F$$$k0cH?$O$"$j$^$;$s!#(B + +@item Son-of RFC 1036 +@cindex Son-of RFC 1036 +$B$3$l$K$O$$$/$D$+$N0cH?$,$"$j$^$9!#(B + +@table @emph +@item X-Newsreader +@item User-Agent +$B$3$l$O(B ``$B$D$^$i$J$$%X%C%@!<(B'' $B$H9M$($i$l$F$$$^$9$,!";d$O>CHqpJs$G$"(B +$B$k$H8+$J$7$F$$$^$9!#(B@code{tin} $B$H(B @code{Netscape} $B$+$iAw$i$l$F$/$kHs>o$K(B +$BB?$/$NMM<0$K1h$C$F$$$J$$5-;v$r8+$?8e$G!";d$O$=$l$i$r5-;v$rEj9F$9$k$?$a$K(B +$B$O;H$o$J$$J}$,NI$$$H$$$&;v$rCN$j$^$7$?!#$b$7(B @code{X-Newsreader} $B%X%C%@!<(B +$B$,L5$1$l$P;d$O$=$N>pJs$rF@$k;v$O$J$+$C$?$G$7$g$&!#(B +@end table + +@item USEFOR +@cindex USEFOR +USEFOR $B$O!"(BIETF $B$N(B working group $B$,(B Son-of-RFC 1036 $B$K4p$E$$$F!"(B +RFC 1036 $B$N8e7Q$H$7$F=q$$$F$$$k$b$N$G$9!#%K%e!<%95-;v$NMM<0$KBP$7$F!"$$(B +$B$m$$$m$JJQ99$rDs0F$7$?(B draft $B$r:n@.$7$^$7$?!#(BGnus $B%?%o!<(B +$B$O(B draft $B$,(B RFC $B$H$7$FG'$a$i$l$?$H$-$KJQ99$NpJs(B) $B$H$7$FH/9T$5$l$^$7(B +$B$?!#8=:_(B Open PGP $B$H8F$P$l$k8e7Q$N(B RFC 2440 $B$,!"I8=`2=%H%i%C%/(B ($BLuCm(B: +Standards Track---$B9q:]I8=`$H$9$Y$-;EMM(B) $B$K>h$;$i$l$^$7$?!#$I$A$i$b(B +$BHs(B-@acronym{MIME} $B%a%C%;!<%8$N$?$a$N(B @acronym{PGP} $B$NMM<0$rDj5A$7$^$9!#(B +Gnus $B$O%(%s%3!<%I(B ($B=pL>$*$h$S0E9f2=(B) $B$H%G%3!<%I(B ($BG'>Z$*$h$S0E9f$NI|9f(B) +$B$NN>J}$r%5%]!<%H$7$^$9!#(B + +@item PGP/MIME - RFC 2015/3156 +RFC 2015 (RFC 1991 $B$NBe$o$j$K(B RFC 2440 $B$K4p$E$$$?(B 3156 $B$GCV$-49$($i$l$^(B +$B$7$?(B) $B$O!"(BRFC 1991/2440 $B$r(B @acronym{MIME} $B$G0O$&MM<0$K$D$$$F=R$Y$F$$$^$9!#(B +Gnus $B$O%(%s%3!<%I$H%G%3!<%I$NN>J}$r%5%]!<%H$7$^$9!#(B + +@item S/MIME - RFC 2633 +RFC 2633 $B$O(B @acronym{S/MIME} $B$N7A<0$K$D$$$F=R$Y$F$$$^$9!#(B + +@item IMAP - RFC 1730/2060, RFC 2195, RFC 2086, RFC 2359, RFC 2595, RFC 1731 +RFC 1730 $B$O(B @acronym{IMAP} $B%P!<%8%g%s(B 4 $B$G!"(BRFC 2060 (@acronym{IMAP} +4 $B2~Dj(B 1) $B$GB?>/99?7$5$l$F$$$^$9!#(B +RFC 2195 $B$O(B @acronym{IMAP} $B$N(B CRAM-MD5 $BG'>Z$K$D$$$F=R$Y$F$$$^$9!#(B +RFC 2086 $B$O(B @acronym{IMAP} $B$N;HMQ@)8B0lMw(B (ACL) $B$K$D$$$F=R$Y$F$$$^$9!#(B +RFC 2359 $B$O(B @acronym{IMAP} $B$N%W%m%H%3%k$N3HD%$K$D$$$F=R$Y$F$$$^$9!#(B +RFC 2595 $B$O(B @acronym{IMAP} $B$K$*$1$kE,@Z$J(B @acronym{TLS} $B$NE}(B +$B9g(B (STARTTLS) $B$K$D$$$F=R$Y$F$$$^$9!#(B +RFC 1731 $B$O(B @acronym{IMAP} $B$N(B GSSAPI/Kerberos4 $B$Ne$K=q$+$l$F$$$kJ8>O$K4X$9$k;v$G!"(BGnus $B$,$=$l$rK~$?$7$F$$$J$$$h$&$JF0:n(B +$B$r$7$F$$$k;v$K5$IU$$$?$i!"$?$a$i$o$:$K(B Gnus $B%?%o!<$H2f!9$KCN$i$;$F2<$5$$!#(B + +@node Emacsen +@subsection Emacsen +@cindex Emacsen +@cindex XEmacs +@cindex Mule +@cindex Emacs + +Gnus $B$O0J2<$N$b$N$GF0:n$7$^$9(B: + +@itemize @bullet + +@item +Emacs 21.1 $B$H$=$l0J>e!#(B + +@item +XEmacs 21.4 $B0J>e$N(B Mule $B5!G=IU$-(B + +@end itemize + +$B$3$N(B Gnus $B$NHG$O$3$l$h$j8E$$$I$s$J(B Emacsen $B$G$b40A4$KF0:n$7$J$$$G$7$g$&!#(B +$B>/$J$/$H$b!"?.Mj$G$-$kF0:n$O$7$J$$$G$7$g$&!#8E$$HG$N(B Gnus $B$O8E(B +$B$$(B Emacs $B$NHG$G$bF0:n$9$k$G$7$g$&!#(B + +$B$$$m$$$m$J%W%i%C%H%U%)!<%`$N(B Gnus $B$N4V$K$O$$$/$D$+$NGyA3$H$7$?0c$$$,$"$j(B +$B$^$9(B---XEmacs $B$O$b$C$H2hA|5!G=(B ($B%m%4$H%D!<%k%P!<(B) $B$rFCD'$K$7$F$$$^$9(B--$B$7(B +$B$+$7!"$=$NB>$O!"A4$F$N(B Emacsen $B$G$[$H$s$IF1$8$O$:$G$9!#(B + +@node Gnus Development +@subsection Gnus $B$N3+H/(B + +Gnus $B$OFs$D$NCJ3,$N=[4D$G3+H/$5$l$F$$$^$9!#:G=i$NCJ3,(B +$B$O(B @samp{ding@@gnus.org} $B$G$N$?$/$5$s$N5DO@$,$"$j!"$=$3$GJQ99$d?7$7$$5!(B +$BG=$rDs0F$7$^$9!#$3$NCJ3,$O(B @dfn{$B%"%k%U%!(B} $BCJ3,$H8F$P$l$^$9!#$H$$$&$N$O!"(B +$B$3$NCJ3,$G%j%j!<%9$5$l$?(B Gnusae $B$O(B @dfn{$B%"%k%U%!%j%j!<%9(B} $B$b$7$/$O(B ($BB>(B +$B$NCDBN$G$O$h$jNI$/;H$o$l$k(B) @dfn{$B%9%J%C%W%7%g%C%H(B} $B$H8F$P$l$k$b$N$@$+$i(B +$B$G$9!#$3$NCJ3,$G$O!"(BGnus $B$OIT0BDj$G$"$k$H9M$($i$l$F$*$j!"0lHL$NMxMQA0$K$J$C$F$$$^$9!#(B + +50-100 $B$/$i$$$N%j%j!<%9$N8e$G!"(BGnus $B$O(B @dfn{$BE`7k(B} $B$5$l$?$H@k8@$5$l!"%P%0(B +$B=$@5$N$_$,E,MQ$5$l$^$9!#(BGnus $B$O@\F,<-$,l$G=q$/$N$O!"3'$r62$l(B +$B$5$;$k$H$$$&$N$b;ve!";d$OKhF|$H$F$b$?$/$5$s$NAGE($J%P%0%l%]!<%H$r(B +$B$l$,;d$r4n$S$GK~$?$7$^$7$?!#0&Io!#$3$N%j%9%H$N?M!9$O(B +$BG&BQ$rD6$($F;d$N(B ``$B$"$!!"$=$l$O$9$P$i$7$$9M$($@(B $B!"$&$s!";d$O(B +$BBT$?$:$K$=$l$r$9$0%j%j!<%9$7$h$&(B $B!"$=$l$OA4$/F0:n$7$J$$(B $B!"$&$s!";d$O$9$0$K=P$=$&(B $B$$$d!"E;$&!"$=$l$OA4$/F0:n$7$J(B +$B$$$>(B''' $B$H$$$&%j%j!<%9$K4X$9$k$N7A<0$NId9f2=(B/$BI|9f2=$d%P%0=$@5!"?7$7$$(B +$B5!G=$J$I$N$[$s$H$&$KB?$/$N$b$N!#(B + +@item +Per Abrahamsen--custom$B!"%9%3%"!"%O%$%i%$%H$H(B @sc{soup} $B%3!<%I(B ($BB>$NB?$/(B +$B$N;v$H6&$K(B)$B!#(B + +@item +Luis Fernandes---$B%G%6%$%s$H%0%i%U%#%C%/!#(B + +@item +Joe Reiss---$B%9%^%$%j!<$N4i$N:n!#(B + +@item +Wes Hardaker---@file{gnus-picon.el} $B$H(B @dfn{picon} $B$NItJ,$N%^%K%e%"(B +$B%k(B (@pxref{Picons})$B!#(B + +@item +Kim-Minh Kaplan---picon $B%3!<%I$KCV$1$k99$J$k:n6H!#(B + +@item +Brad Miller---@file{gnus-gl.el} $B$H(B Grouplens $B$NItJ,$N%^%K%e%"%k!#(B + +@item +Sudish Joseph---$B?t$(@Z$l$J$$$[$I$N%P%0$N=$@5!#(B + +@item +Ilja Weis---@file{gnus-topic.el}$B!#(B + +@item +Steven L. Baur---$B$?$/$5$s$N$?$/$5$s$N$?$/$5$s$N%P%0$NH/8+$H=$@5!#(B + +@item +Vladimir Alexiev---refcard $B$H%j%U%!%l%s%9$N>.:};R!#(B + +@item +Felix Lee & Jamie Zawinski---$B;d$O(B Felix Lee $B$H(B JWZ $B$N(B XGnus $BG[I[$+$i$$$/(B +$B$D$+$NItJ,$rEp$_$^$7$?!#(B + +@item +Scott Byer---@file{nnfolder.el} $B$N3HD%$H2~D{!#(B + +@item +Peter Mutsaers---$B8E;v5-;v$N%9%3%"%3!<%I!#(B + +@item +Ken Raebburn---@acronym{POP} $B%a!<%k%5%]!<%H!#(B + +@item +Hallvard B Furuseth---$B$$$m$$$m$J>.$5$JJ*$dItJ,!"FC$K(B .newsrc $B%U%!%$%k$r(B +$B07$&ItJ,!#(B + +@item +Brian Edmonds---@file{gnus-bbdb.el}$B!#(B + +@item +David Moore--@file{nnvirtual.el} $B$N2~D{$HB?$/$NB>$N;v!#(B + +@item +Kevin Davidson---@dfn{ding} $B$NL>A0$r;W$$IU$-$^$7$?!#$G$9$+$i!"H`$r@U$a$F(B +$B2<$5$$!#(B + +@item +Fran,Ag(Bois Pinard---$BB?$/$N!"B?$/$N6=L#?<$/40A4$J%P%0%l%]!<%H$H(B autoconf $B$N(B +$B%5%]!<%H!#(B +@end itemize + +$B$3$N%^%K%e%"%k(B (Gnus $B1Q8lHG(B) $B$O(B Adrian Aichner $B$H(B Ricardo Nassif, Mark +Borges $B$K$h$C$F9;@5$5$l!"(BJost Krieger $B$K$h$C$F0lItJ,$r9;@5$5$l$^$7$?!#(B + +$B0J2<$N?M!9$OB?$/$N%Q%C%A$HDs0F$G9W8%$7$^$7$?(B: + +Christopher Davis, +Andrew Eskilsson, +Kai Grossjohann, +Kevin Greiner, +Jesper Harder, +Paul Jarc, +Simon Josefsson, +David K,Ae(Bgedal, +Richard Pieri, +Fabrice Popineau, +Daniel Quinlan, +Michael Shields, +Reiner Steib, +Jason L. Tibbitts, III, +Jack Vinson, +$B;32,(B $B9nH~(B, +and +Teodor Zlatanov. + +$B$=$l$H!"0J2<$N?M$K$b%Q%C%A$d$=$NB>$N$b$N$r46ED(B $B7u0l(B, +Raja R. Harinath, +$BNS(B $BK'.NS(B $B=$J?(B, +Petr Konecny, +$B>.4X(B $B5HB'(B, +Thor Kristoffersen, +Jens Lautenbacher, +Martin Larose, +Seokchan Lee, @c Lee +Joerg Lenneis, +Carsten Leonhardt, +James LewisMoss, +Christian Limpach, +Markus Linnala, +Dave Love, +Mike McEwan, +Tonny Madsen, +Shlomo Mahlab, +Nat Makarevitch, +Istvan Marko, +David Martin, +Jason R. Mastaler, +Gordon Matzigkeit, +Timo Metzemakers, +Richard Mlynarik, +Lantz Moore, +$B(B $B2m(B +$B@2(B, $B>.Ln(B $B=(5.(B, +Ettore Perazzoli, +William Perry, +Stephen Peters, +Jens-Ulrik Holger Petersen, +Ulrich Pfeifer, +Matt Pharr, +Andy Piper, +John McClary Prevost, +Bill Pringlemeir, +Mike Pullen, +Jim Radford, +Colin Rafferty, +Lasse Rasinen, +Lars Balker Rasmussen, +Joe Reiss, +Renaud Rioboo, +Roland B. Roberts, +Bart Robinson, +Christian von Roques, +Markus Rost, +Jason Rumney, +Wolfgang Rupprecht, +Jay Sachs, +Dewey M. Sasser, +Conrad Sauerwald, +Loren Schall, +Dan Schmidt, +Ralph Schleicher, +Philippe Schnoebelen, +Andreas Schwab, +Randal L. Schwartz, +Justin Sheehy, +Danny Siu, +Matt Simmons, +Paul D. Smith, +Jeff Sparkes, +Toby Speight, +Michael Sperber, +Darren Stalder, +Richard Stallman, +Greg Stark, +Sam Steingold, +Paul Stevenson, +Jonas Steverud, +Paul Stodghill, +$B?\F#(B $B@60l(B, +Kurt Swanson, +Samuel Tardieu, +Teddy, +$B8MBt(B $B>=I'(B, +Chuck Thompson, +Philippe Troin, +James Troup, +Trung Tran-Duc, +Jack Twilley, +Aaron M. Ucko, +Aki Vehtari, +Didier Verna, +Vladimir Volovich, +Jan Vroonhof, +Stefan Waldherr, +Pete Ware, +Barry A. Warsaw, +Christoph Wedler, +Joe Wells, +Lee Willis, +and +Lloyd Zusman. + +$B$=$l$>$l$N?M!9$,9T$C$?;v$N40A4$J354Q$rF@$k$?$a$K!"(BChangeLog $B$,(B Gnus $B$N%"(B +$B%k%U%!G[I[$K$O4^$^$l$F$$$F!"K-IY$JFI$_J*$rM?$($k$G$7$g$&!#(B(550KB $B$H$$$/(B +$B$i$+(B)$B!#(B + +$B;d$,K:$l$?A4$F$N?M$Ke$N$b$N(B---Gnus 5.4/5.5 +* Quassia Gnus:: 2 $B$+$1$k(B 2 $B$O(B 4$B!"$b$7$/$O(B Gnus 5.6/5.7 +* Pterodactyl Gnus:: $B8^HVL\!"(BP $B$G;O$^$k!"$b$7$/$O(B Gnus 5.8/5.9 $B$H$7$FCN$i$l$F$$$k$b$N(B +* Oort Gnus:: $B5pBg$J!#1s$/MZ$+$J!#(BGnus 5.10/5.11$B!#(B +* No Gnus:: Lars $B$5$s!"D>$7$F(B! +@end menu + +$B$3$N%j%9%H$O!"$b$A$m$s!"(B@emph{$B$?$$$F$$$N(B} $B=EMW$J?7$7$$5!G=$K4X$9(B +$B$k(B @emph{$BC;$$(B}$B354Q$G$7$+$"$j$^$;$s!#$$$$$(!"K\Ev$O$=$&$G$O$"$j$^$;$s!#$b$C(B +$B$H$b$C$H$?$/$5$s$N$b$N$,$"$j$^$9!#$O$$!"2f!9$OAOB$@-$N40A4$J8z2L$r46$8$F(B +$B$$$k$N$G$9!#(B + +@node ding Gnus +@subsubsection (ding) Gnus + +Gnus 5.0/5.1 $B$N?7$7$$5!G=(B: + +@itemize @bullet + +@item +$BA4$F$N%P%C%U%!$N304Q$O%U%)!<%^%C%H$N$h$&$JJQ?t(B (@pxref{Group Buffer +Format} $B$H(B @pxref{Summary Buffer Format}) $B$K$h$C$F@_Dj$rJQ$($k;v$,$G$-$k(B +$B$h$&$K$J$j$^$7$?!#(B + +@item +$B%m!<%+%k%9%W!<%k$H!"$$$/$D$+$N(B @acronym{NNTP} $B%5!<%P!<$rF1;~$K;H$&;v$,$G(B +$B$-$k$h$&$K$J$j$^$7$?(B (@pxref{Select Methods})$B!#(B + +@item +$B%0%k!<%W$r;ve$N%0%k!<%W$K7k9g$G$-$k$h$&$K$J$j$^$7$?(B (@pxref{Virtual +Groups})$B!#(B + +@item +$BB?$/$N0c$C$?%a!<%kMM<0(B (@pxref{Getting Mail}) $B$rFI$a$k$h$&$K$J$j$^$7$?!#(B +$BA4$F$N%a!<%k%P%C%/%(%s%I$OJXMx$J%a!<%k4|8B@Z$l>C5n5!9=$re$2$k$N$K==J,$J%X%C%@!<$r$C$F5-;v$K%9%3%"$rIU$1$k;v$,$G$-$^$9(B (@pxref{Scoring})$B!#(B +$B$"$J$?$N$?$a$K5-;v$r$I$N$h$&$K%9%3%"$rIU$1$k$+$r(B Gnus $B$K8+$D$1$5$;$k;v$b(B +$B$G$-$^$9(B (@pxref{Adaptive Scoring})$B!#(B + +@item +Gnus $B$OIaDL$N(B Emacs $B$NJ}K!$G<+F0J]B8$5$l$k%I%j%V%k%P%C%U%!$rJ];}$7$F$$$^(B +$B$9$N$G!"$"$J$?$N%^%7%s$,Mn$C$3$A$?$H$-$G$b$"$^$j%G!<%?$r<:$o$J$$$G$7$g(B +$B$&(B (@pxref{Auto Save})$B!#(B + +@item +Gnus $B$O:#$d%U%!%$%k(B @file{.emacs} $B$r$0$A$c$0$A$c$K$9$k;v$rHr$1$k$?$a$K@l(B +$BMQ$N5/F0%U%!%$%k(B (@file{~/.gnus.el}) $B$r;}$D$h$&$K$J$j$^$7$?!#(B + +@item +$B%0%k!<%W$H5-;v$NN>J}$K%W%m%;%90u$rIU$1$k$3$H$,$G$-!"A4$F$N0u$NIU$$$?9`L\(B +$B$K1i;;$r$9$k;v$,$G$-$^$9(B (@pxref{Process/Prefix})$B!#(B + +@item +$B%0%k!<%W$N0lIt$r(B grep $B$7$F!"$=$N7k2L$+$i%0%k!<%W$r:n$k;v$,$G$-$^(B +$B$9(B (@pxref{Kibozed Groups})$B!#(B + +@item +$B$(!<$H!"A4$F$K$7$?$,$C$F!"%0%k!<%W$N0lMw$r5s$2$k;v$,$G$-$^(B +$B$9(B (@pxref{Listing Groups})$B!#(B + +@item +$B30It%5!<%P!<$r354Q$7$F!"$=$l$i$N%5!<%P!<$N%0%k!<%W$r9XFI$9$k;v$,$G$-$^(B +$B$9(B (@pxref{Browse Foreign Server})$B!#(B + +@item +Gnus $B$O%5!<%P!<$H$NFs$D@\B3$G!"5-;v$rHsF14|$K$H$C$F$/$k;v$,$G$-$^(B +$B$9(B (@pxref{Asynchronous Fetching})$B!#(B + +@item +$B5-;v$r%m!<%+%k$K%-%c%C%7%e$9$k;v$,$G$-$^$9(B (@pxref{Article Caching})$B!#(B + +@item +uudecode $B$N4X?t$,3HD%$5$l!"0lHL2=$5$l$^$7$?(B (@pxref{Decoding Articles})$B!#(B + +@item +$B2a5n$N(B @sc{gnus} $B$N$"$^$jCN$i$l$F$$$J$$5!G=$N(B uuencode $B$5$l$?5-;v$r$^$@(B +$BEj9F$9$k;v$,$G$-$^$9(B (@pxref{Uuencoding and Posting})$B!#(B + +@item +$B?F5-;v(B ($B$HB>$N5-;v(B) $B$Nc$9$k;vL5$/F0:n$9$k$h$&$K(B +$B$J$j$^$7$?(B (@pxref{Finding the Parent})$B!#(B + +@item +Gnus $B$O(B @acronym{FAQ} $B$H%0%k!<%W$N5-=R$r$N30It;2>H$,%\%?%s$K$J$k$h$&$K$J$j$^$7$?(B (@pxref{Article +Buttons})$B!#(B + +@item +Gnus $B$N%&%#%s%I%&$H%U%l!<%`$N@_Dj$G$?$/$5$s$NJQ$J;v$r$G$-$k$h$&$K$J$j$^(B +$B$7$?(B (@pxref{Window Layout})$B!#(B + +@item +$B%-!<%\!<%I$r;H$&Be$o$j$K!"%\%?%s$r%/%j%C%/$G$-$k$h$&$K$J$j$^$7(B +$B$?(B (@pxref{Buttons})$B!#(B +@end itemize + +@node September Gnus +@subsubsection September Gnus + +@iftex +@iflatex +\gnusfig{-28cm}{0cm}{\epsfig{figure=ps/september,height=20cm}} +@end iflatex +@end iftex + +Gnus 5.2/5.3 $B$N?7$7$$5!G=(B: + +@itemize @bullet + +@item +$B?7$7$$%a%C%;!<%8:n@.%b!<%I$,;H$o$l$^$9!#(B +@code{mail-mode}, @code{rnews-reply-mode} $B$H(B @code{gnus-msg} $B$NA4$F$N8E(B +$B$$%+%9%?%^%$%:JQ?t$O:#$d5l<0$K$J$j$^$7$?!#(B + +@item +Gnus $B$O(B @dfn{$B$^$P$i(B} $B%9%l%C%I$r:n@.$9$k;v$,$G$-$k$h$&$K$J$j$^$7$?(B---$B%9%l%C(B +$B%I$N<:$o$l$?5-;v$,$"$k$H$3$m$O6u$N@a$GI=8=$5$l$k$h$&$K$J$C$F$$$^(B +$B$9(B (@pxref{Customizing Threading})$B!#(B + +@lisp +(setq gnus-build-sparse-threads 'some) +@end lisp + +@item +$B30$K=P$F$$$/5-;v$OFCJL$JJ]4I%5!<%P!<$KJ]B8$5$l$k$h$&$K$J$j$^$7(B +$B$?(B (@pxref{Archived Messages})$B!#(B + +@item +$B5-;v$,;2>H$5$l$?$H$-$K!"%9%l%C%I$NItJ,:n@.$,5/$3$k$h$&$K$J$j$^$7$?!#(B + +@item +Gnus $B$O(B GroupLens $B$NM=8@$r;H$&;v$,$G$-$k$h$&$K$J$j$^$7$?!#(B + +@item +Picons (personal icons) ($B8D?M%"%$%3%s(B) $B$,(B XEmacs $B$GI=<($G$-$k$h$&$K$J$j(B +$B$^$7$?(B (@pxref{Picons})$B!#(B + +@item +@code{trn} $B$N$h$&$JLZ%P%C%U%!$,I=<($5$l$k$h$&$K$J$j$^$7$?(B (@pxref{Tree +Display})$B!#(B + +@lisp +(setq gnus-use-trees t) +@end lisp + +@item +@code{nn} $B$N$h$&$Jv$_%H%T%C%/3,AX$K%0%k!<%WJ,$1$G$-$k$h$&$K$J$j$^$7(B +$B$?(B (@pxref{Group Topics})$B!#(B + +@lisp +(add-hook 'gnus-group-mode-hook 'gnus-topic-mode) +@end lisp + +@item +Gnus $B$,<:GT%a!<%k$r:FAw$G$-$k$h$&$K$J$j$^$7$?(B (@pxref{Summary Mail +Commands})$B!#(B + +@item +$B%0%k!<%W$,%9%3%"$r;}$D;v$,$G$-$k$h$&$K$J$j!"K,$l$k2s?t$K4p$E$$$FJB$SBX$((B +$B$r$G$-$k$h$&$K$J$j$^$7$?(B (@pxref{Group Score})$B!#(B + +@lisp +(add-hook 'gnus-summary-exit-hook 'gnus-summary-bubble-group) +@end lisp + +@item +$B%0%k!<%W$K%W%m%;%90u$rIU$1$i$l$k$h$&$K$J$j!"%0%k!<%W$N$0%k!<%W$KL?Na$,e$N%0%k!<%W$G%-%c%C%7%e$,$G$-$k$h$&$K$J$j$^$7$?!#(B + +@item +@code{nndoc} $B$OA4$F$N=8G[G[Aw!"%a!<%k%\%C%/%9!"(Brnews $B%K%e!<%90l3g!"(B +ClariNet $BC;<}=8!"$=$7$FA4$F$N$=$NB>$rM}2r$G$-$k$h$&$K$J$j$^$7(B +$B$?(B (@pxref{Document Groups})$B!#(B + +@item +Gnus $B$O(B SOUP $B%Q%1%C%H$r:n@.(B/$BFI$_9~$_$r$9$k$?$a$N?7$7$$%P%C%/%(%s(B +$B%I(B (@code{nnsoup}) $B$r;}$C$F$$$^$9!#(B + +@item +Gnus $B%-%c%C%7%e$,$:$C$HB.$/$J$j$^$7$?!#(B + +@item +$B%0%k!<%W$rB?$/$N4p=`$K=>$C$FJB$SBX$($G$-$k$h$&$K$J$j$^$7(B +$B$?(B (@pxref{Sorting Groups})$B!#(B + +@item +$B%"%I%l%9$N%j%9%H$H4|8B@Z$l>C5n$N;~4V$r@_Dj$9$k?7$7$$%0%k!<%W%Q%i%a!<%?$,(B +$BF3F~$5$l$^$7$?(B (@pxref{Group Parameters})$B!#(B + +@item +$BA4$F$N%U%)!<%^%C%H;XDj$,;H$o$l$k%U%'%$%9$r;XDj$G$-$k$h$&$K$J$j$^$7(B +$B$?(B (@pxref{Formatting Fonts})$B!#(B + +@item +@kbd{M P} $BI{%^%C%W$K%W%m%;%90u$NIU$$$?5-;v$N@_Dj(B/$B:o=|(B/$B@\;HMQ$G$-$k$h$&$K$J$j$^$7(B +$B$?(B (@pxref{Article Keymap})$B!#(B + +@item +$B%U%l!<%`$,(B @code{gnus-buffer-configuration} $B$NItJ,$K$J$k;v$,$G$-$^(B +$B$9(B (@pxref{Window Layout})$B!#(B + +@item +$B%G!<%b%s$N%W%m%;%9$G%a!<%k$r:FAv::$9$k$3$H$,$G$-$k$h$&$K$J$j$^$7(B +$B$?(B (@pxref{Daemons})$B!#(B +@iftex +@iflatex +\marginpar[\mbox{}\hfill\epsfig{figure=ps/fseptember,height=5cm}]{\epsfig{figure=ps/fseptember,height=5cm}} +@end iflatex +@end iftex + +@item +Gnus $B$O(B spam $B$r:,@d$d$7$K$9$k$?$a$K(B NoCeM $B%U%!%$%k$r;H$&;v$,$G$-$k$h$&$K(B +$B$J$j$^$7$?(B (@pxref{NoCeM})$B!#(B + +@lisp +(setq gnus-use-nocem t) +@end lisp + +@item +$B%0%k!<%W$r1J5W2D;k$K$9$k;v$,$G$-$k$h$&$K$J$j$^$7$?(B (@pxref{Listing +Groups})$B!#(B + +@lisp +(setq gnus-permanently-visible-groups "^nnml:") +@end lisp + +@item +$B%+%9%?%^%$%:$r4JC1$K$9$k$?$a$KB?$/$N?7$7$$%U%C%/$,F3F~$5$l$^$7$?!#(B + +@item +Gnus $B$O(B @code{Mail-Copies-To} $B%X%C%@!<$KCm0U$rJ'$&$h$&$K$J$j$^$7$?!#(B + +@item +@code{References} $B%X%C%@!<$r=8$a$k;v$K$h$j%9%l%C%I$r=8$a$k;v$,$G$-$k$h$&(B +$B$K$J$j$^$7$?(B (@pxref{Customizing Threading})$B!#(B + +@lisp +(setq gnus-summary-thread-gathering-function + 'gnus-gather-threads-by-references) +@end lisp + +@item +$B4{FI5-;v$O:FO$KBP$7$F!"5-;v%P%C%U%!$G$N@^$jJV$7$,E,@Z$KF0:n$9$k$h$&$K$J(B +$B$j$^$7$?(B (@pxref{Article Washing})$B!#(B + +@item +$B1#$5$l$?0zMQJ8$O1#$9;v$r@Z$jBX$($k%\%?%s$r2C$(!"$I$N$/$i$$$N0zMQJ8$r1#$9(B +$B$+$r%+%9%?%^%$%:$G$-$k$h$&$K$J$j$^$7$?(B (@pxref{Article Hiding})$B!#(B + +@lisp +(setq gnus-cited-lines-visible 2) +@end lisp + +@item +$BB`6~$J%X%C%@!<$r1#$9;v$,$G$-$^$9(B (@pxref{Article Hiding})$B!#(B + +@item +$B%9%3%"$N=i4|CM$,%a%K%e!<%P!<$+$i@_Dj$G$-$k$h$&$K$J$j$^$7$?!#(B + +@item +$B=P$F9T$/5-;v$N99$J$k9=J8%A%'%C%/$,$G$-$k$h$&$K$J$j$^$7$?!#(B +@end itemize + +@node Red Gnus +@subsubsection Red Gnus + +Gnus 5.4/5.5 $B$N?7$7$$5!G=(B: + +@iftex +@iflatex +\gnusfig{-5.5cm}{-4cm}{\epsfig{figure=ps/red,height=20cm}} +@end iflatex +@end iftex + +@itemize @bullet + +@item +@file{nntp.el} $B$OHsF14|$NN.57$G40A4$K2~D{$5$l$^$7$?!#(B + +@item +$B%9%3%"IU$1$O(B @code{and}, @code{or}, @code{not} $B$N$h$&$JO@M}1i;;;R$H!"?F(B +$B$N:FJ}8~$GuBV$,5-;v%b!<%I9T$KI=<($5$l$k$h$&$K$J$j$^$7(B +$B$?(B (@pxref{Misc Article})$B!#(B + +@item +@file{gnus.el} $B$,B?$/$N>.$5$$%U%!%$%k$KJ,3d$5$l$^$7$?!#(B + +@item +Message-ID $B$K4p$E$$$?!"=EJ#5-;v$NM^@)$,$J$5$l$k$h$&$K$J$j$^$7(B +$B$?(B (@pxref{Duplicate Suppression})$B!#(B + +@lisp +(setq gnus-suppress-duplicates t) +@end lisp + +@item +$B$I$N%9%3%"$HE,1~%U%!%$%k$,%[!<%`$N%9%3%"$HE,1~%U%!%$%k$G$"$k$+$r;XDj$9(B +$B$k(B (@pxref{Home Score File}) $B?7$7$$JQ?t$,2C$($i$l$^$7$?!#(B + +@item +@code{nndoc} $B$,4JC1$K3HD%2DG=$K$J$k$h$&$K2~D{$5$l$^$7(B +$B$?(B (@pxref{Document Server Internals})$B!#(B + +@item +$B%0%k!<%W$O?F$N%H%T%C%/$+$i%0%k!<%W%Q%i%a!<%?$r7Q>5$G$-$k$h$&$K$J$j$^$7(B +$B$?(B (@pxref{Topic Parameters})$B!#(B + +@item +$B5-;vJT=8$,2~D{$5$l!"$,$b$C$HCNE*$JJ}K!$GG'<1$5$l$k$h$&$K$J$j$^$7$?(B (@pxref{Article +Signature})$B!#(B + +@item +$B35N,%T%C%/%b!<%I$,$b$C$H(B @code{nn} $B$N$h$&$K$J$j$^$7$?!#9T?t$,I=<($5$l$F!"(B +$BL?Na(B @kbd{.} $B$,5-;v$re(B +$B$G(B) $B$,2C$($i$l$^$7$?(B---@kbd{C-M-d} (@pxref{Really Various Summary +Commands})$B!#(B + +@item +$B%W%m%;%90u$N@_Dj$,(B push $B$H(B pop $B$G$-$k$h$&$K$J$j$^$7$?(B (@pxref{Setting +Process Marks})$B!#(B + +@item +$B?7$7$$%a!<%k$+$i%K%e!<%9$X$N%P%C%/%(%s%I$,(B @acronym{NNTP} $B%5!<%P!<$,Ej9F(B +$B$r5v2D$7$F$$$J$$>l9g$G$b!"Ej9F$G$-$k$h$&$K$J$j$^$7(B +$B$?(B (@pxref{Mail-To-News Gateways})$B!#(B + +@item +$B%&%'%V8!:w%(%s%8(B +$B%s(B (@dfn{DejaNews}, @dfn{Alta Vista}, @dfn{InReference}) $B$+$i$N8!:w7k2L(B +$B$rFI$`?7$7$$%P%C%/%(%s%I$,2C$($i$l$^$7$?(B (@pxref{Web Searches})$B!#(B + +@item +$BI8=`$NJB$SBX$(4X?t$r;H$C$F%0%k!<%W$NCf$N%H%T%C%/$rJB$SBe$($9$k;v$,$G$-!"(B +$B$=$l$>$l$N%H%T%C%/$,FHN)$7$FJB$SBX$($G$-$k$h$&$K$J$j$^$7(B +$B$?(B (@pxref{Topic Sorting})$B!#(B + +@item +$B%0%k!<%W$N0lItJ,$,FHN)$7$FJB$SBX$($G$-$k$h$&$K$J$j$^$7(B +$B$?(B (@code{Sorting})$B!#(B + +@item +$B%-%c%C%7%e$5$l$?5-;v$,%0%k!<%W$KF~$l$i$l$k$h$&$K$J$j$^$7(B +$B$?(B (@pxref{Summary Generation Commands})$B!#(B +@iftex +@iflatex +\marginpar[\mbox{}\hfill\epsfig{figure=ps/fred,width=3cm}]{\epsfig{figure=ps/fred,width=3cm}} +@end iflatex +@end iftex + +@item +$B%9%3%"%U%!%$%k$,$b$C$H?.Mj$G$-$k=gHV$GE,MQ$G$-$k$h$&$K$J$j$^$7(B +$B$?(B (@pxref{Score Variables})$B!#(B + +@item +$B%a!<%k%a%C%;!<%8$,$I$3$K9T$/$+$NJs9p$r:n@.$9$k;v$,$G$-$k$h$&$K$J$j$^$7(B +$B$?(B (@pxref{Splitting Mail})$B!#(B + +@item +$BF~$C$FMh$?%a!<%k$rJ]B8$9$kA0$K$,$i$/$?$rj(B +$B$J$[$I$N?7$7$$L?Na$H%b!<%I$,DI2C$5$l$^$7$?!#40A4$JOC$KIU$$$F(B +$B$O(B @ref{Gnus Unplugged} $B$r8+$F2<$5$$!#(B + +@item +@code{nndraft} $B%P%C%/%(%s%I$,La$C$F$-$^$7$?$,!"0MA3$H$O0c$&$h$&$KF0:n$9(B +$B$k$h$&$K$J$j$^$7$?!#A4$F$N%a%C%;!<%8%P%C%U%!$O(B @code{nndraft} $B%0%k!<%W$N(B +$B5-;v$G$b$"$j!"$=$l$O<+F0E*$K:n@.$5$l$^$9!#(B + +@item +@code{gnus-alter-header-function} $B$,%X%C%@!<$NCM$rJQ$($k$?$a$K;H$o$l$k$h(B +$B$&$K$J$j$^$7$?!#(B + +@item +@code{gnus-summary-goto-article} $B$,(B Message-ID $B$rO$r>C5n$9$k$?$a$N?7$7$$%a%C%;!<%8L?(B +$BNa$,$"$j$^$9(B: @kbd{C-c C-v}$B!#(B + +@item +@kbd{C-u C-c C-c} $B$K$h$C$F(B @code{nnvirtual} $B%0%k!<%W$r@8@.$7$F$$$k%0%k!<(B +$B%W$KEj9F$G$-$k$h$&$K$J$j$^$7$?!#(B + +@item +@code{nntp-rlogin-program}---$B%+%9%?%^%$%:$r4JC1$K$9$k$?$a$N?7$7$$JQ?t$G(B +$B$9!#(B + +@item +@code{gnus-article-edit-mode} $B$N(B @code{C-u C-c C-c} $B$O5-;v%P%C%U%!$N:F%O(B +$B%$%i%$%H$r6X;_$9$k$h$&$K$J$j$^$7$?!#(B + +@item +@code{gnus-boring-article-headers} $B$K?7$7$$MWAG$,$"$j$^(B +$B$9(B---@code{long-to}$B!#(B + +@item +@kbd{M-i} $B%7%s%\%k@\F,0z?tL?Na$,$"$j$^$9!#>\:Y(B +$B$O(B @ref{Symbolic Prefixes} $B$r8+$F2<$5$$!#(B + +@item +$B35N,%P%C%U%!$N(B @kbd{L} $B$H(B @kbd{I} $B$O(B @file{all.SCORE} $B%U%!%$%k$K%9%3%"K!(B +$BB'$r2C$($k$?$a$K%7%s%\%k@\F,0z?t(B @kbd{a} $B$r$5$J$1$l$P$J$j$^$;$s!#(B + +@item +$BEj9FC$7$O8=:_$NA*BrJ}K!$r;H$&$h$&$K$J$j$^$7$?!#%7%s%\%k@\F,(B +$B<-(B @kbd{a} $B$OIaDL$NEj9FJ}K!$r6/@)$7$^$9!#(B + +@item +M******** sm*rtq**t*s $B$rE,@Z$JJ8>O$KK]0F$9$k?7$7$$L?Na$,$"$j$^$9(B--- +@kbd{W d}$B!#(B + +@item +@code{nntp} $B$N$h$j4JC1$J%G%P%C%0$N$?$a$K!"(B +@code{nntp-record-commands} $B$r(B @code{nil} $B$G$J$$CM$K@_Dj$9$k;v$,$G$-$^$9!#(B + +@item +@code{nntp} $B$O(B @file{~/.authinfo} $B$r;H$&$h$&$K$J$j!"$3$l(B +$B$O(B @file{.netrc} $B$N$h$&$J%U%!%$%k$G!"$I$3$G$I$N$h$&(B +$B$K(B @sc{authinfo} $B$r(B @acronym{NNTP} $B%5!<%P!<$KAw$k$+$r@)8f$9$k$?$a$N$b$N(B +$B$G$9!#(B + +@item +$B35N,%P%C%U%!$N%0%k!<%W%Q%i%a!<%?$rJT=8$9$k$?$a$NL?Na$,2C$($i$l$^$7$?!#(B + +@item +$B%a!<%k$,$I$3$KJ,3d$5$l$?$+$NMzNr$r;HMQ2DG=$K$J$j$^$7$?!#(B + +@item +$B?7$7$$5-;vF|IUL?Na$,2C$($i$l$^$7$?(B---@code{article-date-iso8601}$B!#(B + +@item +@code{gnus-score-thread-simplify} $B$r@_Dj$9$k;v$K$h$j%9%l%C%I$r:n@.$7$F$$(B +$B$k$H$-$OI=Bj$,C1=c2=$5$l$k$h$&$K$J$j$^$7$?!#(B + +@item +$B%a%C%;!<%8$G0zMQ$r$9$k$?$a$N?7$7$$4X?t$,2C$($i$l$^$7$?(B--- +@code{message-cite-original-without-signature}$B!#(B + +@item +@code{article-strip-all-blank-lines}---$B?7$7$$5-;vL?Na$G$9!#(B + +@item +$B5-;v$N=*$o$j$^$G$r@Z$k?7$7$$%a%C%;!<%8L?Na$,2C$($i$l$^$7$?!#(B + +@item +$BJQ?t(B @code{gnus-adaptive-word-minimum} $B$r;H$&;v$K$h$j:G>.8BE,1~%9%3%"$r(B +$B;XDj$9$k;v$,$G$-$^$9!#(B + +@item +$BL?Na(B @code{gnus-start-date-timer} $B$K$h$j(B ``$B2a<:F|IU(B'' $B5-;v%X%C%@!<$,7QB3(B +$BE*$K99?7$5$l$k$h$&$K$J$j$^$7$?!#(B + +@item +$B%&%'%V(B listserv $B%"!<%+%$%V$,(B @code{nnlistserv} $B%P%C%/%(%s%I$K$h$jFI$`;v(B +$B$,$G$-$k$h$&$K$J$j$^$7$?!#(B + +@item +$B8E$$(B dejanews $B%"!<%+%$%V$,(B @code{nnweb} $B$+$iFI$`;v$,$G$-$k$h$&$K$J$j$^$7(B +$B$?!#(B +@end itemize + +@node Pterodactyl Gnus +@subsubsection Pterodactyl Gnus + +Gnus 5.8 $B$N?7$7$$5!G=(B: + +@itemize @bullet + +@item +$B%a!<%k$r\:Y$K$D$$$F$O%^%K%e%"%k$r(B +$B8+$F2<$5$$!#FC$K!"(Bprocmail $B$G\:Y(B +$B$O%^%K%e%"%k$r;2>H$7$F2<$5$$!#(B + +@item +Gnus $B$O$^$?3F9q8lBP1~$K$J$j$^$7$?!#$3$3$G$OMWLs$G$-$J$$$/$i$$$K(B Gnus $B$N(B +$BB?$/$NItJ,$K1F6A$7$F$$$F!"?7$7$$$?$/$5$s$NJQ?t$,DI2C$5$l$F$$$^$9!#(B + +@item +@code{gnus-auto-select-first} $B$,4X?t$G$"$C$F$b$h$/$J$j$^$7$?!#(B + +@item +Summary $B%P%C%U%!$H(B @acronym{NOV} $B%U%!%$%k$K4^$a$kDI2C$N%X%C%@!<$r!"%f!<(B +$B%6$,7h$a$k$3$H$,$G$-$k$h$&$K$J$j$^$7$?!#(B + +@item +@code{gnus-article-display-hook} $B$,:o=|$5$l$^$7$?!#Be$o$j(B +$B$K(B @code{gnus-treat-} $B$G;O$^$k$?$/$5$s$NJQ?t$,DI2C$5$l$^$7$?!#(B + +@item +Gnus posting styles $B$,:F$S2~Au$5$l$^$7$?!#8=:_$OHyL/$K0c$&5,B'$GF0:n$7$^(B +$B$9!#(B + +@item +$B?7$7$$%&%'%V$K4p$E$$$?%P%C%/%(%s%I$,DI2C$5$l$^$7$?!#(B@code{nnslashdot}, +@code{nnwarchive} $B$*$h$S(B @code{nnultimate} $B$G$9!#(Bnnweb $B$O:F$S2~:n$5$l!"(B +$B>o$KJQ2=$9$k9=@.$rB3$1$^$9!#(B + +@item +Gnus $B$O(B @code{nnimap} $B$K$h$C$F(B @acronym{IMAP} $B%a!<%k$rFI$`$3$H$,$G$-$^$9!#(B +@end itemize + +@node Oort Gnus +@subsubsection Oort Gnus +@cindex Oort Gnus + +Gnus 5.10 $B$N?7$7$$5!G=(B: + +@itemize @bullet + +@item +$BNN0h$,3h@-2=$5$l$F$$$k>l9g!"(B +@kbd{F} $B%-!<(B (@code{gnus-article-followup-with-original}) $B$*$h(B +$B$S(B @kbd{R} $B%-!<(B (@code{gnus-article-reply-with-original}) $B$O!"$=$NNN0h$K(B +$B$"$k%F%-%9%H$@$1$r(B yank $B$7$^$9!#(B + +@item +@code{gnus-group-read-ephemeral-group} $B$r(B @kbd{G M} $B%-!<$GBPOCE*$K8F$V$3(B +$B$H$,$G$-$^$9!#(B + +@item +$B%I%i%U%H!&%0%k!<%W$G(B @kbd{e} $B%-!<$,(B @code{gnus-draft-edit-message} $B%3%^(B +$B%s%I$K3d$jEv$F$i$l$^$7$?!#(B@code{gnus-summary-edit-article} $B%3%^%s%I$K$O!"(B +$BBe$o$j$K(B @kbd{B w} $B%-!<$r;H$C$F2<$5$$!#(B + +@item +$B2~Dj$5$l$?(B Gnus @acronym{FAQ} $B$,%^%K%e%"%k$K4^$^$l$F$$$^$9!#(B +@xref{Frequently Asked Questions}. + +@item +Oort $B$r;H$C$?$3$H$,$"$k>l9g$N!"0JA0$N(B ($B0BDj$J(B) $BHG$+$i$N%0%l!<%I%"%C%W!#(B + +Oort ($B$3$N%j%j!<%9$K@hN)$D0BDj$G$O$J$$(B Gnus $B$N;^(B) $B$r;H$C$F$_$?$b$N$N!"0B(B +$BDjHG$KLa$7$F$7$^$C$?$J$i$P!"$3$NHG$K%0%l!<%I%"%C%W$9$k$H$-$KCm0U$7$F2<$5(B +$B$$!#FC$K!"$*$=$i$/$9$Y$F(B +$B$N(B @file{.marks} (nnml) $B$H(B @file{.mrk} (nnfolder) $B%U%!%$%k$r>C5n$9$kI,MW(B +$B$,$"$k$G$7$g$&!#$3$NHG(B ($B$N(B Gnus) $B$,%U%i%0$r3JG<$9(B +$B$k(B @file{.marks}/@file{.mrk} $B%U%!%$%k$G$O$J$/$F(B @file{.newsrc.eld} $B$+$i(B +$B%U%i%0$,FI$^$l$k$h$&$K$J$C$F$$$?$+$i$G$9!#8e=R$N9`L\$G!"0u(B (marks) $B$K4X(B +$B$9$k$h$jB?$/$N>pJs$rFI$s$G2<$5$$!#%0%l!<%I$r2<$2$F$b0lHL$K$O=u$1$K$J$i$J(B +$B$$$3$H$KCm0U$7$F2<$5$$!#(B + +@item +$B5-;v$N%\%?%s(B + +URL$B!"%a!<%k%"%I%l%9!"(BMessage-ID$B!"(BInfo $B$X$N%j%s%/!"(Bman $B%Z!<%8$H(B Emacs $B$^(B +$B$?$O(B Gnus $B$K4XO"$7$?;29MJ88%$N$?$a$N!"$h$jB?$/$N%\%?%s!#(B@xref{Article +Buttons}. $B$9$Y$F$N5-;v$N%\%?%s$N8+1I$($r@)8f$9$k$?$a(B +$B$K(B @code{gnus-button-@var{*}-level} $BJQ?t$r;H$&$3$H$,$G$-$^$9!#(B +@xref{Article Button Levels}. + +@item +Dired $B$NE}9g(B + +@code{gnus-dired-minor-mode} (@ref{Other modes} $B;2>H(B) $B$O!"(Bdired $B$N%P%C%U%!(B +$B$G%-!<@_Dj(B -- $BE:IU%U%!%$%k$NAw?.!"(Bmailcap $B$NE,@Z$J9`L\$r;H$C$F%U%!%$%k$r(B +$B3+$/!"$=$l$K(B mailcap $B$N9`L\$r;H$C$F%U%!%$%k$r0u:~$9$k(B -- $B$r9T$J$$$^$9!#(B + +@item +Gnus $B$O(B RSS $B$N%K%e!<%9G[Aw$r!"%K%e!<%9%0%k!<%W$H$7$FI=<($7$^$9!#(B +@xref{RSS}. + +@item +$BC10l$N(B yenc $B$G%(%s%3!<%I$5$l$?E:IU%Q!<%H$,%G%3!<%I$G$-$^$9!#(B + +@item +Picons + +Picon $B$N%3!<%I$,!"(BGNU Emacs $B$GF0:n$5$;$k$?$a$K:F$5$l$F$$$^$9!#(B + +Picon $B$O!"%f!<%6!O$H%3%s%H%m!<%k%a%C%;!<%8$NO$r%X%C%@!<(B (X-PGP-Sig) $B$r!"(B@kbd{W p} $B$GG'>Z$9$k$3$H$,$G$-$^$9!#(B + +@item +$B35N,%P%C%U%!$O(B fringe $B$NCf$NLp0u$G8=:_$N5-;v$r<($7$^$9!#$3$l$rL58z$K$9$k(B +$B$K$O(B @code{(setq gnus-summary-display-arrow nil)} $B$r;H$C$F2<$5$$!#(B + +@item +$B%K%e!<%9$K%a!<%k$GJV?.$7$h$&$H$7$?$i7Y9p(B + +$B4V0c$C$F%K%e!<%9$K%a!<%k$GJV?.$7$h$&$H$7$F$7$^$&$3$H$,!"$7$g$C$A$e$&$"$j(B +$B$^$;$s$+(B? $B$=$s$J$"$J$?$K?7%*%W%7%g(B +$B%s(B @code{gnus-confirm-mail-reply-to-news}$B!#(B + +@item +$B?7$7$$%*%W%7%g%s(B @code{gnus-summary-display-while-building} $B$r(B +$BHs(B-@code{nil} $B$K$9$k$H!"35N,%P%C%U%!$,:n$i$l$F$$$/MM;R$,I=<($5$l$^$9!#(B + +@item +$B?7$7$$(B @code{recent} $B0u(B @samp{.} $B$G!"?75,$KFO$$$?%a%C%;!<%8$r(B ($BL$FI$@$1(B +$B$l$I$b8E$$5-;v$H$O6hJL$7$F(B) $BI=<($7$^$9!#(B + +@item +$B?7$7$$%*%W%7%g%s(B @code{gnus-gcc-mark-as-read} $B$O!"(BGcc $B$N5-;v$K<+F0E*$K4{(B +$BFI$N0u$rIU$1$^$9!#(B + +@item +nndoc $B%P%C%/%(%s%I$O!"(Bmailman $B$N$^$H$aAw$j$H(B exim $B$,CF$$$?%a%C%;!<%8$r%5(B +$B%]!<%H$9$k$h$&$K$J$j$^$7$?!#(B + +@item +Gnus $B$O(B RFC 2369 $B$N%a!<%j%s%0%j%9%H$N%X%C%@!<$r%5%]!<%H$7$^$9!#$^$?!"%a!<(B +$B%j%s%0%j%9%H$N%0%k!<%WMQ$K?t!9$N%3%^%s%I$rMQ0U$7$^$7$?!#(B@xref{Mailing +List}. + +@item +$BF|IU%X%C%@!<$r!"1Q8l$GH/2;$G$-$k7A<0$GI=<($9$k$3$H$,$G$-$^$9!#(B +@xref{Article Date}. + +@item +Sendmail $B$r;H$&$H$-$N%(%s%Y%m!<%WAw?.$5$l$^$7$?!#(BXEmacs $B$H(B GNU Emacs $B$r<+F0G'(B +$B<1$7!"(B@file{gnus-load.el} $B$r@8@.$7!"%3%s%Q%$%kCf$H(B info $B%U%!%$%k$N@8@.Cf(B +$B$K%(%i!<$,5/$-$?$i9=C[=hM}$N:G8e$KJs9p$7$^$9!#(B@code{makeinfo} $B$,MxMQ2DG=(B +$B$G$"$l$P$=$l$r;H$$!"$5$b$J$1$l$P(B @file{infohack.el} $B$KMj$j$^$9!#:#(B +$B$d(B @file{make.bat} $B$O(B Gnus $B$rF0:n$5$;$k$?$a$KI,MW$J$9$Y$F$N%U%!%$%k$r%$(B +$B%s%9%H!<%k$9$k$O$:$G!"BgBN$K$*$$$F(B Unix $B%7%9%F%`$K$*$1(B +$B$k(B @code{configure; make; make install} $B%5%$%/%k$N40A4$JCV$-49$($K$J$j$^(B +$B$7$?!#(B + +$B?7$7$$(B @file{make.bat} $B$O(B @file{make-x.bat} $B$rITMW$K$7$?$N$G!"$=$l$O:o=|(B +$B$5$l$^$7$?!#(B + +@item +$BHs(B-@acronym{ASCII} $B%I%a%$%sL>$N%5%]!<%H(B + +Message $B$O(B From:, To: $B$*$h$S(B Cc: $B$K$"$kHs(B-@acronym{ASCII} $B%I%a%$%sL>$r%5(B +$B%]!<%H$7!"%a%C%;!<%8$NAw?.$r;n$_$k$H$-$K%(%s%3!<%I$9$k$+$I$&$+$r?R$M$^$9!#(B +@code{message-use-idna} $BJQ?t$G$3$l$r@)8f$7$^$9!#(BGnus $B$b$^$?!"%a%C%;!<%8(B +$B$r8+$k$H$-$K(B From:, To: $B$*$h$S(B Cc: $B$K$"$kHs(B-@acronym{ASCII} $B%I%a%$%sL>$r(B +$B%G%3!<%I$7$^$9!#$3$l$r@)8f$9$k$N$O(B @code{gnus-use-idna} $BJQ?t$G$9!#(B + +@item +$B%^%$%/%m%=%U%H0zMQMM<0$N$h$jNI$$/$7$@$1$"$k?75,$JFbMF$KB3$$$F(B +$B$$$k$?$/$5$s$N5-;v$rFI$`>l9g$K!"$3$l$OFC$KLr$KN)$A$^$9!#(B + +@item +$B%]%$%s%H$N0LCV7h$a$N$?$a$N%U%)!<%^%C%H$N;EMM(B (format spec) $B$G$"(B +$B$k(B @code{%C} $B$O!"(B@code{%*} $B$KJQ99$5$l$^$7$?!#(B + +@item +$B?7$7$$JQ?t(B @code{gnus-parameters} $B$,!"%0%k!<%W%Q%i%a!<%?$r@_Dj$9$k$?$a$K(B +$B;H$&$3$H$,$G$-$^$9!#(B + +$B$3$l$O=i4|$K$O!"%Q%i%a!<%?$r(B @file{~/.newsrc.eld} $B$K3JG<$9$k(B @kbd{G p} +($B$^$?$O(B @kbd{G c}) $B$G$7$+9T$J$&$3$H$,$G$-$^$;$s$G$7$?$,!"$3$NJQ?t$K$h$C(B +$B$F%+%9%?%^%$%:$N0RNO$r4.G=$9$k$3$H$,$G$-$^$9!#$^$?!"$=$NJQ?t(B +$B$O(B @file{~/.newsrc.eld} $B$G$O$J$/$F(B @file{~/.emacs} $B$G@_Dj$9$k$N$G!"%P%C(B +$B%/%"%C%W$,4JC1$K$J$j$^$9!#$=$NJQ?t$O!"%0%k!<%WL>$K9gCW$9$k@55,I=8=$r!"0J(B +$B2<$N$h$&$JN.57$G%0%k!<%W%Q%i%a!<%?$K3d$jEv$F$^$9(B: +@lisp +(setq gnus-parameters + '(("mail\\..*" + (gnus-show-threads nil) + (gnus-use-scoring nil)) + ("^nnimap:\\(foo.bar\\)$" + (to-group . "\\1")))) +@end lisp + +@item +$B%9%^%$%j!<(B (@samp{:-)}, @samp{;-)} $B$J$I(B) $B$,(B Emacs $B$G$b%"%$%3%s2=$5$l$k$h(B +$B$&$K$J$j$^$7$?!#(B + +$B$3$l$rF/$+$J$$$h$&$K$9$k$K$O!"(B@code{(setq gnus-treat-display-smileys +nil)} $B$r(B @file{~/.emacs} $B$KCV$$$F2<$5$$!#(B + +@item +Gnus $B$O:#$G$O(B Sender: $B%X%C%@!<$r<+F0$G$O@8@.$7$^$;$s!#(B + +$B=i4|$N$3$m!"$=$l$O%f!<%6!<$,@_Dj$G$-$k(B email $B%"%I%l%9$,!"(BGnus $B$,A[Dj$7$?(B +$B%f!<%6!<$N%G%#%U%)%k%H$N%"%I%l%9$H0c$C$F$$$?>l9g$K@8@.$5$l$^$7$?!#:#F|$G(B +$B$O$=$NA[Dj%"%k%4%j%:%`$,@5$7$$$3$H$O$^$l$G!"(BSender: $B%X%C%@!<$NM#0l$N(B ($B5D(B +$BO@$NE*$K$J$k(B) $BMQES$O!"%K%e!<%9$r(B cancel/supersede $B$9$k;q3J$,$"$k$+$I$&$+(B +$B$r8!::$9$k$3$H(B ($B$3$l$OBe$o$j$K!"B>$N9`$G=R$Y$i$l$k(B Cancel Locks $B$K$h$C$F(B +$B2r7h$5$l$?(B) $B$J$N$G!"$=$N%X%C%@!<$N@8@.$O%G%#%U%)%k%H$GM^@)$5$l$F$$$^$9!#(B +$BJQ?t(B @code{message-required-headers}$B!"(B +@code{message-required-news-headers} $B$*$h(B +$B$S(B @code{message-required-mail-headers} $B$r;2>H$7$F2<$5$$!#(B + +@item +$B%5!<%I%Q!<%F%#!<$K$h$k(B @file{message-utils.el} $B$N5!G=(B +$B$,(B @file{message.el} $B$K2C$($i$l$^$7$?!#(B + +Message $B$OI=Bj(B (subject) $B$N9T$+$i(B @samp{(was: )} $B$r:o=|$9$k(B +$B$+$I$&$+$r?R$M$k$h$&$K$J$j$^$7(B +$B$?(B (@code{message-subject-trailing-was-query} $B;2>H(B)$B!#(B +@kbd{C-c M-m} $B$H(B @kbd{C-c M-f} $B$OA^F~$5$l$?%F%-%9%H$r<($90u$rA^F~$7$^$9!#(B +@kbd{C-c C-f a} $B$O(B X-No-Archive: $B%X%C%@!<$rIU$12C$($^$9!#(B@kbd{C-c C-f +x} $B$O!"E,@Z$J%X%C%@!<$H!"%/%m%9%]%9%H$H%U%)%m!<@h$K$D$$$F$NCm0U=q$-$rK\(B +$BJ8$KA^F~$7$^$9(B (@code{message-cross-post-@var{*}} $BJQ?t72$r8+$F2<$5$$(B)$B!#(B + +@item +$B:#$d(B @code{message-generate-headers-first} $B$,(B @code{nil} $B$@$C$?$i!"%a%C(B +$B%;!<%8$N:n@.$r;O$a$k$H$-$K(B References $B$H(B X-Draft-Headers $B$O@8@.$5$l$^$;(B +$B$s!#(B + +@item +$B2~NI$5$l$?(B spam $BBP935!G=!#(B + +Gnus $B$OHs>o$KJQ2=$KIY$s$@%W%m%0%i%`$H_I2a$N5,B'$r;H$C$F!"%a!<%k$d%K%e!<(B +$B%9$NK[N.$+$i(B spam $B$rH4$-(B +$B8e$K8F$P$l$k(B) $B$+$i(B @code{nnimap-fixup-unread-after-getting-new-news} $B$r(B +$B8F$V$3$H$K$h$C$F@.$7?k$2$i$l$^$9!#$3$l$i$NJQ?t$r%G%#%U%)%k%H$+$iJQ$($F$$(B +$B$k>l9g$O!":F$S(B @code{nnimap-fixup-unread-after-getting-new-news} $B$rDI2C(B +$B$9$kI,MW$,$"$k$+$b$7$l$^$;$s!#8+@Q$j$KK~B-$7$F$$$F!"?7$7$$%a!<%k$r.8BEY$N(B) $B;~4V$r@aLs$7$?$$$N$G$"$l$P!"$=$N4X?t$r30$7(B +$B$F2<$5$$!#(B + +@item +$B%0%k!<%W%+!<%\%s%3%T!<(B (GCC) $B$r0zMQId$G0O$`(B + +$B6uGr$dB>$NJQ$JJ8;z$r4^$`%0%k!<%W$r07$($k$h$&$K$9$k$?$a$K!"%0%k!<%W(B +$B$O(B Gcc: header $B$KCV$+$l$kA0$K0zMQId$G0O$^$l$^$9!#$3$l$O!"6uGr$r4^$`%0%k!<(B +$B%W$,;H$($k$h$&$K$9$k$?$a$K!"$b$O$d(B @code{gnus-message-archive-group} $B$N(B +$B$h$&$JJQ?t$K0zMQJ8;z$r4^$a$k$Y$-$G$O$J$$$3$H$r0UL#$7$^$9!#$5$i$K!"J8;z(B +$BNs(B @samp{nnml:foo, nnml:bar} ($BFs$D$N%0%k!<%W$K(B Gcc $B$r3JG<$9$k$3$H$r<((B +$B$9(B) $B$r;H$C$F$$$k$J$i$P!"%j%9%H(B @code{("nnml:foo" "nnml:bar")} $B$rJV$9$h$&(B +$B$KJQ99$7$J$1$l$P$J$j$^$;$s!#$5$b$J$$$H!"(BGcc: $B9T$O4V0c$C$?0O$^$lJ}$r$5$l(B +$B$F$7$^$&$G$7$g$&!#=i4|$N$3$m$KJ8;zNs(B @samp{nnml:foo, nnml:bar} $B$rJV$9$h(B +$B$&$K$7$?$3$H$,4V0c$$$@$C$?$3$H$KCeL\$7$F2<$5$$!#$=$l$OD>@\A^F~$5$l$?$N$G!"(B +$B$^$C$?$/LdBj$r@8$8$^$;$s$G$7$?!#(B + +@item +@file{~/News/overview/} $B$OITMW!#(B + +$B0J2<$NJQ99$N7k2L!":#8e$O(B @file{~/News/overview/} $B%G%#%l%/%H%j$OMW$j$^$;(B +$B$s!#$9$Y$F$N3,AX$r0BA4$K:o=|$9$k$3$H$,$G$-$^$9!#(B + +@item +@code{gnus-agent} + +Gnus $B%(!<%8%'%s%H$OBg5,LO$J99?7$r7P$F!":#$d%G%#%U%)%k%H$G3h@-2=$5$l$^$9!#(B +$B$=$7(B +$B$F(B @code{gnus-select-method} $B$H(B @code{gnus-secondary-select-method} $B$G;X(B +$BDj$5$l$k$9$Y$F$N(B nntp $B$H(B nnimap $B$N%5!<%P!<$,!"%G%#%U%)%k%H$G%(!<%8%'%s%H(B +$B2=$5$l$^$9!#=i4|$K$*$$$F$O(B @code{gnus-select-method} $B$N%5!<%P!<$@$1$,%G%#(B +$B%U%)%k%H$G%(!<%8%'%s%H2=$5$l!"%(!<%8%'%s%H$O%G%#%U%)%k%H$GIT3h@-2=$5$l$F(B +$B$$$^$7$?!#%(!<%8%'%s%H$,3h@-2=$5$l$k$H!"2DG=$J$i$P%P%C%/%(%s%I$KBe$o$C$F(B +$B%(!<%8%'%s%H$N%-%c%C%7%e$+$i%X%C%@!<$,uBV$G$N$_9T$J$o$l$F$$$^$7$?!#%5!<%P!<%P%C%U%!(B +$B$G(B @kbd{J a} $B$H(B @kbd{J r} $B$r;H$&$3$H$K$h$C$F!"%5!<%P!<$NEPO?$H:o=|$r9T$J(B +$B$&$3$H$,$G$-$^$9!#%0%k!<%W%P%C%U%!$+$i(B @kbd{J u} $B$+(B @kbd{J s} $B$r;H$C$FL?(B +$BNa$7$J$$8B$j!"(BGnus $B$O5-;v$r%(!<%8%'%s%H$N%-%c%C%7%e$K%@%&%s%m!<%I$7$^$;(B +$B$s!#(B@code{(setq gnus-agent nil)} $B$G$b$C$F!"%(!<%8%'%s%H$,IT3h@-2=$5$l$F(B +$B$$$?@N$N?6$kIq$$$KLa$9$3$H$,$G$-$^$9!#:#8e(B +$B$O(B @file{~/.gnus.el} $B$K(B @code{(gnus-agentize)} $B$rCV$$$F$*$/I,MW$,L5$$$3(B +$B$H$KCm0U$7$F2<$5$$!#(B + +@item +@code{gnus-summary-line-format} + +$B%G%#%U%)%k%HCM$,(B @samp{%U%R%z%I%(%[%4L: %-23,23f%]%) %s\n} $B$KJQ$o$j$^$7(B +$B$?!#$5$i$K!"A0$+(B @acronym{NNTP} $B%0%k!<%W$KEj9F$7$?%0%k!<%WL>$G(B +$B%f!<%6L>$rCV$-49$($k$?$a$K!"(B@code{gnus-extra-headers}$B!"(B +@code{nnmail-extra-headers} $B$*$h$S(B @code{gnus-ignored-from-addresses} $B$N(B +$B%G%U%)%k%HCM$,JQ$o$j$^$7$?!#(B + +@item +@file{deuglify.el} (@code{gnus-article-outlook-deuglify-article}) + +$B$$$+$l$?(B Outlook (Express) $B$N5-;v$r=9$/$J$/$9$k$?$a$N!"(BRaymond Scholz +@email{rscholz@@zonix.de} $B$K$h$C$F?7@_$5$l$?%U%!%$%k$G$9!#(B + +@item +@code{(require 'gnus-load)} + +$BC1FH$GG[I[$5$l$F$$$k(B Gnus $B$r;H$&>l9g$K$O!"(B +@code{load-path} $B$K(B Gnus $B$N(B lisp $B%G%#%l%/%H%j$rDI2C$7$F$+$i!"(B +@file{~/.emacs} $B$K(B @code{(require 'gnus-load)} $B$r2C$($k$N$,NI$$$G$9!#(B + +$B%U%!%$%k(B @file{gnus-load.el} $B$O!"$=$N$&$A$N$$$/$D$+$O(B Emacsen $B$NG[I[$KF~$C(B +$B$F$$$J$$$+$b$7$l$J$$<+F0FI$_9~$_(B (autoload) $B%3%^%s%I!"4X?t$*$h$SJQ?t$r4^(B +$B$s$G$$$^$9!#(B + +@item +@code{gnus-slave-unplugged} + +$B%*%U%i%$%s$N(B Gnus $B$r%9%l!<%V%b!<%I$G5/F0$9$k?7$7$$%3%^%s%I$G$9!#(B + +@item +@code{message-insinuate-rmail} + +@code{(message-insinuate-rmail)} $B$H(B @code{(setq mail-user-agent +'gnus-user-agent)} $B$r(B @file{.emacs} $B$K2C$($k$3$H$G!"(B +@code{message-mode} $B$G%a%C%;!<%8$N:n@.!"JV?.$*$h$SE>Aw$r9T$J$&$h$&(B +$B$K(B Rmail $B$r@bF@$9$k$3$H$,$G$-$^$9!#$=$3$G$O(B @acronym{MML} $B$N0RNO$r4.G=$G(B +$B$-$^$9!#(B + +@item +@code{message-minibuffer-local-map} + +$B2<$N9T$G!"%a%C%;!<%8$r:FAw$9$k$H$-$K(B BBDB $B$,;H$($^$9(B: +@lisp +(define-key message-minibuffer-local-map [(tab)] + 'bbdb-complete-name) +@end lisp + +@item +$BE:IU%U%!%$%k(B (attachments) $B$N@Z$jN%$7(B (externalizing) $B$H>C5n!#(B + +@code{gnus-gcc-externalize-attachments} $B$^$?(B +$B$O(B @code{message-fcc-externalize-attachments} $B$,Hs(B-@code{nil} $B$K$J$C$F$$(B +$B$k$H!"%m!<%+%k%U%!%$%k$r30It%Q!<%H$H$7$FE:IU$7$^$9!#(B + +@code{gnus-mime-save-part-and-strip} $B%3%^%s%I(B (@acronym{MIME} $B%\%?%s>e(B +$B$G(B @kbd{C-o} $B$K3d$jEv$F$i$l$F$$$k(B) $B$O!"%Q!<%H$r%;!<%V$7$F$+$i30It$N$=$l(B +$B$HCV$-49$($^$9!#(B@code{gnus-mime-delete-part} (@acronym{MIME} $B%\%?%s>e(B +$B$G(B @kbd{d} $B$K3d$jEv$F$i$l$F$$$k(B) $B$O!"%Q!<%H$r:o=|$7$^$9!#$3$l$OJT=8$r%5(B +$B%]!<%H$7$F$$$k%P%C%/%(%s%I$G$@$1F0:n$7$^$9!#(B + +@item +@code{gnus-default-charset} + +$B%G%U%)%k%HCM$O(B @code{iso-8859-1} $B$KBe$o$C(B +$B$F(B @code{current-language-environment} $BJQ?t$K$h$C$F7hDj$5$l$kCM$K$J$j$^(B +$B$9!#$^$?!"(B@code{gnus-group-charset-alist} $B$K$"$C$?(B @samp{.*} $B$N9`L\$O:o(B +$B=|$5$l$^$7$?!#(B + +@item +@code{gnus-posting-styles} + +$B$3$N$h$&$J9gCW$NMM<0$,2C$o$j$^$7$?!#(B +@lisp +((header "to" "larsi.*org") + (Organization "Somewhere, Inc.")) +@end lisp +$B2<5-$N$h$&$J8E$$MM<0$O;~BeCY$l$K$J$j$^$7$?$,!"$^$@l9g$K!"$b$7$+$9$k$H(B +$B$=$l$iFs$D$N%X%C%@!<$r2C$($kI,MW$,$"$j$^$9!#(B + +@item +Gnus $B$O:9$79~$^$l$F$$$k(B (@dfn{plugged}) $B$H$-$K!"%(!<%8%'%s%H$+(B +$B$i(B @acronym{NOV} $B$H5-;v$rFI$_9~$_$^$9!#(B + +$B:9$79~$^$l$F$$$k$H$-$K5-;v$rFI$`>l9g$K!"$=$N5-;v$,$9$G$K%(!<%8%'%s%H$K$"(B +$B$k$J$i$P!"$b$&0lEY%@%&%s%m!<%I$9$k$3$H$O$"$j$^$;$s!#(B@code{(setq +gnus-agent-cache nil)} $B$O5l<0$NF0:n$KLa$7$^$9!#(B + +@item +Gnus $B$O(B ``format=flowed'' (RFC 2646) $B%Q%i%a!<%?$r%5%]!<%H$7$^$9!#%a%C%;!<(B +$B%8$r:n@.$9$k$H$-$K!"$=$l$O(B @code{use-hard-newlines} $B$G3h@-2=$5$l$^$9!#(B +format=flowed $B$N%G%3!<%I$O0JA0$+$i$G$-$^$7$?$,!"=i4|$NHG$G$O@bL@$NJ8=q$,(B +$B$"$j$^$;$s$G$7$?!#(B + +@item +Gnus $B$O(B RFC 2298 $B$N3+Iu3NG'MW5a$N@8@.$r%5%]!<%H$7$^$9!#(B + +$B$3$l$O%a%C%;!<%8%b!<%I$N(B @kbd{C-c M-n} $B%-!<$G5/F0$5$l$^$9!#(B + +@item +Gnus $B$O(B Maildir $B%0%k!<%W$r%5%]!<%H$7$^$9!#(B + +Gnus $B$O?7%P%C%/%(%s%I$G$"$k(B @file{nnmaildir.el} $B$r4^$s$G$$$^$9!#(B +@xref{Maildir}. + +@item +$B0u:~$N@-G=$,8~>e$7$^$7$?!#(B + +Gnus $B$O$=$l<+?H$,!"35N,$H5-;v%P%C%U%!$K$*$1$k(B @kbd{O P} $B$G(B Muttprint $B$r(B +$B%5%]!<%H$7$^$9!#$5$i$K(B @acronym{MIME} $B%\%?%s>e$G(B @kbd{p} $B$r;H$&$3$H$K$h$C(B +$B$F!"8D!9$N(B @acronym{MIME} $B%Q!<%H$N$=$l$>$l$r0u:~$9$k$3$H$,$G$-$^$9!#(B + +@item +Message $B$O(B Importance: $B%X%C%@!<(B (RFC 2156) $B$r%5%]!<%H$9$k$h$&$K$J$j$^$7(B +$B$?!#(B + +$B%a%C%;!<%8%P%C%U%!$G(B @kbd{C-c C-f C-i} $B$+(B @kbd{C-c C-u} $B$r;H$&$H!"2DG=$J(B +$BCM$,=[4D$7$^$9!#(B + +@item +Gnus $B$O%K%e!<%9$N(B Cancel Locks $B$r%5%]!<%H$7$^$9!#(B + +$BEj9F$9$k%K%e!<%95-;v$K(B @samp{Cancel-Lock} $B%X%C%@!<$,A^F~$5$l$k$3$H$G$9!#(B +$B$3$l$O!"5-;v$r$"$J$?$,=q$$$?$N$+$I$&$+$r3N$+$a$k$?$a$K;H$$$^$9(B ($B%-%c%s%;(B +$B%k$HCV$-49$($N$H$-(B)$B!#:G=i$K5-;v$rEj9F$9$k$H$-$K!"(BGnus $B$O%i%s%@%`$J%Q%9%o!<(B +$B%IJ8;zNs$r@8@.$7!"%+%9%?%`$N5!9=$r;H$C$F(B @file{~/.emacs} $B$K%;!<%V$7$^$9!#(B +$B$=$NJQ?t$O(B @code{canlock-password} $B$H8F$P$l$^$9$,!"5!L)$r5$$K$9$k%G!<%?(B +$B$G$O$"$j$^$;$s!#%&%'%V>e$G(B canlock $B$r8x3+$7$F$b!"0JA0$+$iH`=w$,$G$-$J$+$C(B +$B$?2?$+$r!"C/$+$,$G$-$k$h$&$K$9$k$b$N$G$O$"$j$^$;$s!#(B +@code{message-insert-canlock} $B$r%+%9%?%^%$%:$9$k$3$H$K$h$C$F!"?6$kIq$$$r(B +$BJQ99$9$k$,$G$-$^$9!#(B + +@item +Gnus $B$O(B Sieve $B$r;H$C$?%5!<%P!H$7$F2<$5$$!#(B + +@item +$B3HD%$5$l$?%U%)!<%^%C%H$N;EMM(B (format specs)$B!#(B + +$B%U%)!<%^%C%H$N;E(B +$BMM(B @samp{%&user-date;} $B$,(B @code{gnus-summary-line-format-alist} $B$KDI2C$5(B +$B$l$^$7$?!#$=$l$K!"%f!<%6Dj5A$K$h$k3HD%$5$l$?%U%)!<%^%C%H$N;EMM$b%5%]!<%H(B +$B$5$l$F$$$^$9!#3HD%$5$l$?%U%)!<%^%C%H$N;EMM$O(B @samp{%u&foo;} $B$N$h$&$J$b$N(B +$B$G!"4X?t(B @code{gnus-user-format-function-@var{foo}} $B$r5/F0$7$^$9!#(B +@samp{&} $B$,%(%9%1!<%WJ8;z$K;H$o$l$F$$$k$N$G!"8E$$%f!<%6Dj5A%U%)!<%^%C%H(B +$B$G$"$k(B @samp{%u&} $B$O:#$d%5%]!<%H$5$l$F$$$^$;$s!#(B + +@item +@kbd{/ *} (@code{gnus-summary-limit-include-cached}) $B$,=q$-D>$5$l$^$7$?!#(B + +$B$3$l$O(B @kbd{Y c} (@code{gnus-summary-insert-cached-articles}) $B$NJLL>$G$7(B +$B$?(B ($BLuCm(B: $B0JA0$O(B)$B!#?7$7$$4X?t$OB>$N5-;v$r_I2a$7$F=|5n$7$^$9!#(B + +@item +$B$$$/$D$+$N%3%^%s%I$O(B @kbd{C-u} $B@\F,<-$G9gCW$NH]Dj$r07$&$3$H$,$G$-$^$9!#(B + +@kbd{C-u} $B$r(B subject$B!"(Bauthor $B$^$?$O(B extra $B%X%C%@!<$r$3$N=g$K;H$&(B -- $B$9$J(B +$B$o$A(B @kbd{/ s}$B!"(B@kbd{/ a} $B$*$h(B +$B$S(B @kbd{/ x} (@code{gnus-summary-limit-to-@{subject,author,extra@}}) +-- $B$H!"7k2L$H$7$F$=$NI=8=$K9gCW$7$J$$$9$Y$F$N5-;v$,I=<($5$l$^$9!#(B + +@item +$B%0%k!<%WL>$O!"%G%#%U%)%k%H$G(B UTF-8 $B$G$"$k$b$N$H$7$FH$7$F2<$5$$!#(B + +@item +nnml $B$H(B nnfolder $B%P%C%/%(%s%I$O!"%0%k!<%WKh$K0u(B (marks) $B$r3JG<$9$k$h$&$K(B +$B$J$j$^$7$?!#(B + +$B$3$l$O(B nnml/nnfolder $B%5!<%P!<(B/$B%0%k!<%W(B $B$r(B @file{~/.newsrc.eld} $B$H@Z$jN%(B +$B$7$F!"$7$+$70u$Ol$J$I$NAH?%Fb$G!"(B(@file{~/.newsrc.eld} $B%U%!%$%k$r6&M-$9$k(B +$B$3$HL5$7$K(B) $B%f!<%64V$G5-;v$H0u$r6&M-$9$k$3$H$r$b2DG=$K$7$^$9!#$3$l$O!"(B +@file{~/.newsrc.eld} $B$K3JG<$5$l$k0u$r!"%0%k!<%WKh$N(B @file{.marks} $B%U%!%$(B +$B%k(B (nnml $BMQ(B) $B$H(B @file{@var{groupname}.mrk} $B%U%!%$%k(B (@var{groupname} $B$N(B +$BL>A0$r;}$D(B nnfolder $BMQ(B) $B$K3JG<$9$k$3$H$K$h$C$FF0:n$7$^$9!#(B +nnml/nnfolder $B$rB>$N%^%7%s$K0z$C1[$7$F$b!"(B +Gnus $B$O(B @file{~/.newsrc.eld} $B$K$"$k>pJs$NBe$o$j$K!"<+F0E*(B +$B$K(B @file{.marks} $B$+(B @file{.mrk} $B%U%!%$%k$r;H$$$^$9!#?7$7$$%5!<%P!A0(B ``Misc'' $B$O(B ``Gnus'' $B$K2~L>$5(B +$B$l$^$7$?!#(B + +@item +Message mode $B$G(B ``@acronym{MML}'' $B$HL>IU$1$i$l$?%a%K%e!<9`L\$O!"(B +``Attachments'' $B$K2~L>$5$l$^$7$?!#$3$N%a%K%e!<$O!"=pL>$H0E9f(B +$B2=(B (@pxref{Security, Security,, message-ja, Message Manual}) $B$N$h$&$J!"(B +$BJ]0B$K4XO"$7$?$b$N$b4^$s$G$$$k$3$H$KCeL\$7$F2<$5$$!#(B + +@item +@code{gnus-group-charset-alist} $B$H(B @code{gnus-group-ignored-charsets-alist}$B!#(B + +$B$3$l$i$NJQ?t$K@_Dj$5$l$?@55,I=8=$O!"40A4$J(B (full) $B%0%k!<%WL>$HHf3S$5$l$^(B +$B$9!#(BGnus 5.8 $B$G$O$,Hf3S$NBP>]$G$7$?!#$7$?$,$C$F!"(B +$B$3$l$i$NJQ?t$r%+%9%?%^%$%:$7$F$$$k%f!<%6$O!"@55,I=8=$rJQ99$7$J$1$l$P$J$j(B +$B$^$;$s!#Nc$G$9(B: +@lisp +("^han\\>" euc-kr) -> ("\\(^\\|:\\)han\\>" euc-kr) +@end lisp + +@item +Gnus $B$O(B @acronym{PGP} (RFC 1991/2440)$B!"(B@acronym{PGP/MIME} (RFC +2015/3156) $B$*$h$S(B @acronym{S/MIME} (RFC 2630-2633) $B$r%5%]!<%H$7$^$9!#(B + +$B$3$l$K$O(B @acronym{S/MIME} $B$H(B OpenPGP $B$,WFM(B +$B$,2sHr$5$l$^$7$?!#$3$N%3%^%s%I$b$^$?!"%a%C%;!<%8%b!<%I$G$OLr$KN)$D$N$G$9!#(B + +@item +@code{message-forward-show-mml} $B$N%G%#%U%)%k%H$,(B @code{best} $B$KJQ$o$j$^(B +$B$7$?!#(B + +$BCM(B @code{best} $B$N?6$kIq$$$O!"$=$l$,$U$5$o$7$$>l9g$O(B @acronym{MML} $B$rI=<((B +$B$9$k(B ($B$9$J$o$A(B @acronym{MIME} $B$KJQ49$9$k(B) $B$3$H$G$9!#JQ49$,%G%#%8%?%k=pL>(B +$B$rL58z$K$7$F$7$^$&$N$G!"=pL>$5$l$?!"$^$?$O0E9f2=$5$l$?%a%C%;!<%8$rE>Aw$9(B +$B$k$H$-$O(B @acronym{MML} $B$O;H$o$l$^$;$s!#(B +@end itemize + +@node No Gnus +@subsubsection No Gnus +@cindex No Gnus + +No Gnus $B$N?7$7$$5!G=(B: +@c FIXME: Gnus 5.12? + +@include gnus-news-ja.texi + +@iftex + +@page +@node The Manual +@section $B%^%K%e%"%k(B +@cindex colophon +@cindex manual + +$B$3$N%^%K%e%"%k$O(B TeXinfo $B%U%!%$%k$+$i:n@.$5$l!"$=$l$+(B +$B$i(B @code{texi2dvi} +@iflatex +$B$b$7$/$O!"(BLars $B$5$s$N:n$i$l$?(B Texinfo to \LaTeX $BJQ49$rDL$j!"$=$l$+$i!"(B +@code{latex} $B$H(B @code{dvips} +@end iflatex +$B$r/$7(B +$B$@$H$$$&$3$H$G$9!#(BGnus $B$N40A4$KA4$F$N$3$H$,@bL@$5$l$F$$$^$9$,!"C5$7$F$$(B +$B$k>l=j$G$O$J$$$H$$$&$3$H$,$h$/$"$j$^$9!#$3$l$O%j%U%!%l%s%9%^%K%e%"%k$G$"(B +$B$j!"(BGnus $B$r;O$a$k$?$a$NP$o$l$k$G$7$g$&!#$"$J$?$NCN$i$J$$$H$3$m$G!#(B + +@item $B%a!<%k(B (mail) +@cindex mail +$B$"$J$?$K8D?ME*$KG[Aw$5$l$k$b$NA4$F$,%a!<%k$G$9!#$$$/$D$+$N%K%e!<%9(B/$B%a!<(B +$B%k%j!<%@!<(B (Gnus $B$N$h$&$J(B) $B$O%a!<%k$H%K%e!<%9$N0c$$$r$\$d$1$5$;$^$9$,!"(B +$B$=$3$K$O0c$$$OB8:_$7$^$9!#%a!<%k$O;dE*$G$9!#%K%e!<%9$O8xE*$G$9!#%a!<%k$r(B +$BAw?.$9$k;v$OEj9F$G$O$J$/!"JV?.$O%U%)%m!<%"%C%W$G$O$"$j$^$;$s!#(B + +@item $BJV?.(B (reply) +@cindex reply +$B$"$J$?$,FI$s$G$$$k$b$N$r=q$$$??M$K%a!<%k$rAw$k;v$G$9!#(B + +@item $B%U%)%m!<%"%C%W(B (follow up) +@cindex follow up +$B$"$J$?$,FI$s$G$$$k5-;v$K1~Ez$7$F8=:_$N%K%e!<%9%0%k!<%W$K5-;v$rEj9F$9$k;v(B +$B$G$9!#(B + +@item $B%P%C%/%(%s%I(B (back end) +@cindex back end +Gnus $B$O%a!<%k$H%K%e!<%9$,$[$H$s$IF1$8$@$H$_$J$7$^$9!#K\Ev$K!#0c$$$OuBV$K$9$k$3$H$b$G$-$^$9!#$3$l$i$O%K%e!<(B +$B%9$reIt$G!"G'>Z>pJs(B ($BEy(B) $B$,F~$l$i$l$F$$$k$H$3$m$G$9!#(B + +@item $BK\BN(B (body) +@cindex body +$B5-;v$N;D$j$NItJ,$G$9!#%X%C%I$G$J$$$b$N$O$9$Y$FK\BN$G$9!#(B + +@item $B%X%C%@!<(B (header) +@cindex header +$B5-;v$N%X%C%I$+$i$N9T$G$9!#(B + +@item $B%X%C%@!<72(B (headers) +@cindex headers +$B$=$N$h$&$J9T$N=89g$b$7$/$O!"%X%C%I$N=89g$G$9!#$b$7$/$O!"(B@acronym{NOV} $B9T(B +$B$N=89g$G$9!#(B + +@item @acronym{NOV} +@cindex @acronym{NOV} +Gnus $B$,%0%k!<%W$KF~$k$H!"%0%k!<%W$NA4$F$NL$FI5-;v$N%X%C%@!<$r%P%C%/%(%s(B +$B%I$K5a$a$^$9!#$[$H$s$I$N%5!<%P!<$O(B News OverView $BMM<0$,;HMQ2DG=$G!"$=$l(B +$B$OIaDL$N(B @sc{head} $BMM<0$h$j$b$C$H$l$N%0%k!<%W$O2?$i$+$N(B @dfn{$B%l%Y%k(B} $B$+B>$N$b$N(B (1-9) $B$G9XFI$5$l$F(B +$B$$$^$9!#Dc$$%l%Y%k$N$b$N$O9b$$%l%Y%k$N$b$N$h$j(B ``$B$h$j(B'' $B9XFI$5$l$F$$$^$9!#(B +$B%s%S(B}; 9 $B$O(B @dfn{$B@Z$i$l$?(B} $B$H8+$J$5$l$^$9!#%0%k!<%W$r%j(B +$B%9%H$7$?$j!"?7$7$$%0%k!<%W$rAv::$7$?$j$9$kL?Na$O$9$Y$F?tCM@\F,0z?t(B +$B$r(B @dfn{$BF0:n%l%Y%k(B} $B$H$7$F;H$$$^$9!#(B + +@item $B@Z$i$l$?%0%k!<%W(B (killed groups) +@cindex killed groups +$B@Z$i$l$?%0%k!<%W$N>pJs$OC_@Q$5$l$?$j99?7$5$l$?$j$7$^$;$s$N$G!"@Z$i$l$?%0(B +$B%k!<%W$r9XFI$5$l$?%0%k!<%W$h$j4JC1$K07$($k$h$&$K$J$j$^$9!#(B + +@item $B%>%s%S%0%k!<%W(B (zombie groups) +@cindex zombie groups +$B$[$H$s$I@Z$i$l$?%0%k!<%W$HF1$8$G!"$=$l$h$j>/$7;`$s$G$$$k$@$1$G$9!#(B + +@item $B%"%/%F%#%V%U%!%$%k(B (active file) +@cindex active file +$B%K%e!<%9%5!<%P!<$O$I$N5-;v$r1?$s$G$$$k$+!"$I$N%0%k!<%W$,B8:_$9$k$+$r5-O?(B +$B$7$F$*$+$J$1$l$P$J$j$^$;$s!#A4$F$N$3$N>pJs$O8=>u%U%!%$%k$KC_@Q$5$l!"$=$l(B +$B$O$"$J$?$,A[A|$9$k$h$&$KHf3SE*Bg$-$$$G$9!#(B + +@item $B56%0%k!<%W(B (bogus groups) +@cindex bogus groups +$B%U%!%$%k(B @file{.newsrc} $B$KB8:_$9$k%0%k!<%W$G$9$,!"%5!<%P!<$KCN$i$l$F$$$J(B +$B$$%0%k!<%W(B ($B$9$J$o$A!"$=$l$O%"%/%F%#%V%U%!%$%k$K$"$j$^$;$s(B) $B$O(B @emph{$B56(B +$B%0%k!<%W(B} $B$G$9!#$3$l$O!"$*$=$i$/(B ($B$9$G$K(B) $B$=$N%0%k!<%W$OB8:_$7$F$$$J$$$N(B +$B$G$7$g$&!#(B + +@item $B3hF02=(B (activating) +@cindex activating groups +$B%5!<%P!<$K%0%k!<%W$N>pJs$r?R$M!"L$FI5-;v$N?t$r1i;;$9$k9T0Y$O(B @dfn{$B%0%k!<(B +$B%W$r3hF02=$9$k(B} $B$H8F$P$l$F$$$^$9!#Hs3hF0%0%k!<%W$O%0%k!<%W%P%C%U%!(B +$B$K(B @samp{*} $B$H$H$b$K0lMwI=<($5$l$^$9!#(B + +@item $B%9%W!<%k(B (spool) +@cindex spool +$B%K%e!<%9%5!<%P!<$O!"$"$k$d$jJ}!"$^$?$OB>$NN.57$G5-;v$r%m!<%+%k$KJ]B8$7$^(B +$B$9!#$"$k8E$$N.57$NJ]B8J}K!$O!"5-;vKh$K$?$C$?0l$D$N%U%!%$%k$r;}$D$3$H$G$9!#(B +$B$=$l$OEAE}E*$J%9%W!<%k(B (traditional spool) $B$H8F$P$l$^$9!#(B + +@item $B%5!<%P!<(B (server) +@cindex server +$B@\B3$7$F!"%K%e!<%9(B ($B$b$7$/$O%a!<%k(B) $B$re$N%5!<%P!<@_Dj$r;XDj$9$k9=B$$G$9!#(B + +@item $B;ve$N%5!<%P!<(B (virtual server) +@cindex virtual server +$BL?L>$5$l$?A*BrJ}K!$G$9!#A*BrJ}K!$O(B ($BJ*M}E*(B) $B%5!<%P!<$K@\B3$9$k$?$a$KI,MW(B +$B$JJ}K!$rDj5A$9$k$?$a!"J*;v$rA4BN$H$7$Fe$N%5!<%P!<$K$J$j$^(B +$B$9!#(B + +@item $B@vBu(B (washing) +@cindex washing +$B%P%C%U%!$r;}$C$F$-$F!"2?$i$+$N/$J$+$l(B) $B85$N$b$N$h$j$b$h$j$-$l$$$G4n$P$7$$$b$N$K$J$k$G$7$g$&!#(B + +@item $B0l;~%0%k!<%W(B (ephemeral groups) +@cindex ephemeral groups +@cindex temporary groups +$B$?$$$F$$$N%0%k!<%W$O$I$N5-;v$rFI$s$@$+$N%G!<%?$rC_@Q$7$^$9!#(B +@dfn{$B0l;~(B} $B%0%k!<%W$O%G!<%?$,N/$a$i$l$J$$%0%k!<%W$G$9(B---$B%0%k!<%W$r=P$k$H!"(B +$B$=$l$OE76u$K>C$(5n$j$^$9!#(B + +@item $B8GDj%0%k!<%W(B (solid groups) +@cindex solid groups +$B$3$l$O0l;~%0%k!<%W$NH?BP$G$9!#%0%k!<%W%P%C%U%!$K5s$2$i$l$F$$$kA4$F$N%0%k!<(B +$B%W$O8GDj%0%k!<%W$G$9!#(B + +@item $B$^$P$i5-;v(B (sparse articles) +@cindex sparse articles +@code{gnus-build-sparse-threads} $B$N5!G=$r;HMQ$7$F$$$k$H$-$O!"35N,%P%C%U%!(B +$B$K5-;v$NF~$l>l=j$,I=<($5$l$^$9!#(B + +@item $B%9%l%C%I:n$j(B (threading) +@cindex threading +$B$=$l$,1~Ez$7$?5-;v$ND>8e$K$=$N5-;v$X$N1~Ez$rCV$/$3$H$G$9(B---$B3,AXE*N.57$G!#(B + +@item $B:,(B (root) +@cindex root +@cindex thread root +$B%9%l%C%I$N:G=i$N5-;v$,:,$G$9!#$=$l$O%9%l%C%I$NA4$F$N5-;v$NAD@h$G$9!#(B + +@item $B?F(B (parent) +@cindex parent +$B1~Ez$N$"$k5-;v$G$9!#(B + +@item $B;R(B (child) +@cindex child +$B0c$C$?5-;v(B---$B$=$N?F(B $B$K1~Ez$9$k5-;v$G$9!#(B + +@item $B=8G[(B (digest) +@cindex digest +$BJ#?t$N%a%C%;!<%8$r0l$D$N%U%!%$%k$K=8$a$?$b$N$G$9!#$b$C$H$bIaDL$N=8G[MM<0(B +$B$O(B RFC1153 $B$G;XDj$5$l$F$$$^$9!#(B + +@item $BJ,3d(B (splitting) +@cindex splitting, terminolgy +@cindex mail sorting +@cindex mail filtering (splitting) +$B$"$k5,B'$K$h$C$F%a!<%k$rJ,N`$9$k9T0Y$G$9!#$H$-$I$-4V0c$C$F%a!<%k$N_I(B +$B2a(B (mail filtering) $B$H8F$P$l$^$9!#(B +@end table + +@page +@node Customization +@section $B%+%9%?%^%$%:(B +@cindex gerenal customization + +$BA4$F$NJQ?t$O$3$N%^%K%e%"%k$N$I$3$+JL$N$H$3$m$GE,@Z$K@bL@$5$l$F$$$^$9!#$3(B +$B$NItJ,$OHs>o$KNI$/$"$k>u67$G$I$N$h$&$K(B Gnus $B$r%+%9%?%^%$%:$9$l$PNI$$$+$N(B +$BAm9gE,;X<(@h$rM?$($k$?$a$K9M0F$5$l$F$$$^$9!#(B + +@menu +* Slow/Expensive Connection:: $B%m!<%+%k$N(B Emacs $B$rN)$A>e$2$F!"B>$N$H$3$m$+$i%K%e!<%9$rF@$k;v$,$G$-$k(B +* Slow Terminal Connection:: $B1s3V(B Emacs $B$ro$K:Y$$@~$N8~$3$&$N%^%7(B +$B%s$+$i%K%e!<%9$ro$KBg(B +$B$-$/$J$C$F$$$^$9!#$=$l$K2C$($F!"(BGnus $B$,FMA3$H$K$+$/8=>u%U%!%$%k$ro$K35N,%P%C%U%!$rCf?4:F@_Dj$r$9$k$3$H$r6X;_$9$k$?$a$K$3$l(B +$B$r(B @code{nil} $B$K@_Dj$7$F2<$5$$!#$3$l$,(B @code{vertical} $B$G$"$k$H!"?bD>J}(B +$B8~$N(B (vertical) $BCf?4:F@_Dj$N$_$r$7$^$9!#(B@code{nil} $B$G(B +$B$b(B @code{vertical} $B$G$bL5$1$l$P!"?eJ?J}8~$H?bD>J}8~$NN>J}$NCf?4:F@_Dj$r(B +$B9T$$$^$9!#(B + +@item gnus-visible-headers +$B5-;v$K4^$^$l$k%X%C%@!<$r:G>.8B$K8:$i$7$^$9!#.$5$/$9$k;v$,$G$-$^(B +$B$9!#$3$l$OAm$8$F$=$s$J$K8:$i$7$^$;$s!#$3$l$O!"5-;v$r$I$C$A$K$7$mFI$_$?$/(B +$B$J$$$H$$$&;v$r7hDj$9$kA0$K!">/$7$NItJ,$7$+8+$kI,MW$,L5$$$H$$$&;v$G$9!#(B + +@item gnus-thread-hide-subtree +$B$3$l$,(B @code{nil} $B$G$J$1$l$P!"A4$F$N35N,%P%C%U%!$N%9%l%C%I$O=i$a$K1#$5$l(B +$B$^$9!#(B + +@item gnus-updated-mode-lines +$B$3$l$,(B @code{nil} $B$G$"$k$H!"(BGnus $B$O%P%C%U%!$N%b!<%I9T$K>pJs$rF~$l$^$;$s(B +$B$N$G!";~4V$r@aLs$G$-$k$G$7$g$&!#(B +@end table + +@node Little Disk Space +@subsection $B>/$7$N%G%#%9%/MFNL(B +@cindex disk space + +$B5/F0%U%!%$%k$OHf3SE*Bg$-$/$J$k$N$G!"6u$-MFNL$,>/$J$/$J$C$F$-$F$$$k$H$-$O(B +$B$=$NBg$-$5$r>/$7>.$5$/$9$kI,MW$,$"$k$G$7$g$&!#(B + +@table @code +@item gnus-save-newsrc-file +$B$3$l$,(B @code{nil} $B$G$"$k$H!"(BGnus $B$O7h$7$F(B @file{.newsrc} $B$rJ]B8$7$^$;(B +$B$s(B---$B$=$l$O(B @file{.newsrc.eld} $B$N$_$rJ]B8$7$^$9!#$3$l$O!"(BGnus $B$NB>$N%K%e!<(B +$B%9%j!<%@!<$r;H$($J$$$H$$$&;v$G$9!#$3$NJQ?t$O=i4|@_Dj$G(B @code{t} $B$G$9!#(B + +@item gnus-read-newsrc-file +$B$3$l$,(B @code{nil} $B$G$"$l$P!"(BGnus $B$O(B @file{.newsrc} $B$r7h$7$FFI$_$^$;(B +$B$s(B ---@file{.newsrc.eld} $B$@$1$rFI$_$^$9!#$3$l$O!"(BGnus $B0J30$N%K%e!<%9%j!<(B +$B%@!<$r;H$($J$/$J$k!"$H$$$&$3$H$G$9!#$3$NJQ?t$O=i4|@_Dj$G$O(B @code{t} $B$G$9!#(B + +@item gnus-save-killed-list +$B$3$l$,(B @code{nil} $B$G$"$k$H!"(BGnus $B$O;`$s$@%0%k!<%W$N%j%9%H$rJ]B8$7$^$;$s!#(B +$B$3$NJQ?t$r(B @code{nil} $B$K@_Dj$7$?$H$-$O!"(B +@code{gnus-check-new-newsgroups} $B$r(B @code{ask-server} $B$K!"(B +@code{gnus-check-bogus-newsgroups} $B$r(B @code{nil} $B$K@_Dj$9$k$Y$-$G$7$g$&!#(B +$B$3$NJQ?t$O=i4|@_Dj$G(B @code{t} $B$G$9!#(B +@end table + +@node Slow Machine +@subsection $BCY$$5!3#(B +@cindex slow machine + +$B$b$7CY$$5!3#$r;}$C$F$$$k$+!"$b$7$/$OC1$KK\Ev$KG&BQNO$,$J$$;~$O!"(BGnus $B$N(B +$B/$7$"$j$^$9!#(B + +$B5/F0$rB.$/$9$k$?$a$K(B @code{gnus-check-new-newsgroups} $B$*$h(B +$B$S(B @code{gnus-check-bogus-newsgroups} $B$r(B @code{nil} $B$K@_Dj$7$F2<$5$$!#35(B +$BN,%P%C%U%!$KF~$k;v$HH4$1$k;v$rB.$/$9$k$?$a(B +$B$K(B @code{gnus-show-threads} $B$H(B @code{gnus-use-cross-reference}$B!"$=$l(B +$B$K(B @code{gnus-nov-is-evil} $B$r(B @code{nil} $B$K@_Dj$7$F2<$5$$!#(B + +@page +@node Troubleshooting +@section $BLdBj2r7h(B +@cindex troubleshooting + +Gnus $B$OH"$+$i=P$7$F$9$0$K(B @emph{$BHs>o$K(B} $B$h$/F0:n$7$^$9(B---$B2?$bLdBj$N5/$3(B +$B$k$3$H$OA[A|$G$-$^$;$s!"K\Ev$K!#(B + +$B%*%C%[%s!#(B + +@enumerate + +@item +$B$"$J$?$N%3%s%T%e!<%?$N%9%$%C%A$,F~$C$F$$$k;v$r3N$+$a$F2<$5$$!#(B + +@item +$BK\Ev$K8=9T$N(B Gnus $BHG$rFI$_9~$s$G$$$k;v$r3NG'$7$F2<$5$$!#:#$^(B +$B$G(B @sc{gnus} $B$rl9g(B +$B$O!"8E$$(B @file{.el} $B%U%!%$%k$,;6$i$+$C$F$$$^$9!#$=$l$i$r>C$7$F2<$5$$!#(B + +@item +@acronym{FAQ} $B$H(B how-to $B$rFI$`$?$a$K%X%k%W%0%k!<%W(B ($B%0%k!<%W%P%C%U%!(B +$B$G(B @kbd{G h}) $B$rFI$s$G2<$5$$!#(B + +@item +@vindex max-lisp-eval-depth +Gnus $B$OB?$/$NB?$/$N:F5"9=B$$GF0:n$7!"2?$i$+$N6KC<$J(B ($B$=$7$FHs>o$K$^$l(B +$B$J(B) $B;vNc$G$O!"(BGnus $B$O:F5"$r(B ``$B$"$^$j$K?<$/(B'' $B9_$j$9$.$F!"(BEmacs $B$,$"$J$?(B +$B$K%S!<%W2;$rLD$i$9;v$,$"$j$^$9!#$b$7$3$l$,5/$3$C$?$J$i!"(B +@code{max-lisp-eval-depth} $B$r(B 500 $B$+$=$l$/$i$$$NCM$K@_Dj$7$F2<$5$$!#(B +@end enumerate + +$B$b$7B>$NA4$F$,<:GT$7$?$J$i!"%P%0$H$7$FLdBj$rJs9p$7$F2<$5$$!#(B + +@cindex bugs +@cindex reporting bugs + +@kindex M-x gnus-bug +@findex gnus-bug +$B$b$7(B Gnus $B$N%P%0$r8+$D$1$?$J$i!"L?Na(B @kbd{M-x gnus-bug} $B$K$h$C$F$=$l$rJs(B +$B9p$9$k;v$,$G$-$^$9!#(B +@kbd{M-x set-variable RET debug-on-error RET t RET} $B$H$7$F!"$=$l$+$i;d$K(B +$B%P%C%/%H%l!<%9$rAw$C$F2<$5$$!#;d$O%P%0$r=$@5$7$h$&$H$7$^$9$,!"$"$J$?$,%P(B +$B%0$r:F8=$5$;$kJ}K!$r@53N$K=q$$$F$/$l$?$H$-$N$_!"$=$l$r=$@5$9$k;v$,$G$-$^(B +$B$9!#(B + +$B%P%0Js9p$G$O!">\:Y$9$.$k$3$H$O7h$7$F$"$j$^$;$s!#%P%0Js9p$r$9$k$H$-$O!"$$(B +$B$D$b(B @kbd{M-x gnus-bug} $BL?Na$r;H$C$F2<$5$$!#$=$l$r;H$&$?$S$K(B 10Kb $B$N%a!<(B +$B%k$,$G$-$F$7$^$C$F$b!"$=$7$F$"$J$?$N4D6-$r0JA0;d$K(B 500 $B2sAw$C$?$H$7$F$b(B +$B$G$9!#(B + +$B;d$O!"5-21$H$$$&o$K!"A4$F$r@bL@$7$9$.$F(B +$B2<$5$$!#$=$l$O2f!9A4$F$K$H$C$F$b$C$H4JC1$K$J$j$^$9(B---$B$b$7;d$,I,MW$JA4$F(B +$B$N>pJs$rF@$i$l$J$+$C$?$i!";d$O$"$J$?$K%a!<%k$rAw$C$F$5$i$J$k>pJs$r5a$a!"(B +$B$=$N7k2LA4$F$,$h$jB?$/$N;~4V$rLL$7$F$$$kLdBj$,Hs>o$K;k3PE*$G!"$=$l$r>el(B +$B9g$O!"(BEmacs $B$N%&%#%s%I%&$r%U%!%$%k$K%3%T!<$7$F(B ($BNc$($P!"(B@kbd{xwd} $B$G(B)$B!"(B +$B$=$l$r$I$3$+H(B +$B$9$k$3$H$G$9!#$=$7$F$=$N4X?tL>$N>l=j$G(B @kbd{M-x edebug-defun RET} $B$r%?%$(B +$B%W$7$F(B Gnus $B$KLa$j!"$=$N%3!<%I$r5/F0$9$k$?$a$K(B @kbd{c} $B$r2!$7$^$9!#(B +Lisp $B%P%C%U%!!<$G$O!"(B@kbd{SPC} $B$G%7%s%0%k%9%F%C%WF0:n!"(B@kbd{M-:} $B$G<0$r(B +$BI>2A!"(B@kbd{C-h v} $B$GJQ?t$r8!::!"(B@kbd{q} $B$G@\$K(B elisp $B$N%(%i!<$r5/$3$5$J$$$b$N$N!"(BGnus $B$,Hs>o$KCY$/$J$k(B +$B$?$a$KL@$i$+$K$J$kLdBj$,$"$j$^$9!#$=$s$J>l9g$K$O(B @kbd{M-x +toggle-debug-on-quit} $B$r;H$C$F!"CY$/$J$C$?$H$-$K(B @kbd{C-g} $B$r2!$7!"$7$+(B +$B$k8e$K%P%C%/%H%l!<%9$r2r@O$7$F2<$5$$(B ($B$=$NeEy$J$N>l=j$G40A4$KJ8=q2=$5$l$F$$$k$O$:$G$9$,!"$=(B +$B$l$r;O$a$k$?$a$KI,MW$J/!9=q$$$F$*$-$^$7$g$&!#Bh0l$K!"%W%m%U%!%$%k(B +$B$7$F$_$?$$(B Gnus $B$NItJ,$r7WB,$9$k$?$a$N@_Dj$r!"Nc$($P(B @kbd{M-x +elp-instrument-package RET gnus} $B$d(B @kbd{M-x elp-instrument-package RET +message} $B$G9T$J$C$F2<$5$$!#$=$7$F!"CY$$F0:n$r9T$J$o$;$F$+$i(B @kbd{M-x +elp-results} $B$r2!$7$^$7$g$&!#$9$k$H!"$I$NF0:n$,;~4V$r?)$C$F$$$k$+$r8+$F!"(B +$B8e$G$=$l$i$r%G%P%C%0$9$k$3$H$,$G$-$^$9!#F0:nA4BN$,!"%W%m%U%!%$%i!<$N=PNO(B +$B$NCf$G:G$bCY$$4X?t$GHq$d$5$l$?;~4V$h$j$O$k$+$KD9$/$+$+$k$N$O!"$?$V(B +$B$s(B Gnus $B$N4V0c$C$F$$$kItJ,$r%W%m%U%!%$%k$7$?$;$$$G$7$g$&!#%W%m%U%!%$%k$N(B +$BE}7W$r%j%;%C%H$9$k$K$O(B @kbd{M-x elp-reset-all} $B$r;H$C$F2<$5$$!#(B@kbd{M-x +elp-restore-all} $B$O%W%m%U%!%$%k$9$kF0:n$rH%,%$%I(B + +$B;d$N4j$$$O!"B>$NC/$+$,(B Gnus $B$G$G$-$k2?$+8-$$$b$N$r9M$(=P$7!"$=$N>e$=$N8-(B +$B$$$b$N$r=q$$$F$/$l$k$H$$$&$3$H$G$9!#$3$l$rMF0W$K$9$k$?$a$K$O!"(BGnus $B$NFb(B +$BItF0:n$r5-=R$9$k$N$,NI$$J}K!$@$m$&$H;d$O;W$$$^$7$?!#$"$H!"$=$s$J$KFbIt$8$c(B +$B$J$$F0:n$r$$$/$D$+$H!";d$,:#$d$C$F$k$3$H$H!#(B + +$B%W%m%0%i%`$NFbIt9=B$$,JQ99$5$l$k$3$H$O$J$$!"$J$I$H;W$C$F$O$$$1$^$;$s$,!"(B +Gnus $B$H$=$N%P%C%/%(%s%I4V$N%$%s%?!<%U%'!<%9(B ($B$3$l$O40A4$K5-=R$5$l$F$$(B +$B$k(B) $B$d!"%9%3%"%U%!%$%k$N7A<0(B ($B$3$l$bF1MM(B)$B!"%G!<%?9=B$(B ($B$3$l$OB>$h$jJQ99(B +$B$5$l$d$9$$$b$N$b$"$k(B)$B!"A`:nMQ$N0lHL%a%=%C%I!"$J$I$r(B ($B:YIt$K$o$?$C$F(B) $BDj(B +$B5A$7$F$$$-$^$9!#(B + +@menu +* Gnus Utility Functions:: $B;HMQ$G$-$k6&DL$N4X?t$HJQ?t(B +* Back End Interface:: Gnus $B$O$I$&$d$C$F%5!<%P!<$HDL?.$9$k$N$+(B +* Score File Syntax:: $B%9%3%"%U%!%$%k5,3J$N(B BNF $BDj5A(B +* Headers:: Gnus $B$O%X%C%@!<$rFbItE*$K$I$N$h$&$K3JG<$9$k$+(B +* Ranges:: $B$?$/$5$s$N?t$r3JG<$9$kJXMx$J7A<0(B +* Group Info:: $B%0%k!<%W>pJs7A<0(B +* Extended Interactive:: $B5-9f@\F,<-$J$I(B +* Emacs/XEmacs Code:: Gnus $B$OA4$F$N6aBe(B Emacsen $B$GF0:n$9$k(B +* Various File Formats:: Gnus $B$N;HMQ$9$k%U%!%$%k$N7A<0(B +@end menu + +@node Gnus Utility Functions +@subsection Gnus $B$NM-MQ$J4X?t(B +@cindex Gnus utility functions +@cindex utility functions +@cindex functions +@cindex internal variables + +$B%U%C%/$J$I$+$i.$5$J4X?t$r=q$/$H$-$O!"(BGnus $B$NFbIt4X?t(B +$B$dJQ?t$K%"%/%;%9$9$k$3$H$O@dBPI,MW$G$9!#0J2<$,:G$b$h$/;H$o$l$k$b(B +$B$N$N0lMw$G$9!#(B + +@table @code +@item gnus-newsgroup-name +@vindex gnus-newsgroup-name +$B$3$NJQ?t$O8=:_$N%K%e!<%9%0%k!<%W$NL>A0$rJ];}$7$F$$$^$9!#(B + +@item gnus-find-method-for-group +@findex gnus-find-method-for-group +@var{group} $B$NA*BrJ}K!$rJV$94X?t$G$9!#(B + +@item gnus-group-real-name +@findex gnus-group-real-name +$B@55,$N(B ($B@\F,<-IU$-$N(B) Gnus $B%0%k!<%WL>$rA0(B +$B$rJV$7$^$9!#(B + +@item gnus-group-prefixed-name +@findex gnus-group-prefixed-name +$B@\F,<-L5$7$N%0%k!<%WL>$HA*BrJ}K!$r$rJV$7$^$9!#(B + +@item gnus-get-info +@findex gnus-get-info +@var{group} $B$N%0%k!<%W>pJs0lMw$rJV$7$^$9!#(B + +@item gnus-group-unread +@findex gnus-group-unread +@var{group} $B$NL$FI5-;v$N?t$+!"$b$7$/$O$=$l$,J,$+$i$J$$>l9g$O(B @code{t} $B$G(B +$B$9!#(B + +@item gnus-active +@findex gnus-active +@var{group} $B$N3hF0EPO?$G$9!#(B + +@item gnus-set-active +@findex gnus-set-active +@var{group} $B$K3hF0EPO?$r@_Dj$7$^$9!#(B + +@item gnus-add-current-to-buffer-list +@findex gnus-add-current-to-buffer-list +Gnus $B=*N;;~$K>C5n$9$k%P%C%U%!$N0lMw$K8=:_$N%P%C%U%!$rDI2C$7$^$9!#(B + +@item gnus-continuum-version +@findex gnus-continuum-version +$B0z?t$H$7$F(B Gnus $B$N%P!<%8%g%sJ8;zNs$r.?tE@?t$rJV$7(B +$B$^$9!#8E$$%P!<%8%g%s$OI,$:?7$7$$%P!<%8%g%s$h$j$b>.$5$$?t$K$J$j$^(B +$B$9!#(B + +@item gnus-group-read-only-p +@findex gnus-group-read-only-p +@var{group} $B$,FI$_=P$7@lMQ$G$"$k$+$I$&$+$r<($7$^$9!#(B + +@item gnus-news-group-p +@findex gnus-news-group-p +@var{group} $B$,%K%e!<%9%P%C%/%(%s%I$G$"$k$+$I$&$+$r<($7$^$9!#(B + +@item gnus-ephemeral-group-p +@findex gnus-ephemeral-group-p +@var{group} $B$,C;4|%0%k!<%W$G$"$k$+$I$&$+$r<($7$^$9!#(B + +@item gnus-server-to-method +@findex gnus-server-to-method +@var{server} $B$KBP1~$7$F$$$kA*BrJ}K!$rJV$7$^$9!#(B + +@item gnus-server-equal +@findex gnus-server-equal +$BFs$D$N2>A[%5!<%P!<$,F10l$N$b$N$G$"$k$+$I$&$+$r<($7$^$9!#(B + +@item gnus-group-native-p +@findex gnus-group-native-p +@var{group} $B$,4pK\%0%k!<%W$G$"$k$+$I$&$+$r<($7$^$9!#(B + +@item gnus-group-secondary-p +@findex gnus-group-secondary-p +@var{group} $B$,FsA[%0%k!<%W$K$D$$$F$O2?$K$b(B +$BCN$j$^$;$s!#$?$@2>A[%5!<%P!<(B @dfn{virtual servers} $B$HBPOC$9$kJ}K!$rCN$C(B +$B$F$$$k$@$1$G$9!#2>A[%5!<%P!<$O%P%C%/%(%s%I(B @dfn{back end} $B$H$$$/$D$+$N%P%C(B +$B%/%(%s%IJQ?t(B @dfn{back end variables} $B$+$i$J$j$^$9!#A0pJs$rMW5a$9$k$H(B +$B$-$O!"DL>o4X?t$N0z?t$H$7$F2>A[%5!<%P!$r4^$a$^$9!#(B($B$b$7$J$1$l$P!"%P%C(B +$B%/%(%s%I$O(B ``$B8=:_$N(B'' $B2>A[%5!<%P!<$r;HMQ$7$^$9!#(B) $BNc$($P!"(B +@code{nntp-request-list} $B$O$=$NM#0l$N(B ($B>JN,2DG=$J(B) $B0z?t$H$7$F2>A[%5!<%P!<(B +$B$rA[%5!<%P!<$,3+$+$l$F$$$J$1$l$P!"$3$N4X?t$O<:GT$7$^(B +$B$9!#(B + +$B2>A[%5!<%P!$O!"J*M}E*$J%5!<%P!$H$O2?$N4X78$bL5$$$3$H$KCm0U$7$F$/$@(B +$B$5$$!#$3$NNc$r8+$F$/$@$5$$!#(B + +@lisp +(nntp "odd-one" + (nntp-address "ifi.uio.no") + (nntp-port-number 4324)) +@end lisp + +$B$3$3$G!"J*M}%5!<%P!$O(B @samp{ifi.uio.no} $B$G$"$k$N$KBP$7!"2>A[%5!<%P!<(B +$BL>$O(B @samp{odd-one} $B$G$9!#(B + +$B%P%C%/%(%s%I$OJ#?t$N2>A[%5!<%P!<$r@Z$jBX$(2DG=$G$J$1$l$P$J$j$^$;$s!#I8=`(B +$B$N%P%C%/%(%s%I$O$3$l$r!"2>A[%5!<%P!<4D6-$rI,MW$J$H$-$Ko$K3NG'$9$kG$0U4X?t(B @dfn{optional functions} $B$G$9!#(B + +$B$3$l$i$N4X?t$OA4$F!"JV5Q%G!<%?(B +$B$r(B @code{nntp-server-buffer} (@samp{*nntpd*}) $B%P%C%U%!!<$KJV$9$3$H$,5a$a(B +$B$i$l$^$9!#$3$l$O$A$g$C$HIT1?$JL>A0IU$1$G$9$,!"$3$l$G2fK}$7$J$1$l$P$J$j$^(B +$B$;$s!#;d$,7k2L$N%G!<%?(B @dfn{resulting data} $B$H8@$C$?$H$-$O!"$=$N%P%C%U%!!<(B +$B$NCf$N%G!<%?$r;X$7$F$$$^$9!#JV5QCM(B @dfn{return value} $B$H8@$C$?$H$-$O!"4X(B +$B?t8F$S=P$7$K$h$C$FJV$5$l$k4X?t$NCM$N$3$H$r8@$C$F$$$^$9!#4X?t$,<:GT$7$?$H(B +$B$-$OJV5QCM$H$7$F(B@code{nil} $B$rJV$5$J$/$F$O$$$1$^$;$s!#(B + +$B%P%C%/%(%s%I$K$O%5!<%P!<7A<0(B @dfn{server-forming} $B$N%P%C%/%(%s%I$G$"$k$H(B +$B8F$P$l$k$b$N$,$"$j!"$^$?$=$&8F$P$l$J$$$b$N$b$"$j$^$9!#8epJs$rG[Aw$9$k$b$N(B +$B$G!"$=$l0J>e$N$b$N$G$O$"$j$^$;$s!#(B + +Gnus $B$O%0%k!<%WL>$H5-;vHV9f$K$h$C$F$=$l$>$l$N%a%C%;!<%8$rFCDj$7$^$9!#$=(B +$B$l$i5-;vHV9f$K4X$9$k$A$g$C$H$7$?@bL@$r$9$k$3$H$OM-1W$+$b$7$l$^$;$s!#$^$:(B +$BBh0l$K!"$=$N?t;z$O@5$N@0?t$G$9!#BhFs$K!"(BGnus $B$r:.Mp$5$;$k$3$H$J$/8E$$5-(B +$B;vHV9f$r8e$G(B ``$B:F;HMQ(B'' $B$9$k$3$H$OIaDL$O$G$-$^$;$s!#$=$l$O!"$b$7$"$k%0%k!<(B +$B%W$,$+$D$F(B 42 $BHV$N5-;v$r;}$C$F$$$?$H$7$?$i!"$=$NHV9f$GB>$N5-;v$r;}$D$3$H(B +$B$O$G$-$J$$$+!"$^$?$O(B Gnus $B$,:.Mp$7$F$7$^$&$+$b$7$l$J$$$H$$$&$3$H$G$9!#(B +@footnote{See the function @code{nnchoke-request-update-info}, +@ref{Optional Back End Functions}$B!#(B} $BBh;0$K!"5-;vHV9f$O$=$N%0%k!<%W$G$N(B +$BE~Ce=g$K$J$C$F$$$J$1$l$P$J$i$J$$$3$H$G$9!#$H$O8@$(%a%C%;!<%8$NF|IU$bE~Ce(B +$B=g$G$"$kI,MW$O$"$j$^$;$s$,!#(B + +$B$9$G$KA0$N@a$G!"5-;vHV9f$O0l2s;H$o$l$?$@$1$GLrL\$r=*$o$i$J$1$l$P$J$i$J(B +$B$$(B ``$B87$7$$(B'' $B@)8B$K$D$$$F@bL@$7$^$7$?!#$7$+$7!"5-;vHV9f$NJB$S$KH4$1$,$"(B +$B$k$H(B Gnus $B$O$H$F$b:.Mp$7$F$7$^$&$N$G!"(B@emph{$BDL$7(B} $BHV9f$rIU$1$k$3$H$,M-MQ(B +$B$J$N$+$b$7$l$^$;$s!#$?$@$7(B ``$B:F;HMQIT2D(B'' $B$N@)8B$,$"$k$N$G!"$$$D$G$bHV9f(B +$B$NH4$1$r2sHr$G$-$k$H$O8B$j$^$;$s!#$^$?!"2DG=$J8B$j5-;vHV9f$r(B 1 $B$+$i;O$a(B +$B$k$3$H$O!"HV9f$r;H$$@Z$C$F$7$^$&$3$H$rHr$1$k$?$a$KLrN)$A$^$9!#(B + +$B47Nc$H$7$F!"%P%C%/%(%s%I$O(B @code{nn$B$J$s$?$i(B} $B$HL>IU$1$i$l$^$9$,!"(B +Gnus $B$K$O(B @file{nnheader.el}$B!"(B@file{nnmail.el} $B$*$h$S(B @file{nnoo.el} $B$N(B +$B$h$&$K!"$$$/$D$+$N%P%C%/%(%s%I$G$O$J$$(B @code{nn$B$+$s$?$i(B} $B$,$"$k$3$H$KCm(B +$B0U$7$F2<$5$$!#(B + +$B$3$3$G$NNc$HDj5A$G$O!"A[A|>e$N%P%C%/%(%s%I(B @code{nnchoke} $B$r0z$-9g$$$K=P(B +$B$9$3$H$K$7$^$9!#(B + +@cindex @code{nnchoke} + +@menu +* Required Back End Functions:: $BJ,$J%X%C(B +$B%@!<(B'' $B$ro!"(B@code{articles} $B$NCf$N:G>.HV9f(B +$B$N5-;v$h$j$b>.$5$$5-;v$+$i(B ($B>/$J$/$H$b(B) @var{fetch-old} $B8D$NM>J,$J%X%C%@!<(B +$B$r$&(B +$B$3$H$rHQ$o$7$$$H;W$C$?>l9g$K$O!"$3$N%Q%i%a!<%?$NB8:_$OL5;k$5$l$k$3$H$b$"(B +$B$j$^$9!#$3$NCM$,(B @code{nil} $B$G$b?t;z$G$b$J$1$l$P!":GBg8B$N +References: <38jdmq$4qu@@visbur.ifi.uio.no> +NNTP-Posting-Host: holmenkollen.ifi.uio.no +. +@end example + +$B$D$^$j!"JV5QCM$,(B @code{headers} $B$G$"$k$H$-$O!"%G!<%?%P%C%U%!$K$3$l$i%X%C(B +$B%@!<$,$$$/$D$+$"$k$H$$$&$3$H$r0UL#$7$^$9!#(B + +$B$3$l$,$=$N%P%C%U%!!<$N(B BNF $BDj5A$G$9!#(B + +@example +headers = *head +head = error / valid-head +error-message = [ "4" / "5" ] 2number " " eol +valid-head = valid-message *header "." eol +valid-message = "221 " " Article retrieved." eol +header = eol +@end example + +@cindex BNF +($B$3$3$G;H$C$?(B BNF $B$NHG$O(B RFC822 $B$G;H$o$l$F$$$k$b$N$G$9!#(B) + +$B$b$7JV5QCM$,(B @code{nov} $B$G$"$l$P!"%G!<%?%P%C%U%!!<$K(B +$B$O(B @dfn{network overview database} $B9T$,4^$^$l$F$J$/$F$O$J$j$^$;$s!#(B +$B$3$l$O4pK\E*$K$OJ#?t$NMs$r%?%V$G6h@Z$C$?$b$N$G$9!#(B + +@example +nov-buffer = *nov-line +nov-line = field 7*8[ field ] eol +field = +@end example + +$B$3$l$i$NMs$K$I$N$h$&$J$b$N$,4^$^$l$k$+$r$h$j>\$7$/8+$?$1$l$P!"(B +@ref{Headers} $B$r;2>H$7$F$/$@$5$$!#(B + +@item (nnchoke-open-server SERVER &optional DEFINITIONS) + +$B$3$3$G$N(B @var{server} $B$O2>A[%5!<%P!$G$9!#(B@var{definitions} $B$O(B +$B$3$N2>A[%5!<%P!<$rDj5A$9$k(B @code{(VARIABLE VALUE)} $BAH$N%j%9%H$G(B +$B$9!#(B + +$B$b$7%5!<%P!<$r3+$/$3$H$,$G$-$J$1$l$P!"%(%i!<$O%7%0%J%k$G$ODLCN$5(B +$B$l$^$;$s!#$=$7$F%P%C%/%(%s%I$O!"$=$l0J8e$N$3$N%5!<%P!<$X$N@\B3MW(B +$B5a$r5qH]$9$k$3$H$b$G$-$^$9!#o!"(BGnus $B$,=*N;$9$k$H$-$K$N$_8F$S=P$5$l$^$9!#(B + +$BJV$5$l$k7k2L$N%G!<%?$O$"$j$^$;$s!#(B + +@item (nnchoke-server-opened &optional SERVER) + +$B$b$7(B @var{server} $B$,8=:_$N2>A[%5!<%P!<$G!"$=$NJ*M}%5!<%P!<$X$N@\(B +$BB3$,@8$-$F$$$l$P!"$3$N4X?t$O(B @code{nil} $B0J30$NCM$rJV$7$^$9!#$3$N(B +$B4X?t$O$I$s$J>l9g$G$b!"@\B3$,<:$o$l$?%5!<%P!<$X$N:F@\B3$r9T$J$&$3(B +$B$H$O$"$j$^$;$s!#(B + +$BJV$5$l$k7k2L$N%G!<%?$O$"$j$^$;$s!#(B + +@item (nnchoke-status-message &optional SERVER) + +$B$3$N4X?t$O(B @var{server} $B$+$i$N:G8e$N%(%i!<%a%C%;!<%8$rJV5Q$7$^$9!#(B + +$BJV$5$l$k7k2L$N%G!<%?$O$"$j$^$;$s!#(B + +@item (nnchoke-request-article ARTICLE &optional GROUP SERVER TO-BUFFER) + +$B$3$N4X?t$N7k2L$N%G!<%?$O!"(B@var{article} $B$G;XDj$5$l$?5-;v$G$9!#$3$N;XDj(B +$B$O(B @code{Message-ID} $B$+HV9f$N$$$:$l$+$G$9!#(B@code{Message-ID} $B$K$h$k5-;v(B +$B$No$N%G!<%?%P%C(B +$B%U%!$NBe$o$j$K!"$3$N%P%C%U%!$KJV$5$l$^$9!#$3$l$K$h$jB?NL$N%G!<%?$r$"$k%P%C(B +$B%U%!$+$iJL$N%P%C%U%!$K%3%T!<$9$k$3$H$rHr$1$k$3$H$,$G$-!"$=$7$F(B Gnus $B$ODL(B +$B>o!"5-;v%P%C%U%!$KD>@\5-;v$rA^F~$9$k$h$&$KMW5a$7$F$$$^$9!#(B + +$B$b$72DG=$G$"$k$N$J$i!"$3$N4X?t$O!"(B@code{car}$B$,$G!"(B@code{cdr} $B$,5-;vHV9f$G$"$k(B cons $B%;%k$rJV$9$Y$-$G$9!#$3$l$K$h(B +$B$j(B @code{Message-ID} $B$K$h$C$F5-;v$rl9g$K$O!"5-(B +$B;v$NuBV$G!"$3$l$O(B 211 $B$G$J$/$F$O$J$j$^$;$s!#.$N5-;vHV9f!":GBg$N5-;vHV9f!"$=$7$F:G8e$,%0%k!<%WL>$G(B +$B$9!#5-;v$NAm?t$O!":GBg!&:G>.5-;vHV9f$+$iC1=c$K9M$($i$l$k?t$h$j$b>.$5$$$3(B +$B$H$,$"$k$3$H$KCm0U$7$F$/$@$5$$!#$$$/$D$+$N5-;v$OC$5$l$F$$$k$+$b$7$l(B +$B$^$;$s!#(BGnus $B$OAm?t$OC1$K.5-;vHV9f$O(B 1$B!":GBg(B +$B$O(B 0 $B$H$7$FJs9p$5$l$J$1$l$P$J$j$^$;$s!#(B + +@example +group-status = [ error / info ] eol +error = [ "4" / "5" ] 2 " " +info = "211 " 3* [ " " ] +@end example + +@item (nnchoke-close-group GROUP &optional SERVER) + +@var{group} $B$rJD$8!"$=$l$K@\B3$5$l$F$$$kA4$F$N;q8;$r3+J|$7$^$9!#$3$l$O$[(B +$B$H$s$I$N%P%C%/%(%s%I$G$O2?$b$9$k$3$H$,$J$$$G$7$g$&!#(B + +$BJV$5$l$k7k2L$N%G!<%?$O$"$j$^$;$s!#(B + +@item (nnchoke-request-list &optional SERVER) + +@var{server} $B>e$GMxMQ2DG=$JA4$F$N%0%k!<%W$N0lMw$rJV$7$^$9!#$3$l(B +$B$O(B @emph{$BA4It(B} $B$H$$$&0UL#$G$9!#(B + +$B$3$l$,!"$?$C$?Fs$D$7$+%0%k!<%W$r;}$C$F$$$J$$%5!<%P!<$+$i$NNc$G$9!#(B + +@example +ifi.test 0000002200 0000002000 y +ifi.discussion 3324 3300 n +@end example + +$B3F9T$K$O%0%k!<%WL>$,$"$j!"$=$7$F$=$N%0%k!<%WFb$N:GBg$N5-;vHV9f!":G>.$N5-(B +$B;vHV9f!"$=$7$F:G8e$K%U%i%0$G$9!#$b$7$=$N%0%k!<%W$K5-;v$,L5$1$l$P!":G>.5-(B +$B;vHV9f$O(B 1$B!":GBg$O(B 0 $B$H$7$FJs9p$5$l$J$1$l$P$J$j$^$;$s!#(B + +@example +active-file = *active-line +active-line = name " " " " " " flags eol +name = +flags = "n" / "y" / "m" / "x" / "j" / "=" name +@end example + +$B%U%i%0$O!"$=$N%0%k!<%W$,FI$_=P$7@lMQ(B (@samp{n}) $B$G$"$k$+!";J2q$N%0%k!<%W$NJL(B +$BL>(B (@samp{=other-group}) $B$G$"$k$+!">e5-$N$I$l$G$b$J$$(B (@samp{y}) $B$+!"$H(B +$B$$$&$3$H$r<($7$F$$$^$9!#(B + +@item (nnchoke-request-post &optional SERVER) + +$B$3$N4X?t$O!"8=:_$N%P%C%U%!$rEj9F$7$^$9!#$3$l$OEj9F$,@.8y$7$?$+$I$&$+$rJV(B +$B5Q$7$F$b9=$$$^$;$s$,!"I,?\$G$O$"$j$^$;$s!#Nc$($P!"Ej9F$,HsF14|$K9T$o$l$k(B +$B$N$G$"$l$P!"$3$N4X?t$,=*N;$7$?;~E@$G$OEj9F$OIaDL40N;$7$F$$$^$;$s!#$=$N>l(B +$B9g$3$N4X?t$O!"Ej9F$r40N;$5$;$k$3$H$,$G$-$J$$$H$-!"$=$l$r$O$C$-$j$HMxMQpJs(B (@pxref{Group Info}) $B$,JQ992U=j$H$7$F%P%C%/%(%s%I$KEO(B +$B$5$l$^$9!#$3$l$O%P%C%/%(%s%I$,(B ($B2>A[%0%k!<%W$d(B imap $B%0%k!<%W$N>l9g$N$h$&(B +$B$K(B) $BK\Ev$KA4$F$N>pJs$r;}$C$F$$$k>l9g$KJXMx$K$J$j$^$9!#$3$N4X?t$O!"$=$NMW(B +$B5a$KE,9g$5$;$k>pJs$rGK2uE*$KCV$-49$(!"(B@code{nil} $B$G$O$J$$CM$rJV$5$J$1$l(B +$B$P$J$j$^$;$s(B ($BNc30E*$K!"(B@code{nntp-request-update-info} $B$O%M%C%H%o!<%/;q(B +$B8;$rO2Hq$7$J$$$h$&$K!">o$K(B @code{nil} $B$rJV$7$^$9(B)$B!#(B + +$B$3$N4X?t$+$iJV$5$l$k7k2L$N%G!<%?$O$"$j$^$;$s!#(B + +@item (nnchoke-request-type GROUP &optional ARTICLE) + +$BMxMQJ}$H$b(B @code{nil} $B$G$"$k(B +$B$+$b$7$l$^$;$s!#(B + +$B$3$N4X?t$+$iJV$5$l$k7k2L$N%G!<%?$O$"$j$^$;$s!#(B + +@item (nnchoke-request-set-mark GROUP ACTION &optional SERVER) + +$B5-;v$N0u$r@_Dj(B/$B>C5n(B/$BDI2C$7$^$9!#IaDL$O(B Gnus $B$O5-;v$N0u(B ($B4{FI!"2D;k!";~8B(B +$B>C5n$J$I(B) $B$rFbIt$G07$$!"(B@file{~/.newsrc.eld} $B$KJ]B8$7$^$9!#$7$+$7!"%P%C(B +$B%/%(%s%I$K$O(B (@acronym{IMAP} $B$N$h$&$K(B) $B5-;v$NA4$F$N>pJs$r%5!<%P!<$K<}$a(B +$B$k$N$G!"(BGnus $B$O0u$N>pJs$r%5!<%P!<$KEAC#$7$J$1$l$P$J$i$J$$$b$N$,$"$j$^$9!#(B + +@var{action} $B$O$3$N$h$&$JMM<0$N0u@_Dj$NMW5a$N%j%9%H$G$9(B: + +@example +(RANGE ACTION MARK) +@end example + +@var{range} $B$O0u$rIU$1$?$$5-;v$NHO0O$G$9!#(B@var{action} $B$O(B @code{add} $B$^(B +$B$?$O(B @code{del} $B$G!"0u$rDI2C$7$?$j>C$7$^$9(B ($B8@5Z$5$l$F$$$J$$$9$Y$F$N0u$O(B +$BJ]B8$7$^$9(B)$B!"0u$N>C5n(B ($B8@5Z$5$l$F$$$J$$0u$OJ]B8$7$^$9(B) $B$G$9!#(B +@var{mark} $B$O0u$N%j%9%H$G$9!#$=$l$>$l$N0u$O%7%s%\%k$G$9!#8=:_;H$o$l$F$$(B +$B$k0u$O(B @code{read}, @code{tick}, @code{reply}, @code{expire}, +@code{killed}, @code{dormant}, @code{save}, @code{download}, +@code{unsend}, @code{forward} $B$*$h$S(B @code{recent} $B$G$9$,!"$b$72DG=$J$i!"(B +$B$"$J$?$N%P%C%/%(%s%I$O$3$l$i$K@)8B$r$9$k$Y$-$G$O$"$j$^$;$s!#(B + +$BL7=b$9$kF0:n$,;XDj$5$l$?$H$-!"%j%9%H$N:G8e$NF0:n$,8zNO$r;}$D$b$N$K$J$j$^(B +$B$9!#$9$J$o$A!"F0:n$K5-;v(B 1 $B$K(B @code{$B2D;k(B} $B0u$rDI2C$9$kMW5a$,$"$j!"%j%9%H(B +$B$N8e$GF1$85-;v$+$i0u$r>C5n$9$k$3$H$rMW5a$7$F$$$l$P!"0u$OC5n$5$l$k(B +$B$Y$-$G$9!#(B + +$BF0:n%j%9%H$NNc$G$9(B: + +@example +(((5 12 30) 'del '(tick)) + ((10 . 90) 'add '(read expire)) + ((92 94) 'del '(read))) +@end example + +$B4X?t$O0u$r@_Dj$G$-$J$+$C$?5-;v$NHO0O$rJV$9$Y$-$G$9(B ($B8=:_$OA4$/;H$o$l$F$$(B +$B$^$;$s(B)$B!#(B + +$B$3$N4X?t$+$i$O7k2L$N%G!<%?$O$"$j$^$;$s!#(B + +@item (nnchoke-request-update-mark GROUP ARTICLE MARK) + +$B$b$7MxMQ$N%4%_$rJV$7$F$O$$$1$^$;$s!#(B + +$B;d$,CN$C$F$$$k$3$l$N$3$l$NMxMQK!$O!"(B@code{nnvirtual} $B$,9T$J$C$F$$$k$3$H(B +$B$@$1$G$9(B --- $B$b$79=@.%0%k!<%W$,<+F04|8B@Z$l>C5n2DG=$G$"$l$P!"$3$N2>A[%0(B +$B%k!<%W$G4{FI$N0u$rIU$1$k$H!"7k2L$H$7$F$=$N5-;v$K4|8B@Z$l>C5n$N0u$,IU$1$i(B +$B$l$^$9!#(B + +$B$3$N4X?t$+$iJV$5$l$k7k2L$N%G!<%?$O$"$j$^$;$s!#(B + +@item (nnchoke-request-scan &optional GROUP SERVER) + +$B$3$N4X?t$O!"%P%C%/%(%s%I$,E~Ce5-;v$r3NG'$9$kMW5a$r9T$J$&$H$-$K$$$D$G(B +$B$b(B (Gnus $B$+$=$l0J30$K$h$C$F(B)$B!"$"$l$d$3$l$d$H8F$S=P$5$l$k$3$H$,$"$j$^$9!#(B +$B%a!<%k%P%C%/%(%s%I$O$3$N4X?t$,5/F0$5$l$?$H$-!"E57?E*$K$O%9%W!<%k%U%!%$%k(B +$B$rFI$`$+(B @acronym{POP} $B%5!<%P!<$KLd$$9g$o$;$K$$$-$^$9!#(B@var{group} $B$OFC(B +$B$K5$$KN1$a$kI,MW$O$"$j$^$;$s(B --- $B$b$7%P%C%/%(%s%I$,!"0l$D$@$1$N%0%k!<%W(B +$B$rAv::$9$k$N$OBgJQ$9$.$k$HH=CG$7$?>l9g$K$O!"A4%0%k!<%W$NA4Av::$r9T$J$C$F(B +$B$b9=$$$^$;$s!#$G$9$,!" description eol +name = +description = +@end example + +@item (nnchoke-request-list-newsgroups &optional SERVER) + +$B$3$N4X?t$K$h$C$FJV$5$l$k7k2L$N%G!<%?$O!"%5!<%P!<>e$GMxMQ$G$-$k%0(B +$B%k!<%WA4$F$N@bL@$G$9!#(B + +@example +description-buffer = *description-line +@end example + +@item (nnchoke-request-newgroups DATE &optional SERVER) + +$B$3$N4X?t$+$iJV$5$l$k7k2L$N%G!<%?$O!"(B@samp{date} $B0J9_$K:n@.$5$l$?A4$F$N%0(B +$B%k!<%W$G$9!#(B@samp{date} $B$ODL>o$N?M4V$,FI$a$kF|IU$N7A<0(B ($B$9$J$o$A!"%a!<%k(B +$B$d%K%e!<%9$N%X%C%@!<$G;H$o$l$k7A<0$G!"%G%#%U%)%k%H$G$O4X(B +$B?t(B @code{message-make-date} $B$+$iJV$5$l$?$b$N(B) $B$G$9!#%G!<%?$O(B active $B%P%C(B +$B%U%!$N7A<0$G$J$1$l$P$J$j$^$;$s!#(B + +$B$3$N4X?t$,(B ``$BB?$9$.$k(B'' $B%0%k!<%W$rJV$7$F$b%*!<%1%$$G$9!#$$$/$D$+$N%P%C%/(B +$B%(%s%I$O?7$7$$%0%k!<%W$r8+$D$1$k$h$j$b!"3Z$r$7$FA4$F$N%0%k!<%W$N%j%9%H$r(B +$BJV$9$+$b$7$l$^$;$s!#$7$+$7%P%C%/%(%s%I$,JV$9B?$/$N%0%k!<%W$KBP$7$F$3(B +$B$l(B ($BLuCm(B: $B?7$7$$%0%k!<%W$H$7$F07$&$3$H(B) $B$r$7$F$O$$$1$^$;$s!#IaDL!"%f!<%6!<(B +$B<+?H$,:n$C$?%0%k!<%W$J$i$PB?$9$.$k$3$H$O$J$$$G$7$g$&!#$G$9$+(B +$B$i(B @code{nnml} $B$H$=$l$KN`$9$k$b$N$O$?$V$s?4G[$"$j$^$;$s!#$7$+(B +$B$7(B @code{nntp} $B$N$h$&$J%P%C%/%(%s%I$G$O%0%k!<%W$O%5!<%P!<$K$h$C$F:n$i$l(B +$B$F$$$^$9$+$i!"B?$/$N%0%k!<%W$,JV$C$F$/$k$3$H$,$"$j$($^$9!#(B + +@item (nnchoke-request-create-group GROUP &optional SERVER) + +$B$3$N4X?t$O!"(B@var{group} $B$H$$$&L>A0$N6u$N%0%k!<%W$r:n@.$7$^$9!#(B + +$BJV$5$l$k7k2L$N%G!<%?$O$"$j$^$;$s!#(B + +@item (nnchoke-request-expire-articles ARTICLES &optional GROUP SERVER FORCE) + +$B$3$N4X?t$O!"(B@var{articles} $B$NHO0O$NA4$F$N5-;v$KBP$7$F4|8B@Z$l>C5n=hM}$r(B +$B9T$J$$$^$9!#(B(@var{articles} $B$O8=:_$O5-;vHV9f$NC1=c$J%j%9%H$G$9!#(B) $B$3$N(B +$B4X?t$G>C5n$5$l$kA0$N!"5-;v$,$I$l$@$18E$$5-;v$G$"$k$+$N7hDj$O%P%C%/%(%s%I(B +$B$KG$$5$l$F$$$^$9!#(B@var{force} $B$,(B @code{nil} $B0J30$G$"$l$P!"$=$l$,$I$s$J$K(B +$B?7$7$$$b$N$G$"$C$F$b!"A4$F$N(B@var{articles} $B$,>C5n$5$l$^$9!#(B + +$B$3$N4X?t$O:o=|$7$J$+$C$?!"$"$k$$$O:o=|$9$k$3$H$,$G$-$J$+$C$?5-;v$N%j%9%H(B +$B$rJV$7$^$9!#(B + +$BJV$5$l$k7k2L$N%G!<%?$O$"$j$^$;$s!#(B + +@item (nnchoke-request-move-article ARTICLE GROUP SERVER ACCEPT-FORM &optional LAST) + +$B$3$N4X?t$O(B @var{article} ($BHV9f(B) $B$r!"(B@var{group} $B$+(B +$B$i(B @var{accept-form} $B$r8F$S=P$7$F0\F0$7$^$9!#(B + +$B$3$N4X?t$O!"LdBj$N5-;v$r0\F0$5$;$k$?$a$N=`Hw$H$7$F!"5-;v$KIU2C$5$l$?%X%C(B +$B%@!<9T$rA4$F:o=|$7!"0lHL$K5-;v$r!V$-$l$$$5$C$Q$j!W$K$7$^$9!#$=$7$F(B ``$B$-(B +$B$l$$$J(B'' $B5-;v$N$"$k%P%C%U%!!<$G(B @var{accept-form} $B$r(B @code{eval} $B$7$^$9!#(B +$B$3$l$OK\Ev$KJ#@=$r9T$J$$$^$9!#$b$7(B @code{eval} $B$,(B @code{nil} $B0J30$NCM$r(B +$BJV$7$?$i!"$=$N5-;v$O:o=|$5$l$^$;$s!#(B + +@var{last} $B$,(B @code{nil} $B$G$"$l$P!"$3$ND>8e$K$5$i$KMW5a$,H/9T$5$l$k8+9~(B +$B$_$,9b$$!"$H$$$&0UL#$K$J$j!"$3$l$K$h$C$F:GE,2=$,$$$/$i$+$G$-$k$h$&$K$J$j(B +$B$^$9!#(B + +$B$3$N4X?t$O!"%0%k!<%WL>$,(B @code{car} $B$G!"$=$N5-;v$N0\F0@h$N5-;vHV9f$,(B +@code{cdr} $B$G$"$k(B cons $B%;%k$rJV$7$^$9!#(B + +$B$=$N%0%k!<%W$O!"%P%C%/%(%s%I$,$=$N%0%k!<%W$X$N5-;v$N<}G<$rMW5a$9$kA0$KB8(B +$B:_$7$J$1$l$^$J$j$^$;$s!#(B + +$BJV$5$l$k7k2L$N%G!<%?$O$"$j$^$;$s!#(B + +@item (nnchoke-request-accept-article GROUP &optional SERVER LAST) + +$B$3$N4X?t$O!"8=:_$N%P%C%U%!$r$A$K(B +$B9T$o$l$k$H$$$&0UL#$G$9!#(B + +$B$3$N4X?t$O%0%k!<%WL>$,(B @code{car} $B$G!"$=$N5-;v$N0\F0@h$N5-;vHV9f$,(B +@code{cdr} $B$G$"$k(B cons $B%;%k$rJV$7$^$9!#(B + +$BJV$5$l$k7k2L$N%G!<%?$O$"$j$^$;$s!#(B + +@item (nnchoke-request-replace-article ARTICLE GROUP BUFFER) + +$B$3$N4X?t$O(B @var{article} ($BHV9f(B) $B$r(B @var{group} $B$+$i:o=|$7!"Be$o$j$K(B +@var{buffer} $B$r$=$3$KA^F~$7$^$9!#(B + +$BJV$5$l$k7k2L$N%G!<%?$O$"$j$^$;$s!#(B + +@item (nnchoke-request-delete-group GROUP FORCE &optional SERVER) + +$B$3$N4X?t$O(B @var{group} $B$r>C5n$7$^$9!#$b$7(B @var{force} $B$,$"$l$P!"$=$N%0(B +$B%k!<%WFb$NA4$F$N5-;v$rK\Ev$K>C5n$7!"$=$7$F$=$N%0%k!<%W<+?H$r>C5n$7$^$9!#(B +($B$b$7(B ``$B%0%k!<%W<+?H(B'' $B$H$$$&$b$N$,$"$l$P!#(B) + +$BJV$5$l$k7k2L$N%G!<%?$O$"$j$^$;$s!#(B + +@item (nnchoke-request-rename-group GROUP NEW-NAME &optional SERVER) + +$B$3$N4X?t$O(B @var{group} $B$+$i(B @var{new-name} $B$KL>A0$rJQ99$7$^$9!#(B +@var{group} $BFb$K$"$k5-;v$OA4$F(B @var{new-name} $B$K0\F0$7$^$9!#(B + +$BJV$5$l$k7k2L$N%G!<%?$O$"$j$^$;$s!#(B +@end table + +@node Error Messaging +@subsubsection $B%(%i!<%a%C%;!<%8I=<((B + +@findex nnheader-report +@findex nnheader-get-report +$B%P%C%/%(%s%I$O%(%i!<>u67$rJs9p$9$k$N$K(B @code{nnheader-report} $B$r;H$o$J$/(B +$B$F$O$J$j$^$;$s(B --- $BMW5a$r$N%7%s%\%k$G!";D$j$O!"J#?t$N0z?t(B +$B$,$"$l$P(B @code{format} $B$X$N0z?t$H$7$F2ro$K(B@code{nil} $B$rJV$5$J$/$F$O$J$j$^$;$s!#(B + +@lisp +(nnheader-report 'nnchoke "You did something totally bogus") + +(nnheader-report 'nnchoke "Could not request group %s" group) +@end lisp + +$B0lJ}(B Gnus $B$O!"%5!<%P!<$+$i(B @code{nil} $B$rJV$5$l$?$H$-(B +$B$K(B @code{nnheader-get-report} $B$r8F$S=P$7!"$=$7$F$3$N4X?t$,LdBj$N%P%C%/%((B +$B%s%I$KBP$7$F:G8e$KJs9p$5$l$?%a%C%;!<%8$rJV$7$^$9!#$3$N4X?t$O0l$D$N0z(B +$B?t(B --- $B%5!<%P!<$N%7%s%\%k$re$N5-;v$rJT(B +$B=8$9$k$3$H$,$G$-$^$9!#(B@code{nnmh} $B$O(B @code{nnml} $B$K$H$F$b;w$F$$$^$9$,!"(B +$B$3$l$O%"%/%F%#%V%U%!%$%k$r;H$o$:!"35MW%G!<%?%Y!<%9$bJ];}$7$^$;$s!#(B +@code{nndir} $B$O(B @code{nnml} $B$K$H$F$b;w$F$$$^$9$,!"$3$l$K(B +$B$O(B ``$B%0%k!<%W(B'' $B$N35G0$O$J$/!"5-;v$N=$@5$O$G$-$^$;$s!#(B + +$B?7$7$$%P%C%/%(%s%I$r=q$/$H$-$KB>$N%P%C%/%(%s%I$+$i4X?t$r(B ``$B7Q>5(B'' $B$9$k$3(B +$B$H$,2DG=$G$"$C$F$[$7$$!"$H;W$&$N$OM}$KE,$C$F$$$^$9!#$=$7$F$^$5$K!"$"$J$?(B +$B$,$=$&$7$?$1$l$P!"$=$l$,$G$-$k$N$G$9!#(B($B$"$J$?$,$=$&$7$?$/$J$1$l$P$7$J$/(B +$B$F$bNI$$$G$9$h!"$b$A$m$s!#(B) + +$BA4$F$N%P%C%/%(%s%I$O8x3+JQ?t$H8x3+4X?t$r!"(B@code{nnoo} $B$H8F$P$l$k%Q%C%1!<(B +$B%8$r;H$C$F@k8@$7$^$9!#(B + +$BB>$N%P%C%/%(%s%I$+$i4X?t$r7Q>5$9$k$K$O(B ($B$=$7$F8=:_$N%P%C%/%(%s%I$+$iB>$N(B +$B%P%C%/%(%s%I$K4X?t$r7Q>5$G$-$k$h$&$K$9$k$K$O(B)$B!"0J2<$N%^%/%m$r;HMQ$7$J$1(B +$B$l$P$J$j$^$;$s!#(B + +@table @code +@item nnoo-declare +$B$3$N%^%/%m$O!":G=i$N0z?t$r!"$=$N8e$KB3$/0z?t$N;R6!$G$"$k$3$H$r@k8@$7$^$9!#(B +$BNc$($P!"(B + +@lisp +(nnoo-declare nndir + nnml nnmh) +@end lisp + +$B$3$l$G(B @code{nndir}$B$O!"(B@code{nnml} $B$H(B @code{nnmh} $B$NN>J}$+$i4X?t$r7Q>5$7(B +$B$h$&$H$7$F$$$k$3$H$r@k8@$7$^$9!#(B + +@item defvoo +$B$3$N%^%/%m$O(B @code{defvar} $B$HF15A$G$9$,!"$=$NJQ?t$r8x3+%5!<%P!uBV;X8~7?$NJQ?t$O(B @code{defvar} $B$G$O$J(B +$B$/(B @code{defvoo} $B$K$h$C$F@k8@$9$k$Y$-$G$9!#(B + +$BDL>o$N(B @code{defvar} $B0z?t$K2C$($F!"$3$N%^%/%m$O?F%P%C%/%(%s%I$NJQ?t$N%j(B +$B%9%H$ro$N(B @code{defun} $B=hM}$K2C$($F!"$3$N%^%/%m$O$=$N4X?t$r8x3+$7$F$$$k$b$N$H(B +$B$7$FEPO?$7!"B>$N%P%C%/%(%s%I$,$=$l$r7Q>5$G$-$k$h$&$K$7$^$9!#(B + +@item nnoo-map-functions +$B$3$N%^%/%m$O8=:_$N%P%C%/%(%s%I$N4X?t$+$i?F%P%C%/%(%s%I$N4X?t$X$NCV$-49$((B +$B$r9T$J$($k$h$&$K$7$^$9!#(B + +@lisp +(nnoo-map-functions nndir + (nnml-retrieve-headers 0 nndir-current-group 0 0) + (nnmh-request-article 0 nndir-current-group 0 0)) +@end lisp + +$B$3$l$O(B @code{nndir-retrieve-headers} $B$,8F$S=P$5$l$?$H$-!"0lHVL\!";0HVL\!"(B +$B;MHVL\$N0z?t$,(B @code{nnml-retrieve-headers} $B$KEO$5$l!"0lJ}!"FsHVL\$N0z?t(B +$B$O(B @code{nndir-current-group} $B$NCM$H$7$F@_Dj$5$l$k!"$H$$$&0UL#$G$9!#(B + +@item nnoo-import +$B$3$N%^%/%m$OB>$N%P%C%/%(%s%I$+$i4X?t$r(B +$BA0$HE,Ev$J?t$NG=NO(B @dfn{abilities} $B$G$9!#(B + +$B$3$l$,Nc$G$9!#(B + +@lisp +(gnus-declare-backend "nnchoke" 'mail 'respool 'address) +@end lisp + +$B$=$7$F>e5-$N9T$O(B @file{nnchoke.el} $B%U%!%$%k$KF~$l$^$9!#(B + +$BG=NO$K$O0J2<$N$b$N$,$"$j$^$9!#(B + +@table @code +@item mail +$B$3$l$O%a!<%kIw%P%C%/%(%s%I$G$9(B --- $B%U%)%m!<%"%C%W$O(B ($B$?$$$F$$$O(B) $B%a!<%k(B +$B$GAw$i$l$^$9!#(B +@item post +$B$3$l$O%K%e!<%9Iw%P%C%/%(%s%I$G$9(B --- $B%U%)%m!<%"%C%W$O(B ($B$?$$$F$$$O(B) $B%K%e!<(B +$B%9$GAw$i$l$^$9!#(B +@item post-mail +$B$3$N%P%C%/%(%s%I$O%a!<%k$H%K%e!<%9$NN>J}$r%5%]!<%H$7$^$9!#(B +@item none +$B$3$l$O%K%e!<%9$G$b%a!<%k$G$b$J$$%P%C%/%(%s%I$G$9(B --- $BA4$/0c$C$?2?$+$G$9!#(B +@item respool +$B$3$l$O:F%9%W!<%k$r%5%]!<%H$7$^$9(B --- $B$H$$$&$h$j$O!"$=$N85$N5-;v$H%0%k!<(B +$B%W$r=$@5$9$k$3$H$,$G$-$^$9!#(B +@item address +$B2>A[%5!<%P!$NCf$K%5!<%P!<$NL>A0$,4^$^$k$H$$$&$3$H$G$9!#$3$l$O$[$H$s$I(B +$BA4It$N%P%C%/%(%s%I$GI,MW$K$J$j$^$9!#(B +@item prompt-address +$B%0%k!<%W%P%C%U%!$G(B @kbd{B} $B$J$I$G$3$NL?Na$r$N%P%C%/%(%s%I$KBP$7$F0l@~$r2h$7$F$$$kE@$O!"$[(B +$B$H$s$I$N%a!<%k%P%C%/%(%s%I$O(B @file{nnmail.el} $B$NCf$N6&DL4X?t$K6/$/0MB8$7(B +$B$F$$$k$H$$$&E@$G$9!#Nc$($P!"(B@code{nnml-request-scan} $B$NDj5A$O$3$N$h$&$K(B +$B$J$j$^$9!#(B + +@lisp +(deffoo nnml-request-scan (&optional group server) + (setq nnml-article-file-alist nil) + (nnmail-get-new-mail 'nnml 'nnml-save-nov nnml-directory group)) +@end lisp + +$BC1$K(B @code{nnmail-get-new-mail} $B$K$$$/$D$+0z?t$rM?$($F8F$S=P$9$@$1$G!"(B +@code{nnmail} $B$,%a!<%k$N0\F0$dJ,N%$rA4$F$NLLE]$r8+$F$/$l$^$9!#(B + +$B$3$N4X?t$O;M$D$N0z?t$rl=j$G$9!#(B + +@item group +$B$3$N>JN,2DG=$J0z?t$O!"J,N%$,0l$D$N%0%k!<%W$KBP$7$F$N$_$G$9!#(B +@end table + +@code{nnmail-get-new-mail} $B$O3F5-;v$rJ]B8$9$k$?$a(B +$B$K(B @var{back-end}@code{-save-mail} $B$r8F$S=P$7$^$9!#(B +@var{back-end}@code{-active-number} $B$O$3$N5-;v$K3d$jEv$F$i$l$?5-;vHV9f$r(B +$BD4$Y$k$?$a$K8F$S=P$5$l$^$9!#(B + +$B$3$N4X?t$Oo$K=@Fp$J$h$&$K0U?^$5$l$F$$$^(B +$B$9!#$=$l$K$O(B Emacs Lisp $B$N%j%9%H$HF1$8FI$_9~$_9=J8$JMM$J$b$N$,$=$N;XDj$K(B +$B9g$&$@$m$&$H$$$&;v$,7hDj$5$l$^$7$?!#(B + +$B$3$l$ONI$/$"$k%9%3%"%U%!%$%k$G$9(B: + +@lisp +(("summary" + ("win95" -10000 nil s) + ("Gnus")) + ("from" + ("Lars" -1000)) + (mark -100)) +@end lisp + +$B%9%3%"%U%!%$%k$N(B BNF $BDj5A$G$9!#(B + +@example +score-file = "" / "(" *element ")" +element = rule / atom +rule = string-rule / number-rule / date-rule +string-rule = "(" quote string-header quote space *string-match ")" +number-rule = "(" quote number-header quote space *number-match ")" +date-rule = "(" quote date-header quote space *date-match ")" +quote = +string-header = "subject" / "from" / "references" / "message-id" / + "xref" / "body" / "head" / "all" / "followup" +number-header = "lines" / "chars" +date-header = "date" +string-match = "(" quote quote [ "" / [ space score [ "" / + space date [ "" / [ space string-match-t ] ] ] ] ] ")" +score = "nil" / +date = "nil" / +string-match-t = "nil" / "s" / "substring" / "S" / "Substring" / + "r" / "regex" / "R" / "Regex" / + "e" / "exact" / "E" / "Exact" / + "f" / "fuzzy" / "F" / "Fuzzy" +number-match = "(" [ "" / [ space score [ "" / + space date [ "" / [ space number-match-t ] ] ] ] ] ")" +number-match-t = "nil" / "=" / "<" / ">" / ">=" / "<=" +date-match = "(" quote quote [ "" / [ space score [ "" / + space date [ "" / [ space date-match-t ] ] ] ] ")" +date-match-t = "nil" / "at" / "before" / "after" +atom = "(" [ required-atom / optional-atom ] ")" +required-atom = mark / expunge / mark-and-expunge / files / + exclude-files / read-only / touched +optional-atom = adapt / local / eval +mark = "mark" space nil-or-number +nil-or-number = "nil" / +expunge = "expunge" space nil-or-number +mark-and-expunge = "mark-and-expunge" space nil-or-number +files = "files" *[ space ] +exclude-files = "exclude-files" *[ space ] +read-only = "read-only" [ space "nil" / space "t" ] +adapt = "adapt" [ space "ignore" / space "t" / space adapt-rule ] +adapt-rule = "(" *[ *[ "(" ")" ] ")" +local = "local" *[ space "(" space
")" ] +eval = "eval" space +space = *[ " " / / ] +@end example + +$B%9%3%"%U%!%$%k$NG'<1IT2DG=$JMWAG$OL5;k$5$l$k$Y$-$G$9$,!"o$KIiC4$N$+$1$i$l$9$.$?8l$G$9!#(B +``$B%X%C%@!<(B'' $B$O(B RFC1036 $B$G$O5-;v$NF,$N9T$N;v(B ($BNc$($P!"(B@code{From}) $B$rOC(B +$B$9$N$KMQ$$$i$l$F$$$^$9!#$=$l$OB?$/$N?M$+(B +$B$i(B ``$B%X%C%I(B''---``$B%X%C%@!<$HK\BN(B'' $B$NF15A8l$H$7$F;H$o$l$F$$$^$9!#(B($B$3$l(B +$B$O!";d$N0U8+$G$OHr$1$i$l$k$Y$-$G$9!#(B) $B$=$7$F!"(BGnus $B$OFbIt$G(B +$B$O(B ``$B%X%C%@!<(B'' $B$H8F$VMM<0$r;H$C$F$*$j!";d$O$3$3$G$=$l$K$D$$$F@bL@$7$^$9!#(B +$B$3$l$O6e$D$NMWAG$+$i$J$k%Y%/%H%k$G!"4pK\E*$K!"$=$l$>$l$N%X%C(B +$B%@!<(B ($B$"DK(B) $B$,0l$D$N6u$->l=j$r@j$a$F$$$^$9!#(B + +$B$3$l$i$N6u$->l=j$O!"=gHV$K(B: @code{number}, @code{subject}, @code{from}, +@code{date}, @code{id}, @code{chars}, @code{lines}, @code{xref}, +@code{extra} $B$G$9!#$3$l$i$N6u$->l=j$K?($C$F@_Dj$9$k%^%/%m$,$"$j$^(B +$B$9(B --- $B$=$l$i$OA4$F!"$=$l$>(B +$B$l(B @code{mail-header-} $B$H(B @code{mail-header-set-} $B$$$&M=A[$5$l$kL>A0$r;}$C(B +$B$F$$$^$9!#(B + +@code{extra} $B$N>l=j$O%X%C%@!<(B/$BCM$NBP$NO"A[%j%9%H$G$"$k0J30$O$3$l$i$NA4$F(B +$B$N>l=j$OJ8;zNs$G$9(B (@pxref{To From Newsgroups})$B!#(B + +@node Ranges +@subsection $BHO0O(B + +@sc{gnus} $B$O;d$K$OHs>o$KLr$KN)$D$H;W$o$l$k35G0$rF3F~$7$^$7$?$N$G!";d$O$=(B +$B$l$r$?$/$5$s;H$$!"$+$J$jG0F~$j$K:n$j>e$2$F$-$^$7$?!#(B + +$BZ$5$l$k(B $B$b(B +$B$N(B (object) (@emph{$BMpK=$J(B} $BNc$r5s$2$k$H!"5-;v$,$=$&$G(B +$B$9(B) $B$r(B ``$B4^$^$l$F$$$k(B'' $B$H$7$F8+$J$7$?$$$H$-$O!"IaDL$NO"B3E*9T0Y$O$"$^$j(B +$BLr$KN)$A$^$;$s!#(B($BD9$5(B 200,000 $B$NO"B3J*$O>/$7B)$,D9$9$.$^$9!#(B) + +$B$3$l$N2r7h:v$O/$7e$NMW5a$O2<9_$7$F$$$J$$(B +$B$H$$$&;v$O3P$($F$*$/I,MW$,$"$j$^$9!#(B($BG$0U$N2s?t$NF1$8?t;z$N7+$jJV$7$O5v(B +$B$5$l$F$$$^$9$,!"HO0O$N07$$$+$i$O>C$(5n$k798~$,$"$j$^$9!#(B) + +@example +range = simple-range / normal-range +simple-range = "(" number " . " number ")" +normal-range = "(" start-contents ")" +contents = "" / simple-range *[ " " contents ] / + number *[ " " contents ] +@end example + +Gnus $B$O8=:_$N$H$3$m4{FI5-;v$H5-;v$N0u$N>pJs$rIU$1$F$*$/$?$a$KHO0O$r;H$C(B +$B$F$$$^$9!#;d$O(B $B$5$J$$$G@$$NCf$r40A4$KHO0O$K4p$E$$$?$b$N$K$9$k(B +$B$?$a$K$b$&>/$79M$($kI,MW$,$"$k$+$i$G$9!#(B) + +@node Group Info +@subsection $B%0%k!<%W>pJs(B + +Gnus $B$O%0%k!<%W$NA4$F$N1JB3>pJs$r(B @dfn{group info} $B%j%9%H$KJ]B8$7$^$9!#(B +$B$3$N%j%9%H$ND9$5$O(B 3 $B$+$i(B 6 ($B$b$7$/$O$b$C$H(B) $B$NMWAG$GE0DlE*$K%0%k!<%W$r(B +$B5-=R$7$^$9!#(B + +$B$3$3$K$"$k$N$O%0%k!<%W>pJs(B (group info) $B$NFs$D$NNc$G$9!#0l$D$OHs>o$KC1=c(B +$B$J%0%k!<%W$G!"Fs$D$a$O$b$C$HJ#;($J$b$N$G$9(B: + +@example +("no.group" 5 ((1 . 54324))) + +("nnml:my.mail" 3 ((1 . 5) 9 (20 . 55)) + ((tick (15 . 19)) (replied 3 6 (19 . 3))) + (nnml "") + ((auto-expire . t) (to-address . "ding@@gnus.org"))) +@end example + +$B:G=i$NMWAG$O(B @dfn{$B%0%k!<%WL>(B} $B$G$9(B---$B$I$N$h$&$K$7$m!"(BGnus $B$,$=$l$K$h$C$F(B +$B%0%k!<%W$rCN$C$F$$$k$b$N$G$9!#FsHVL\$NMWAG$O(B @dfn{$B9XFIEY(B} $B$G!"IaDL$O>.$5(B +$B$J@0?t$G$9!#(B($B$=$l$O(B @dfn{$B3,5i(B} $B$K$J$k;v$b$G$-$^$9!#$=$l$O!"%3%s%9%;%k$G!"(B +@code{car} $B$,%l%Y%k$G!"(B@code{cdr} $B$,%9%3%"$G$9!#(B) $B;0HVL\$NMWAG$O4{FI5-;v(B +$B$NHO0O$N%j%9%H$G$9!#;MHVL\$NMWAG$O$$$m$$$m$Je$N%5!<%P!<$G$9(B)$B!#O;HVL\$NMWAG$O(B @dfn{$B%0%k!<%W%Q%i%a!<%?(B} $B$N%j%9%H(B +$B$G!"$3$NItJ,$O$=$N$?$a$K$"$j$^$9!#(B + +$B:G8e$N;0$D$NMWAG$O$I$l$G$b!"I,MW$,L5$1$l$PB8:_$7$J$$;v$b$"$j$^$9!#o$KBgItJ,$O:G=i$N;0$D$NMWAG$@$1$r;}$A!"$=$l$O$?$/$5$s$N%3%s(B +$B%9%;%k$r@aLs$9$k;v$,$G$-$^$9!#(B + +$B$3$l$O%0%k!<%W>pJsMM<0$N(B BNF $BDj5A$G$9(B: + +@example +info = "(" group space ralevel space read + [ "" / [ space marks-list [ "" / [ space method [ "" / + space parameters ] ] ] ] ] ")" +group = quote quote +ralevel = rank / level +level = +rank = "(" level "." score ")" +score = +read = range +marks-lists = nil / "(" *marks ")" +marks = "(" range ")" +method = "(" *elisp-forms ")" +parameters = "(" *elisp-forms ")" +@end example + +$B} $B$,(B @samp{range} $B$N>e$K9=@.$5$l$F$$$k$b$N(B +$B$G$9$,!"5?;w(B BNF $B$G$=$l$r8=$9$N$OITL{2w$J$b$N$G$9!#(B + +$B$b$7(B Gnus $B>pJs$r;}$C$F$$$F!"MWAG$rD4$Y$?$$$N$H$-$O!"(BGnus $B$O$=$l$i$NMWAG(B +$B$r$rpJs$N%j%9%H$G$9!#@_Dj4X?t$OFs$D(B +$B$N0z?t$rpJs%j%9%H$H?7$7$$CM$G$9!#(B + +$B%0%k!<%W>pJs$N:G8e$N;0$D$NMWAG$O6/@)E*$J$b$N$G$O$"$j$^$;$s$N$G!"MWAG$r@_(B +$BDj$9$kA0$K%0%k!<%W>pJs$r3HD%$9$kI,MW$,$"$k$+$bCN$l$^$;$s!#$b$7$3$l$,I,MW(B +$B$J>l9g$O!"$3$l$,<+F0E*$K5/$3$k$?$a$K(B @code{nil} $B$G$J$$;0HVL\$N0z?t$r;0$D(B +$B$N:G=*@_Dj4X?t$KM?$($k$@$1$G$9!#(B + +@node Extended Interactive +@subsection $B3HD%BPOC(B +@cindex interactive +@findex gnus-interactive + +Gnus $B$O(B Emacs $B$NI8=`$N(B @code{interactive} $B;XDj$r%7%s%\%k@\F,<-$r4JC1$K;H(B +$B$($k$?$a$K>/$73HD%$7$F$$$^$9(B (@pxref{Symbolic Prefixes})$B!#$3$l$O$=$N;H$$(B +$BJ}$NNc$G$9(B: + +@lisp +(defun gnus-summary-increase-score (&optional score symp) + (interactive (gnus-interactive "P\ny")) + ... + ) +@end lisp + +$B:G>e$NJ}K!$O(B @code{gnus-interactive} $B$r<0(B @code{interactive} $B$rJV$9%^%/(B +$B%m$H$7$F/$72C$($^$9!#(B + +@table @samp +@item y +@vindex gnus-current-prefix-symbol +$B8=:_$N@\F,0z?t%7%s%\%k(B---$BJQ?t(B @code{gnus-current-prefix-symbol} $B$G$9!#(B + +@item Y +@vindex gnus-current-prefix-symbols +$B8=:_$N@\F,0z?t%7%s%\%k$N%j%9%H$G$9(B---$BJQ(B +$B?t(B @code{gnus-current-prefix-symbol} $B$G$9!#(B + +@item A +$B8=:_$N5-;vHV9f$G$9(B---$B4X?t(B @code{gnus-summary-article-number} $B$G$9!#(B + +@item H +$B8=:_$N5-;v%X%C%@!<$G$9(B---$B4X?t(B @code{gnus-summary-article-header} $B$G$9!#(B + +@item g +$B8=:_$N%0%k!<%WL>$G$9(B---$B4X?t(B @code{gnus-group-group-name} $B$G$9!#(B +@end table + +@node Emacs/XEmacs Code +@subsection Emacs/XEmacs $B%3!<%I(B +@cindex XEmacs +@cindex Emacsen + +Gnus $B$O(B Emacs, XEmacs $B$H(B Mule $B$GF0:n$7$^$9$N$G!"$=$N$&$A$N0l$D$ro$KLr$KN)$A$^$9!#(B + +$B;d$O7QB3E*$K(B Emacs $B$N4X?t$N3&LL(B (interface) $B$r;H$C$F$-$^$7$?$,!"4X?t$K(B +$B$O(B Gnus $B$NJLL>4X?t(B (alias) $B$r;H$C$F$-$^$7$?!#Nc$r=P$7$^$7$g$&(B: Emacs $B$O(B +$B4X?t(B @code{run-at-time} $B$rDj5A$7$F$$$^$9$,!"(BXEmacs $B$O4X(B +$B?t(B @code{start-itimer} $B$rDj5A$7$F$$$^$9!#$=$3$G;d(B +$B$O(B @code{gnus-run-at-time} $B$H8F$P$l$k4X?t$rDj5A$7!"$=$l(B +$B$O(B Emacs $B$N(B @code{run-at-time} $B$HF1$80z?t$r4X?t(B (alias) $B$K$J$C$F$$$^(B +$B$9!#$7$+$7!"(BXEmacs $B$G4X?t(B (alias) $B$H(B +$B$J$C$F$$$^$9(B: + +@lisp +(defun gnus-xmas-run-at-time (time repeat function &rest args) + (start-itimer + "gnus-run-at-time" + `(lambda () + (,function ,@@args)) + time repeat)) +@end lisp + +$B$3$Nl9g$O!";d$OBe$o$j$K$=$l$r;H$$$^(B +$B$9!#Nc$($P!"(B@code{gnus-region-active-p} $B$O(B XEmacs $B$G(B +$B$O(B @code{region-active-p} $B$NJLL>$G$"$k$N$KBP$7$F!"(BEmacs $B$G$O4X?t$G$9!#(B + +$B$b$A$m$s!";d$O(B XEmacs $B$r;d$N4pK\%W%i%C%H%U%)!<%`$KA*$s$G!"4X?t$N3d$jEv$F(B +$B$r5U$K$9$k;v$b$G$-$^$7$?!#$G$b!";d$O$=$&$7$^$;$s$G$7$?!#(B +XEmacs $B$G(B Gnus $B$r/$7$G(B +$B$7$g$&!#(B + +@node Various File Formats +@subsection $B$$$m$$$m$J%U%!%$%kMM<0(B + +@menu +* Active File Format:: $B;HMQ2DG=$J5-;v%0%k!<%W$N>pJs(B +* Newsgroups File Format:: $B%0%k!<%W$N5-=R(B +@end menu + +@node Active File Format +@subsubsection $B%"%/%F%$%V%U%!%$%kMM<0(B + +$B%"%/%F%#%V%U%!%$%k$OEv$N%5!<%P!<$NA4$F$N;HMQ2DG=$J%0%k!<%W$N0lMw$r5s$2$^(B +$B$9!#$=$l$O$=$l$>$l$N%0%k!<%W$N:GDc$H:G9b$N5-;vHV9f$N0lMw$b$"$j$^$9!#(B + +$B$3$l$OIaDL$N%"%/%F%#%V%U%!%$%k$+$i$NH4?h$G$9(B: + +@example +soc.motss 296030 293865 y +alt.binaries.pictures.fractals 3922 3913 n +comp.sources.unix 1605 1593 m +comp.binaries.ibm.pc 5097 5089 y +no.general 1000 900 y +@end example + +$B$3$l$O$3$N%U%!%$%k$N5?;w(B BNF $BDj5A$G$9!#(B + +@example +active = *group-line +group-line = group spc high-number spc low-number spc flag +group = +spc = " " +high-number = +low-number = +flag = "y" / "n" / "m" / "j" / "x" / "=" group +@end example + +$B$3$N%U%!%$%k$N40A4$J5-=R$rF@$k$?$a$K$O!"(B@samp{innd} $B$N%^%K%e%"%kJG!"FC(B +$B$K(B @samp{active(5)} $B$r8+$F2<$5$$!#(B + +@node Newsgroups File Format +@subsubsection $B%K%e!<%9%0%k!<%W%U%!%$%kMM<0(B + +$B%K%e!<%9%0%k!<%W%U%!%$%k$O%0%k!<%W$r$=$N5-=R$H6&$K0lMw$r5s$2$^$9!#%5!<%P!<(B +$B$K$"$kA4$F$N%0%k!<%W$,0lMw$K$5$l$J$1$l$P$J$i$J$$$N$G$O$J$/!"$^$?!"%U%!%$(B +$B%k$NA4$F$N%0%k!<%W$,%5!<%P!<$KB8:_$7$J$1$l$P$J$i$J$$$N$G$O$"$j$^$;$s!#$3(B +$B$N%U%!%$%k$O=c?h$KMxMQpJs$N$?$a$K$"$j$^$9!#(B + +$BMM<0$OHs>o$K4JC1$G$9(B: $B%0%k!<%WL>!"%?%V!"$=$7$F5-=R$G$9!#$3$l$ODj5A$G$9(B: + +@example +newsgroups = *line +line = group tab description +group = +tab = +description = +@end example + +@page +@node Emacs for Heathens +@section $B0[65EL$X$N(B Emacs + +$B?.$8$k$+$I$&$+$OCN$j$^$;$s$,!"(BGnus $B$r;H$&?M$NCf$K$O(B Gnus Love Boat $B$G$N(B +$BN9$KEk>h$9$kA0$K$"$^$j(B Emacs $B$r;H$C$?;v$,L5$$$H$$$&?M$,$$$^$9!#$b$7$"$J(B +$B$?$,(B ``@kbd{C-M-a}'' $B$d(B ``$B%j!<%8%g%s$r@Z$k(B''$B!"$=$7(B +$B$F(B ``@code{gnus-flargblossen} $B$rO"A[%j%9%H$K@_Dj$7$F$/$@$5$$!#$=$N%-!<$O(B +$B%0%k!<%WL>$K9gCW$9$k$?$a$K;H$o$l$k@55,I=8=$G$9(B'' $B$,>/$7$N0UL#$+A4$/0UL#(B +$B$NL5$$KbK!$N8@MU$G$"$kIT9,$J?M$G$"$l$P!"$3$NIUO?$O$"$J$?$N$?$a$K$"$j$^$9!#(B +$B$b$7$"$J$?$,4{$K(B Emacs $B$K?F$7$s$G$$$k$N$G$"$l$P!"$3$l$rL5;k$7$FO$rF~NO$7$FL?Na$ro$K$&$k$5$/46$8$i$l$k$G$7$g$&!#;D$j$N?M!9$O!"$=(B +$B$l$K$h$j$b$?$i$5$l$kCO9v$r0&$7$^$9!#$"$-$i$a$FI~=>$7$F2<$5$$!#(BEmacs $B$OK\(B +$BEv$O(B ``Escape-Meta-Alt-Control-Shift'' $B$NN,$G!"B>$NI>H=$N0-$$=P(B +$B=j(B (Emacs $B$N:n.;X$N6a$/$K0LCV$7$F$*$j!"IaDL$OBgJ8;z$d$=$NB>$N$b$rF@(B +$B$k$?$a$K;H$o$l$^$9!#$"$J$?$O$:$C$H$=$l$r;H$&;v$G$7$g$&!#%3%s%H%m!<%k%-!<(B +$B$OIaDL$O(B ``CTRL'' $B$d$=$N$h$&$J$b$N$G0u$,IU$$$F$$$^$9!#%a%?%-!<$O!"$*$b$7(B +$B$m$$;v$K!"$I$N%-!<%\!<%I$G$b$=$N$h$&$K0u$,IU$1$i$l$F$$$^$;$s!#$=$l$OIaDL(B +$B$O%-!<%\!<%I$N:8/$7J#;($K$J$C$F$$$^$9!#$=$N$h$&$J>l9g$O!"(B``$B%(%9%1!<%W(B'' $B%-!<$r;H$&;v$,(B +$B$G$-$^$9!#$=$l$O%a%?%-!<$r;}$C$F$$$k$H$-$h$j$b$C$H:n6H$,BgJQ$K$J$j$^$9$N(B +$B$G!"$=$&$$$&>l9g$O!";d$O%a%?%-!<$N$"$k%-!<%\!<%I$r$l$NA4$F$N%-!<$O2?$i$+$N(B Emacs Lisp $B$N%3!<%I$N(B +$B>.JR$r/$J$/$H$b(B Lisp $B%3!<%I$N=q$-J}$rCN$C$F$$$l$P!#(B) $B$7$+$7!"$=$l$O$3$N%^(B +$B%K%e%"%k$NHO0O30$J$N$G!"2f!9$OC1$K(B Gnus $B$r%+%9%?%^%$%:$9$k$?$a$K%U%!%$(B +$B%k(B @file{.emacs} $B$GIaDL;H$o$l$k$$$/$D$+$NIaDL$N9=J8$K$D$$$F$@$1OC$r$7$^(B +$B$9!#(B + +$B$b$7JQ?t(B@code{gnus-florgbnize} $B$r;M(B (4) $B$K@_Dj$7$?$$$N$G$"$l$P!"0J2<$N$b(B +$B$N$r=q$-$^$9(B: + +@lisp +(setq gnus-florgbnize 4) +@end lisp + +$B$3$N4X?t(B @code{setq} ($BK\Ev$O(B ``$BFC2A(B} ($B$=$l$O(B ``$B2A(B} $B$7!"$=$l$O$3$3$G$O4JC1$J(B @code{setq} $BJ8$G$9!#(B + +$B$,$s$P$C$F(B---$B$b$7$"$J$?$,(B Emacs $B$NA0$K$"$k$N$G$"$l$P$A$g$C$H;n$7$F2<$5$$!#(B +@kbd{C-x C-e} $B$N8e$G!"H?6A6h0h(B (echo area) $B$K(B @samp{4} $B$,8=$o$l$k$N$,8+(B +$B$($k$G$7$g$&!#$=$l$O$"$J$?$,(B @code{$BI>2A(B} $B$7$?<0$NJV$jCM$G$9!#(B + +$B$$$/$D$+$NMn$H$77j(B: + +$B$b$7%^%K%e%"%k$,(B ``@code{gnus-read-active-file} $B$r(B @code{some} $B$K@_Dj$7(B +$B$J$5$$(B'' $B$H8@$C$?$J$i!"$=$l$O(B: + +@lisp +(setq gnus-read-active-file 'some) +@end lisp + +$B$H8@$&;v$G$9!#(B + +$B0lJ}!"%^%K%e%"%k(B +$B$,(B ``@code{gnus-nntp-server} $B$r(B @samp{nntp.ifi.uio.no} $B$K@_Dj$7$J$5(B +$B$$(B'' $B$H8@$C$?$J$i!"$=$l$O(B: + +@lisp +(setq gnus-nntp-server "nntp.ifi.uio.no") +@end lisp + +$B$H8@$&;v$G$9!#(B + +$B$G$9$+$i!"J8;zNs(B ($B8e