1 \input texinfo @c -*-texinfo-*-
4 @settitle Emacs Sieve Manual
9 @firstparagraphindent insert
13 This file documents the Emacs Sieve package.
15 Copyright @copyright{} 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008
16 Free Software Foundation, Inc.
19 Permission is granted to copy, distribute and/or modify this document
20 under the terms of the GNU Free Documentation License, Version 1.2 or
21 any later version published by the Free Software Foundation; with no
22 Invariant Sections, with the Front-Cover texts being ``A GNU
23 Manual'', and with the Back-Cover Texts as in (a) below. A copy of the
24 license is included in the section entitled ``GNU Free Documentation
25 License'' in the Emacs manual.
27 \e$B$3$NJ8=q$r!"%U%j!<%=%U%H%&%'%":bCDH/9T$N
\e(B GNU
\e$B%U%j!<J8=qMxMQ5vBz7@Ls=q
\e(B
28 \e$BBh
\e(B 1.2
\e$BHG$^$?$O$=$l0J9_$NHG$,Dj$a$k>r7o$N2<$GJ#@=!"G[I[!"$"$k$$$OJQ99$9
\e(B
29 \e$B$k$3$H$r5v2D$7$^$9!#JQ99IT2DItJ,$O;XDj$7$^$;$s!#!H
\e(BA GNU Manual
\e$B!I$OI=I=;f
\e(B
30 \e$B%F%-%9%H!"0J2<$N
\e(B (a)
\e$B$ON"I=;f%F%-%9%H$G$9!#$3$NMxMQ5vBz7@Ls=q$NJ#<L$O
\e(B
31 \e$B!H
\e(BEmacs manual
\e$B!I$N!V
\e(BGNU
\e$B%U%j!<J8=qMxMQ5vBz7@Ls=q!W$H$$$&>O$K4^$^$l$F$$$^
\e(B
34 (a) The FSF's Back-Cover Text is: ``You have freedom to copy and modify
35 this GNU Manual, like GNU software. Copies published by the Free
36 Software Foundation raise funds for GNU development.''
38 (a) FSF
\e$B$NN"I=;f%F%-%9%H
\e(B:
\e$B!V$"$J$?$K$O$3$N
\e(B GNU Manual
\e$B$r
\e(B GNU
\e$B%=%U%H%&%'%"
\e(B
39 \e$B$N$h$&$KJ#@=$7$?$jJQ99$9$k<+M3$,$"$j$^$9!#J#@=$O%U%j!<%=%U%H%&%'%":bCD$K
\e(B
40 \e$B$h$C$F=PHG$5$l$^$7$?!#
\e(B(
\e$B%U%j!<%=%U%H%&%'%":bCD$O
\e(B) GNU
\e$B$N3+H/$N$?$a$KI,MW
\e(B
41 \e$B$J;q6b$r=8$a$F$$$^$9!#!W
\e(B
43 This document is part of a collection distributed under the GNU Free
44 Documentation License. If you want to distribute this document
45 separately from the collection, you can do so by adding a copy of the
46 license to the document, as described in section 6 of the license.
48 \e$B$3$NJ8=q$O!V
\e(BGNU
\e$B%U%j!<J8=qMxMQ5vBz7@Ls=q!W$K4p$E$$$FG[I[$5$l$?<}=8Cx:nJ*
\e(B
49 \e$B$N0lIt$G$9!#$b$7$"$J$?$,$3$NJ8=q$r<}=8Cx:nJ*$+$iJ,N%$7$FG[I[$7$?$$$H$-$O!"
\e(B
50 \e$B7@Ls=q$NBh
\e(B 6
\e$B>O$K5-=R$5$l$F$$$k$h$&$K!"J8=q$K7@Ls=q$NJ#<L$rIU2C$9$k$3$H
\e(B
51 \e$B$K$h$C$F!"9T$J$&$3$H$,$G$-$^$9!#
\e(B
57 * Sieve-ja: (sieve-ja). Managing Sieve scripts in Emacs (Japanese).
62 @setchapternewpage odd
65 @title Emacs Sieve Manual
67 @author by Simon Josefsson
69 @vskip 0pt plus 1filll
74 @top Sieve Support for Emacs
76 \e$B$3$N%^%K%e%"%k$O
\e(B Emacs Sieve
\e$B%Q%C%1!<%8$N@bL@=q$G$9!#
\e(B
78 \e$B$3$l$O
\e(B Sieve
\e$B%b!<%I$H!V
\e(BSieve-
\e$B4IM}!W
\e(B(Manage Sieve)
\e$B$N$?$a$N%f!<%6!<%:%^%K%e
\e(B
79 \e$B%"%k$H$7$F!"$*$h$S
\e(B @samp{sieve-manage}
\e$B%W%m%H%3%k$r07$&
\e(B Emacs Lisp
80 API
\e$B$N$?$a$N%j%U%!%l%s%9%^%K%e%"%k$H$7$F3hMQ$5$l$k$3$H$r0U?^$7$F$$$^$9!#
\e(B
82 Sieve
\e$B$O%5!<%P!<B&$G%a!<%k$r_I2a$9$k$?$a$N8@8l$G$9!#$=$N8@8l$O
\e(B RFC
83 3028
\e$B$KJ8=q2=$5$l$F$$$^$9!#$3$N%^%K%e%"%k$NL\E*$O8@8l$r@bL@$9$k$3$H$G$O
\e(B
84 \e$B$J$$$N$G!"
\e(BRFC 3028
\e$B$O<j85$KCV$$$F$*$$$F$/$@$5$$!#
\e(B
86 \e$B$^$H$b$J
\e(B Sieve
\e$B$N;qNA$O
\e(B @uref{http://www.cyrusoft.com/sieve/}
\e$B$K$"$j$^$9!#
\e(B
88 \e$BLuCm
\e(B: Sieve ==
\e$BdA
\e(B (
\e$B$U$k$$
\e(B)
91 * Installation::
\e$B$3$N%Q%C%1!<%8$r;H$&$?$a$N=`Hw
\e(B
92 * Sieve Mode:: Sieve
\e$B%9%/%j%W%H$NJT=8
\e(B
93 * Managing Sieve::
\e$B1s3V%5!<%P!<>e$N
\e(B Sieve
\e$B%9%/%j%W%H$r4IM}$9$k
\e(B
94 * Examples :: Sieve
\e$B%3!<%I$NJRNZ
\e(B
95 * Manage Sieve API ::
\e$B!V
\e(BSieve-
\e$B4IM}!W%W%m%H%3%k
\e(B API
\e$B$N%$%s%?!<%U%'!<%9
\e(B
96 * Standards::
\e$B;H$o$l$F$$$k
\e(B RFC
\e$B$H:n6HJ8=q$N35N,
\e(B
97 * GNU Free Documentation License::
\e$B$3$NJ8=q$NMxMQ5vBz7@Ls=q
\e(B
98 * Index::
\e$B4X?t$*$h$SJQ?t$N:w0z
\e(B
102 @chapter
\e$B%$%s%9%H!<%k
\e(B
106 Sieve
\e$B%Q%C%1!<%8$O$"$J$?$N
\e(B Emacs
\e$B$NHG$KIUB0$7$F$$$F!"$9$0$K;H$($k$h$&$K
\e(B
107 \e$B$J$C$F$$$k$O$:$G$9!#
\e(B
109 \e$B$=$&$J$C$F$$$J$$$N$G$"$l$P!"$3$N%Q%C%1!<%8$r<j:n6H$G@_Dj$9$k$?$a$K!"0J2<
\e(B
110 \e$B$N%3%^%s%I$r
\e(B @code{~/.emacs}
\e$B%U%!%$%k$K=q$-9~$s$G$/$@$5$$
\e(B:
113 (autoload 'sieve-mode "sieve-mode")
116 (setq auto-mode-alist (cons '("\\.s\\(v\\|iv\\|ieve\\)\\'" . sieve-mode)
121 @chapter Sieve
\e$B%b!<%I
\e(B
123 Sieve
\e$B%b!<%I$O!"9=J8$K4p$E$$$?%$%s%G%s%H!"
\e(Bfont-lock
\e$B$N%5%]!<%H!"$*$h
\e(B
124 \e$B$S
\e(B Sieve
\e$B%9%/%j%W%H$r3Z$KJT=8$G$-$k$h$&$K$9$k$?$a$N$=$NB>$NJXMx$J5!G=$r
\e(B
127 \e$B$3$N%a%8%c!<%b!<%I$K@Z$jBX$($k$K$O
\e(B @samp{M-x sieve-mode}
\e$B$r;H$C$F$/$@$5
\e(B
128 \e$B$$!#$3$N%3%^%s%I$O
\e(B @code{sieve-mode-hook}
\e$B$GM?$($i$l$?%U%C%/$r<B9T$7$^$9!#
\e(B
130 @vindex sieve-mode-map
131 @vindex sieve-mode-syntax-table
132 Sieve
\e$B%b!<%I$O
\e(B @code{c-mode}
\e$B$+$iGI@8$7$F$$$F!"%3%a%s%H$N9=J80J30$O$H$F
\e(B
133 \e$B$b;w$F$$$^$9!#%$%s%G%s%H$r%+%9%?%^%$%:$9$kJQ?t$,$"$k$N$HF1MM$K!"%-!<%^%C
\e(B
134 \e$B%W
\e(B (@code{sieve-mode-map})
\e$B$O
\e(B @code{c-mode}
\e$B$N$b$N$r<u$17Q$.$^$9!#
\e(B
135 Sieve
\e$B%b!<%I$O@lMQ$NN,8lI=
\e(B (@code{sieve-mode-abbrev-table})
\e$B$H9=J8%F!<%V
\e(B
136 \e$B%k
\e(B (@code{sieve-mode-syntax-table})
\e$B$r;}$C$F$$$^$9!#
\e(B
138 \e$BJT=8$KLrN)$D4X?t$K2C$($F!"
\e(BSieve
\e$B%b!<%I$K$O
\e(B Sieve
\e$B%9%/%j%W%H$r1s3V4IM}$9
\e(B
139 \e$B$k$?$a$N%-!<@_Dj$b$"$j$^$9!#
\e(B@xref{Managing Sieve}.
145 @cindex manage remote sieve script
146 \e$B!V
\e(BSieve-
\e$B4IM}!W%W%m%H%3%k
\e(B (Managesieve protocol)
\e$B$r;H$C$F!"1s3V%5!<%P!<$K
\e(B
152 @cindex upload sieve script
153 \e$B8=:_@\B3$7$F$$$k%5!<%P!<$K
\e(B Sieve
\e$B%9%/%j%W%H$r%"%C%W%m!<%I$7$^$9!#
\e(B
157 @chapter Sieve
\e$B$N4IM}
\e(B
159 \e$B!V
\e(BSieve-
\e$B4IM}!W$O!"1s3V%5!<%P!<$K$"$k
\e(B Sieve
\e$B%9%/%j%W%H$rI=<($9$k$?$a$K;H
\e(B
160 \e$B$o$l$kFCJL$J%b!<%I$G$9!#$=$l$O
\e(B @kbd{M-x sieve-manage RET}
\e$B$G5/F0$7!"$=$N
\e(B
161 \e$B%5!<%P!<$K$*$1$k%f!<%6!<L>$H!"I,MW$J>l9g$K$O;q3J>ZL@=q
\e(B (credentials)
\e$B$N
\e(B
162 \e$BF~NO$r5a$a$^$9!#
\e(B
164 \e$B%5!<%P!<$H$N@\B3$K@.8y$9$k$H!"!V
\e(BSieve-
\e$B4IM}!W%P%C%U%!!<$K$O0J2<$N$h$&$J$b
\e(B
165 \e$B$N$,I=<($5$l$^$9
\e(B:
168 Server : mailserver:2000
170 2 scripts on server, press RET on a script name edits it, or
171 press RET on <new script> to create a new script.
177 \e$B%9%/%j%W%H$N0l$D$,6/D4I=<($5$l!"I8=`$N%]%$%s%H0\F0%3%^%s%I
\e(B (@kbd{<up>},
178 @kbd{<down>}
\e$B$J$I
\e(B)
\e$B$G%j%9%HFb$r0\F0$9$k$3$H$,$G$-$^$9!#
\e(B
180 \e$B0J2<$N%3%^%s%I$,!V
\e(BSieve-
\e$B4IM}!W%P%C%U%!!<$GMxMQ2DG=$G$9
\e(B:
185 @findex sieve-activate
186 \e$B8=:_$N6/D4I=<($5$l$?%9%/%j%W%H$r3h@-2=$7$^$9!#
\e(B
190 @findex sieve-deactivate
191 \e$B8=:_$N6/D4I=<($5$l$?%9%/%j%W%H$rIT3h@-2=$7$^$9!#
\e(B
195 @findex sieve-deactivate-all
196 \e$B$9$Y$F$N%9%/%j%W%H$rIT3h@-2=$7$^$9!#
\e(B
201 \e$B8=:_$N6/D4I=<($5$l$?%9%/%j%W%H$r<h$j=|$-$^$9!#
\e(B
209 @findex sieve-edit-script
210 \e$B%5!<%P!<%P%C%U%!!<$r1#$7$F!"8=:_$N6/D4I=<($5$l$?%9%/%j%W%H$r
\e(B Sieve
\e$B%b!<
\e(B
211 \e$B%I
\e(B (@pxref{Sieve Mode})
\e$B$GJT=8$9$k$?$a$N?7$7$$%P%C%U%!!<$K%@%&%s%m!<%I$7
\e(B
216 @findex sieve-edit-script-other-window
217 Sieve
\e$B%b!<%I
\e(B (@pxref{Sieve Mode})
\e$B$GJT=8$9$k$?$a$K!"8=:_$N6/D4I=<($5$l$?
\e(B
218 \e$B%9%/%j%W%H$r4^$s$G$$$k?7$7$$%P%C%U%!!<$r!"JL%&%#%s%I%&$G:n@.$7$^$9!#
\e(B
222 @findex sieve-bury-buffer
223 \e$B@\B3$r@Z$i$:$K!V
\e(BSieve-
\e$B4IM}!W%P%C%U%!!<$r1#$7$^$9!#
\e(B
230 \e$B%_%K%P%C%U%!!<$K%X%k%W$rI=<($7$^$9!#
\e(B
236 Sieve
\e$B$r=OCN$7$F$$$J$$$J$i!"$3$N>O$K$[$s$N>/$7$@$1$"$k%3!<%I$NCGJR$rMxMQ
\e(B
237 \e$B$9$l$PNI$$$G$7$g$&!#
\e(BSieve
\e$B8@8l$G%<%m$+$i5,B'$r=q$/$3$H$,$b$C$H2wE,$K46$8
\e(B
238 \e$B$i$l$k$h$&$K$J$k$^$G$O!"$=$l$i$r%+%C%H!u%Z!<%9%H$7$F9%$-$J$h$&$KJQ99$7$F
\e(B
241 \e$B0J2<$N40A4$J
\e(B Sieve
\e$B%9%/%j%W%H$O!"9gCW$9$k
\e(B @samp{Sender:}
\e$B%X%C%@!<$r;}$D
\e(B
242 \e$B$9$Y$F$N%a%C%;!<%8$r!";XDj$5$l$?%a!<%k%\%C%/%9$K3JG<$7$^$9!#B?$/$N%a!<%j
\e(B
243 \e$B%s%0%j%9%H$,$3$N7A<0$r;H$C$F$$$^$9!#:G=i$N9T$O
\e(B Sieve
\e$B%5!<%P!<$,3N<B
\e(B
244 \e$B$K
\e(B @code{fileinto}
\e$B%3%^%s%I$rM}2r$G$-$k$h$&$K$9$k$?$a$N$b$N$G$9!#
\e(B
249 if address "sender" "owner-w3-beta@@xemacs.org" @{
250 fileinto "INBOX.w3-beta";
254 \e$B>/?t$N%a!<%j%s%0%j%9%H$O
\e(B @samp{Sender:}
\e$B%X%C%@!<$r;H$$$^$;$s$,!"$"$kJL$N
\e(B
255 \e$B%X%C%@!<$KFHFC$N<1JL;R$,$"$j$^$9!#0J2<$N%9%/%j%W%H$O40A4$G$O$J$/!"$9$G
\e(B
256 \e$B$K
\e(B @code{fileinto}
\e$B$,FI$_9~$^$l$F$$$k$3$H$r2>Dj$7$F$$$^$9!#
\e(B
259 if header :contains "Delivered-To" "auc-tex@@sunsite.dk" @{
260 fileinto "INBOX.auc-tex";
264 \e$B:G8e$O!"$I$s$JFHFC$N<1JL;R$b;}$C$F$$$J$$@dK>E*$J%a!<%j%s%0%j%9%H$N$?$a$K!"
\e(B
265 @samp{To:}
\e$B$H
\e(B @samp{Cc}
\e$B%X%C%@!<$K$*$1$k9gCW$r6/$$$i$l$kNc$G$9!#A0$N$b$N
\e(B
266 \e$B$HF1MM$K!"$3$NCGJR$O
\e(B @code{fileinto}
\e$B$,FI$_9~$^$l$F$$$k$3$H$r2>Dj$7$F$$
\e(B
270 if address ["to", "cc"] "kerberos@@mit.edu" @{
271 fileinto "INBOX.kerberos";
275 @node Manage Sieve API
276 @chapter
\e$B!V
\e(BSieve-
\e$B4IM}!W$N
\e(B API
278 @file{sieve-manage.el}
\e$B%i%$%V%i%j!<$K$O
\e(B @sc{managesieve}
\e$B%W%m%H%3%k$G%5!<
\e(B
279 \e$B%P!<$HOC$9$?$a$N!"Dc3,AX$N4X?t72$,$"$j$^$9!#
\e(B
281 \e$B$$$/$D$+$N!"%f!<%6!<$,8+$k$3$H$,$G$-$kJQ?t$,$"$j!"$=$l$i$9$Y$F
\e(B
282 \e$B$O
\e(B @code{sieve}
\e$B%0%k!<%W$G%+%9%?%^%$%:$9$k$3$H$,$G$-$^$9
\e(B (@kbd{M-x
283 customize-group RET sieve RET}):
286 @item sieve-manage-default-user
287 @vindex sieve-manage-default-user
288 \e$B%G%#%U%)%k%H$N%f!<%6!<L>$r@_Dj$7$^$9!#
\e(B
290 @item sieve-manage-default-port
291 @vindex sieve-manage-default-port
292 \e$B;EMM$9$k%G%#%U%)%k%H$N%]!<%H$r@_Dj$7$^$9!#Ds0F$5$l$F$$$k%]!<%HHV9f
\e(B
293 \e$B$O
\e(B @code{2000}
\e$B$G$9!#
\e(B
295 @item sieve-manage-log
296 @vindex sieve-manage-log
297 \e$BHs
\e(B-@code{nil}
\e$B$@$C$?$i!"$d$j<h$j$7$?%W%m%H%3%k$N7k2L$,5-O?$5$l$k%P%C%U%!!<
\e(B
298 \e$BL>$NJ8;zNs$G$J$1$l$P$J$j$^$;$s
\e(B (
\e$B%G%P%C%0$9$k$H$-$K;H$$$^$9
\e(B)
\e$B!#
\e(B
301 API
\e$B$N4X?t$K$O0J2<$N$b$N$,$"$j$^$9
\e(B:
304 @item sieve-manage-open
305 @findex sieve-manage-open
306 \e$B!V
\e(BSieve-
\e$B4IM}!W%5!<%P!<$K@\B3$7!"B>$N$9$Y$F$N
\e(B API
\e$B$G;H$&%P%C%U%!!<$rJV$7
\e(B
309 @item sieve-manage-opened
310 @findex sieve-manage-opened
311 \e$B%5!<%P!<$H@\B3$7$F$$$k$+H]$+$r8!::$7$^$9!#
\e(B
313 @item sieve-manage-close
314 @findex sieve-manage-close
315 \e$B%5!<%P!<$H$N@\B3$rJD$8$^$9!#
\e(B
317 @item sieve-manage-authenticate
318 @findex sieve-manage-authenticate
319 \e$B%5!<%P!<$rG'>Z$7$^$9!#
\e(B
321 @item sieve-manage-capability
322 @findex sieve-manage-capability
323 \e$B%5!<%P!<$,%5%]!<%H$7$F$$$k5!G=$N%j%9%H$rJV$7$^$9!#
\e(B
325 @item sieve-manage-listscripts
326 @findex sieve-manage-listscripts
327 \e$B%5!<%P!<$K$"$k%9%/%j%W%H$rNs5s$7$^$9!#
\e(B
329 @item sieve-manage-havespace
330 @findex sieve-manage-havespace
331 \e$BM?$($i$l$?%5%$%:$N%9%/%j%W%H$N$?$a$N6u$-$,$"$l$P!"Hs
\e(B-@code{nil}
\e$B$rJV$7$^
\e(B
334 @item sieve-manage-getscript
335 @findex sieve-manage-getscript
336 \e$B%5!<%P!<$+$i%9%/%j%W%H$r%@%&%s%m!<%I$7$^$9!#
\e(B
338 @item sieve-manage-putscript
339 @findex sieve-manage-putscript
340 \e$B%5!<%P!<$K%9%/%j%W%H$r%"%C%W%m!<%I$7$^$9!#
\e(B
342 @item sieve-manage-setactive
343 @findex sieve-manage-setactive
344 \e$B%5!<%P!<$K$"$k$I$N%9%/%j%W%H$,3h$-$F$$$k$O$:$G$"$k$+$r<($7$^$9!#
\e(B
348 @chapter
\e$BI8=`
\e(B
350 Emacs Sieve
\e$B%Q%C%1!<%8$O!">/$J$$$1$l$I$bA}Bg$9$k$3$H$,K>$^$l$k
\e(B RFC
\e$B72$*
\e(B
351 \e$B$h$SAp9FJ8=q$N!"$9$Y$F$^$?$O0lItJ,$r<BAu$7$^$9!#$3$N>O$G$O4XO"$9$k$b$N$r
\e(B
352 \e$BNs5s$7$^$9!#$=$l$i$O$9$Y$F
\e(B @uref{http://quimby.gnus.org/notes/}
\e$B$+$iF~<j
\e(B
353 \e$B$9$k$3$H$,$G$-$^$9!#
\e(B
357 Sieve:
\e$B%a!<%k_I2a8@8l
\e(B
359 @item draft-martin-managesieve-03
360 Sieve
\e$B%9%/%j%W%H$r1s3V4IM}$9$k$?$a$N%W%m%H%3%k
\e(B
363 @node GNU Free Documentation License
364 @chapter GNU
\e$B%U%j!<J8=qMxMQ5vBz7@Ls=q
\e(B
366 \e$BLuCm
\e(B: @uref{http://www.opensource.jp/fdl/fdl.ja.html.euc-jp,
367 \e$BHs8x<0$JF|K\8lLu
\e(B}
\e$B$,$"$j$^$9!#
\e(B
369 @include doclicense.texi
380 @c coding: iso-2022-7bit
383 @c use-kuten-for-period: t
384 @c use-touten-for-comma: t