From daec6c4f7341380f1344132e442c9161b548f01e Mon Sep 17 00:00:00 2001 From: yamaoka Date: Mon, 2 Sep 2002 00:08:40 +0000 Subject: [PATCH] Synch with Oort Gnus. --- texi/ChangeLog | 5 ++++ texi/gnus-ja.texi | 79 +++++++++++++++++++++++++++------------------------- texi/gnus.texi | 80 ++++++++++++++++++++++++++++------------------------- 3 files changed, 89 insertions(+), 75 deletions(-) diff --git a/texi/ChangeLog b/texi/ChangeLog index 2b698f5..5feba52 100644 --- a/texi/ChangeLog +++ b/texi/ChangeLog @@ -1,3 +1,8 @@ +2002-09-01 Simon Josefsson + + * gnus.texi (Gnus Unplugged): Fix, agent is now enabled by default. + (Agent as Cache): New. + 2002-08-26 Jesper harder * gnus.texi (Group Information): Add gnus-group-fetch-charter and diff --git a/texi/gnus-ja.texi b/texi/gnus-ja.texi index 27c18f0..d5c64d7 100644 --- a/texi/gnus-ja.texi +++ b/texi/gnus-ja.texi @@ -846,6 +846,7 @@ Gnus Unplugged * Agent Categories:: $B2?$r%@%&%s%m!<%I$9$k$+$r(B gnus $B%(!<%8%'%s(B $B%H$K65$($kJ}K!(B * Agent Commands:: $B3F%P%C%U%!!<$G$N?7$7$$L?Na(B +* Agent as Cache:: $B%(!<%8%'%s%H$OBg$-$J%-%c%C%7%e$G$b$"$k(B * Agent Expiry:: $B8E$$5-;v$r>C$9J}K!(B * Agent and IMAP:: $B%(!<%8%'%s%H$r(B IMAP $B$G;H$&J}K!(B * Outgoing Messages:: $BEj9F!"%a!<%k$r=P$9$H$-$K$J$K$,5/$3$k$N$+(B? @@ -11518,7 +11519,7 @@ OpenSSL (@uref{http://www.openssl.org}) $B$+(B SSLeay @findex nntp-open-telnet-stream @item nntp-open-telnet-stream -$BC1$K(B @samp{telnet} $B$7$F(B @sc{nntp} $B%5!<%P!<$K@\B3$7$^$9!#$"$J$?$O!"%G%U%)(B +$BC1$K(B @samp{telnet} $B$7$F(B @sc{nntp} $B%5!<%P!<$K@\B3$7$^$9!#$"$J$?$O!"%G%#%U%)(B $B%k%H$N(B @code{nntp-open-network-stream} $B$,$=$l$r$9$k$N$K$b$+$+$o$i$:!"$J(B $B$<$3$N4X?t$,$"$k$N$+IT;W5D$K;W$&$+$b$7$l$^$;$s!#$=$NM}M3(B ($B$N0l$D(B) $B$O!"$b(B $B$7$"$J$?$,KIJI$NCf$K$$$?$H$7$F$b(B @code{runsocks} $B$N$h$&$J%3%^%s%I%i%C%Q!<(B @@ -15794,10 +15795,11 @@ Namazu $B$O!";vA0$K=`Hw$5$l$?:w0z$rMQ$$$F8!:w$r9T$&$h$&$K@_7W$5$l$?8!:w(B $B$^$j!"Dj4|E*$K(B @code{mknmz} $B$r8F$S=P$7$F!"?7$?$J%a!<%k$N:w0z$rDI2C$7$J(B $B$$$H!"?7$7$$%a!<%k$O$$$D$^$G$?$C$F$b8!:wBP>]$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;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$r(B -@file{~/.gnus} $B$KDI2C$7$F$/$@$5$$!#(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} $B$KDI2C$7$F$/$@$5$$!#(B + @example (setq gnus-namazu-index-update-interval 86400) @@ -15839,24 +15841,8 @@ gnus-namazu-update-all-indices} $B$H$9$kI,MW$,$"$k$+$b$7$l$^$;$s!#(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;H$&$N$O6K$a$F4JC1$G$9!#(B - -@itemize @bullet -@item -$B$^$:!"%M%C%H%o!<%/$K40A4$K7R$,$C$F$$$k%^%7%s>e$GF0:n$5$;$k$N$HF1$8$h$&$K!"(B -gnus $B$r@_Dj$7$^$9!#$^$:$d$C$F$*$$$G!#KM$O$3$3$GBT$C$F$k$+$i!#(B - -@item -$B$=$7$?$i!"0J2<$NKbK!$NC$9J}K!(B * Agent and IMAP:: $B%(!<%8%'%s%H$r(B IMAP $B$G;H$&J}K!(B * Outgoing Messages:: $BEj9F!"%a!<%k$r=P$9$H$-$K$J$K$,5/$3$k$N$+(B? @@ -15936,9 +15923,12 @@ PPP $B4X78(B($B$J$I(B)$B$rJD$8$^$9!#$=$&$7$F%K%e!<%9$r%*%U%i%$%s$GFI$`$3$H$ $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!$7$^(B -$B$9(B (@pxref{Server Agent Commands})$B!#$3$l$OBgDq$N>l9g!"%P%C%U%!!<$N2<$K0l(B -$BMwI=<($5$l$F$$$k4pK\A*BrJ}K!$@$1$G$7$g$&!#(B +$B$K07$C$FM_$7$$%5!<%P!<(B($BJ#?t2D(B)$B$G(B @kbd{J a} $B$r2!$9$+!"$^$?$O%(!<%8%'%s%H(B +$B$K07$C$FM_$7$/$J$$$N$K<+F0E*$KDI2C$5$l$?%5!<%P!<$G(B @kbd{J r} $B$r2!$7$^$9!#(B +$B%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%0%k!<%W$,%(!<%8%'%s%H2=$5$l$^(B +$B$9!#(B @item $B%@%&%s%m!<%IJ}?K$r7hDj$7$^$9!#(B@xref{Agent Categories}. @@ -16437,6 +16427,21 @@ $ emacs -batch -l ~/.gnus.el -f gnus-agent-batch $B$k(B (@code{gnus-agent-remove-server})$B!#(B @end table +@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!"C5n(B @@ -16493,11 +16498,11 @@ $ emacs -batch -l ~/.gnus.el -f gnus-agent-batch $B$$$&$3$H$G$9!#$7$?$,$C$F!"(Bgnus $B$O(B @dfn{unplugged} $B$N$H$-$N%U%i%0$NJQ2=$r(B $B3P$($F$*$$$F!":F$S@\B3$7$?$H$-$K$=$l$i$N%U%i%0$rF14|$5$;$kI,MW$,$"$j$^$9!#(B -gnus $B$O%(!<%8%'%s%H$N85$G(B nnimap $B%0%k!<%W$rFI$`$H$-!"%G%#%U%)%k%H$G%U%i(B -$B%0$NJQ2=$K@d$($:Cm0U$7$F$$$^$9!#$"$J$?$,:F$S@\B3$7$?$H$-!"%G%#%U%)%k%H(B -$B$G(B gnus $B$O$"$J$?$,2?$i$+$N%U%i%0$rJQ99$7$?$+$I$&$+$rD4$Y$F!"$"$J$?$,$=$l(B -$B$i$r%5!<%P!<$HF14|$5$;$?$$$+$I$&$+$r?R$M$^$9!#$3$N5sF0(B -$B$O(B @code{gnus-agent-synchronize-flags} $B$G%+%9%?%^%$%:$9$k$3$H$,$G$-$^$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 @@ -16508,9 +16513,8 @@ gnus $B$O%(!<%8%'%s%H$N85$G(B nnimap $B%0%k!<%W$rFI$`$H$-!"%G%#%U%)%k%H$G%U%i $B$i$l$^$9!#(B $B$b$7$"$J$?$,!":F@\B3$7$?$H$-$K<+F0$G%U%i%0$rF14|$5$;$?$/$J$$$J$i!"J}(B) $B$O2<=q$-%0%k!<%W(B (@pxref{Drafts}) $B$K3JG<$5$l$^$9!#Ej9F$7$?8e$G$b!"(B -$B$3$3$G$=$N%a%C%;!<%8$r8+$?$j!"JT=8$7$?$j$9$k$N$O0U$N$^$^$G$9!#(B +$BN>J}(B) $B$O2<=q$-%0%k!<%W(B ``queue'' (@pxref{Drafts}) $B$K3JG<$5$l$^$9!#Ej9F$7(B +$B$?8e$G$b!"$3$3$G$=$N%a%C%;!<%8$r8+$?$jJT=8$9$k$N$O0U$N$^$^$G$9!#(B Gnus $B$,:F$S:9$79~$^$l$?$H$-!"%a%C%;!<%8$rAw?.$9$k$?$a$K!"FCJL$JL?Na$r;H$C(B $B$F2<=q$-%0%k!<%W$+$iAw$k$3$H$b!"%0%k!<%W%P%C%U%!Fb$G(B @kbd{J S} $B$r;H$C$F!"(B @@ -16577,7 +16581,8 @@ Gnus $B%(!<%8%'%s%H$,%U%!%$%k$r3JG<$9$k>l=j!#=i4|@_DjCM(B @item gnus-agent-cache @vindex gnus-agent-cache plugged $B$N$H$-$K!"%m!<%+%k$K;}$C$F$$$k(B @sc{nov} $B$H5-;v$r;H$&$+$I$&$+$r@)(B -$B8f$9$kJQ?t!#(B +$B8f$9$kJQ?t$G!"Nc$($P%(!<%8%'%s%H$r%-%c%C%7%e$H$7$F;H$&$K$OI,?\$G$9!#%G%#(B +$B%U%)%k%H$G$OHs(B-@code{nil} $B$G!"%(!<%8%'%s%H$r%-%c%C%7%e$H$7$F;H$$$^$9!#(B @item gnus-agent-go-online @vindex gnus-agent-go-online @@ -16610,7 +16615,7 @@ plugged $B$N$H$-$K!"%m!<%+%k$K;}$C$F$$$k(B @sc{nov} $B$H5-;v$r;H$&$+$I$&$+$r@ ;;; Gnus $B$r%*%U%i%$%s%K%e!<%9%j!<%@!<$K$9$k!#(B ;;; (gnus-agentize) ; $B5l<0$N@_Dj!#(B -(setq gnus-agent t) +;;; (setq gnus-agent t) ; $B8=:_$N%G%#%U%)%k%H!#(B @end lisp $B4pK\E*$K$O$3$l$@$1$GNI$$$O$:$G$9!#$3$l$r$"$J$?$N(B @file{~/.gnus.el} $B%U%!(B diff --git a/texi/gnus.texi b/texi/gnus.texi index f021fc7..8474d9f 100644 --- a/texi/gnus.texi +++ b/texi/gnus.texi @@ -746,6 +746,7 @@ Gnus Unplugged * Agent Basics:: How it all is supposed to work. * Agent Categories:: How to tell the Gnus Agent what to download. * Agent Commands:: New commands for all the buffers. +* Agent as Cache:: The Agent is a big cache too. * Agent Expiry:: How to make old articles go away. * Agent and IMAP:: How to use the Agent with IMAP. * Outgoing Messages:: What happens when you post/mail something? @@ -16186,24 +16187,8 @@ for some years, but doing that's a bore. Moving the news server functionality up to the newsreader makes sense if you're the only person reading news on a machine. -Using Gnus as an ``offline'' newsreader is quite simple. - -@itemize @bullet -@item -First, set up Gnus as you would do if you were running it on a machine -that has full connection to the net. Go ahead. I'll still be waiting -here. - -@item -Then, put the following magical incantation in your @file{.gnus.el} -file: - -@lisp -(setq gnus-agent t) -@end lisp -@end itemize - -That's it. Gnus is now an ``offline'' newsreader. +Setting up Gnus as an ``offline'' newsreader is quite simple. In +fact, you don't even have to configure anything. Of course, to use it as such, you have to learn a few new commands. @@ -16211,6 +16196,7 @@ Of course, to use it as such, you have to learn a few new commands. * Agent Basics:: How it all is supposed to work. * Agent Categories:: How to tell the Gnus Agent what to download. * Agent Commands:: New commands for all the buffers. +* Agent as Cache:: The Agent is a big cache too. * Agent Expiry:: How to make old articles go away. * Agent and IMAP:: How to use the Agent with IMAP. * Outgoing Messages:: What happens when you post/mail something? @@ -16278,9 +16264,11 @@ the Agent. Decide which servers should be covered by the Agent. If you have a mail back end, it would probably be nonsensical to have it covered by the Agent. Go to the server buffer (@kbd{^} in the group buffer) and press -@kbd{J a} the server (or servers) that you wish to have covered by the -Agent (@pxref{Server Agent Commands}). This will typically be only the -primary select method, which is listed on the bottom in the buffer. +@kbd{J a} on the server (or servers) that you wish to have covered by the +Agent (@pxref{Server Agent Commands}), or @kbd{J r} on automatically +added servers you do not wish to have covered by the Agent. By default, +all @code{nntp} and @code{nnimap} groups in @code{gnus-select-method} and +@code{gnus-secondary-select-methods} are agentized. @item Decide on download policy. @xref{Agent Categories}. @@ -16813,6 +16801,22 @@ Agent (@code{gnus-agent-remove-server}). @end table +@node Agent as Cache +@subsection Agent as Cache + +When Gnus is plugged, it is not efficient to download headers or +articles from the server again, if they are already stored in the +Agent. So, Gnus normally only downloads headers once, and stores them +in the Agent. These headers are later used when generating the summary +buffer, regardless of whether you are plugged or unplugged. Articles +are not cached in the Agent by default though (that would potentially +consume lots of disk space), but if you have already downloaded an +article into the Agent, Gnus will not download the article from the +server again but use the locally stored copy instead. + +This behaviour can be controlled by @code{gnus-agent-cache} +(@pxref{Agent Variables}). + @node Agent Expiry @subsection Agent Expiry @@ -16868,23 +16872,22 @@ are kept on the @sc{imap} server, rather than in @code{.newsrc} as is the case for nntp. Thus Gnus need to remember flag changes when disconnected, and synchronize these flags when you plug back in. -Gnus keep track of flag changes when reading nnimap groups under the -Agent by default. When you plug back in, by default Gnus will check if -you have any changed any flags and ask if you wish to synchronize these -with the server. This behavior is customizable with -@code{gnus-agent-synchronize-flags}. +Gnus keeps track of flag changes when reading nnimap groups under the +Agent. When you plug back in, Gnus will check if you have any changed +any flags and ask if you wish to synchronize these with the server. +The behavior is customizable by @code{gnus-agent-synchronize-flags}. @vindex gnus-agent-synchronize-flags If @code{gnus-agent-synchronize-flags} is @code{nil}, the Agent will -never automatically synchronize flags. If it is @code{ask}, the -default, the Agent will check if you made any changes and if so ask if -you wish to synchronize these when you re-connect. If it has any other -value, all flags will be synchronized automatically. +never automatically synchronize flags. If it is @code{ask}, which is +the default, the Agent will check if you made any changes and if so +ask if you wish to synchronize these when you re-connect. If it has +any other value, all flags will be synchronized automatically. -If you do not wish to automatically synchronize flags when you -re-connect, this can be done manually with the +If you do not wish to synchronize flags automatically when you +re-connect, you can do it manually with the @code{gnus-agent-synchronize-flags} command that is bound to @kbd{J Y} -in the group buffer by default. +in the group buffer. Some things are currently not implemented in the Agent that you'd might expect from a disconnected @sc{imap} client, including: @@ -16913,8 +16916,8 @@ directory. It's emptied when you synchronize flags. @subsection Outgoing Messages When Gnus is unplugged, all outgoing messages (both mail and news) are -stored in the draft groups (@pxref{Drafts}). You can view them there -after posting, and edit them at will. +stored in the draft group ``queue'' (@pxref{Drafts}). You can view +them there after posting, and edit them at will. When Gnus is plugged again, you can send the messages either from the draft group with the special commands available there, or you can use @@ -16953,8 +16956,9 @@ Hook run when after finishing fetching articles. @item gnus-agent-cache @vindex gnus-agent-cache -Variable to control whether use the locally stored @sc{nov} and articles when -plugged. +Variable to control whether use the locally stored @sc{nov} and +articles when plugged, e.g. essentially using the Agent as a cache. +The default is non-nil, which means to use the Agent as a cache. @item gnus-agent-go-online @vindex gnus-agent-go-online @@ -16989,7 +16993,7 @@ setup, you may be able to use something like the following as your ;;; Make Gnus into an offline newsreader. ;;; (gnus-agentize) ; The obsolete setting. -(setq gnus-agent t) +;;; (setq gnus-agent t) ; Now the default. @end lisp That should be it, basically. Put that in your @file{~/.gnus.el} file, -- 1.7.10.4