(mmbuffer-write-entity): Use `mime-entity-buffer-internal',
[elisp/flim.git] / mime-ja.texi
index 067619b..8a3c58d 100644 (file)
@@ -1,13 +1,13 @@
 \input texinfo.tex
 @setfilename mime-ja.info
-@settitle{FLIM 1.6 MIME \e$B5!G=@bL@=q\e(B}
+@settitle{FLIM 1.8 MIME \e$B5!G=@bL@=q\e(B}
 @titlepage
-@title FLIM 1.6 MIME \e$B5!G=@bL@=q\e(B
+@title FLIM 1.8 MIME \e$B5!G=@bL@=q\e(B
 @author \e$B<i2,\e(B \e$BCNI'\e(B <morioka@@jaist.ac.jp>
-@subtitle 1998/06/23
+@subtitle 1998/07/01
 @end titlepage
 @node Top, Introduction, (dir), (dir)
-@top FLIM 1.6 MIME \e$B5!G=@bL@=q\e(B
+@top FLIM 1.8 MIME \e$B5!G=@bL@=q\e(B
 
 @ifinfo
 
@@ -109,165 +109,148 @@ local \e$BJQ?t\e(B @code{mime-message-structure} \e$B$K3JG<$9$k$3$H$K$7$^$9!#\e(B
 
 
 @menu
-* mime-entity::                 mime-entity \e$B9=B$BN\e(B
-* Message parser::              Message \e$B$N2r@O4o\e(B
-* Entity as node in message::   Entity \e$B$N0LCV4X78$K4X$9$k5!G=\e(B
+* Entity creation::             Entity \e$B$N@8@.\e(B
+* Entity hierarchy::            Entity \e$B3,AX\e(B
+* Entity Attributes::           Entity \e$B$NB0@-\e(B
 * Entity-header::               Entity header \e$B$N>pJs\e(B
 * Entity-content::              Entity \e$B$NFbMF\e(B
+* Entity buffer::               Entity \e$B$N\e(B buffer \e$B$K$h$kI=8=\e(B
+* mm-backend::                  Entity \e$B$NI=8=$H<B8=\e(B
 @end menu
 
-@node mime-entity, Message parser, Entity, Entity
-@section mime-entity \e$B9=B$BN\e(B
+@node Entity creation, Entity hierarchy, Entity, Entity
+@section Entity \e$B$N@8@.\e(B
 
-@deffn{Structure} mime-entity
+@defun mime-open-entity &optional  type location
 
-entity \e$B$K4X$9$k>pJs$r<}$a$k9=B$BN!#\e(B@refill
+Open an entity and return it.@refill
 
-\e$B$3$N9=B$BN$r;2>H$9$k$K$O\e(B @code{mime-entity-\e$BMWAGL>\e(B} \e$B$H$$$&L>A0$N;2>H4X?t\e(B
-\e$B$rMQ$$$k!#\e(B@refill
+@var{type} is representation-type. (cf. @ref{mm-backend}) @refill
 
-\e$B$3$N9=B$BN$NMWAG$O0J2<$NDL$j$G$"$k!'\e(B
+@var{location} is location of entity.  Specification of it is depended
+on representation-type.
+@end defun
 
-@table @var
-@item buffer
-entity \e$B$,B8:_$9$k\e(B buffer (buffer)
 
-@item header-start
-entity \e$B$NB8:_$9$k\e(B buffer \e$B$K$*$1$k\e(B header \e$B$N@hF,0LCV\e(B
-(point)
+@defun mime-parse-message &optional  default-ctl node-id
 
-@item header-end
-entity \e$B$NB8:_$9$k\e(B buffer \e$B$K$*$1$k\e(B header \e$B$NKvHx0LCV\e(B
-(point)
+\e$B8=:_$N\e(B buffer \e$B$r\e(B message \e$B$H$7$F9=J82r@O$7!"$=$N7k2L$N\e(B mime-entity \e$B$rJV$9!#\e(B
+@end defun
 
-@item body-start
-entity \e$B$NB8:_$9$k\e(B buffer \e$B$K$*$1$k\e(B body \e$B$N@hF,0LCV\e(B
-(point)
 
-@item body-end
-entity \e$B$NB8:_$9$k\e(B buffer \e$B$K$*$1$k\e(B body \e$B$NKvHx0LCV\e(B
-(point)
+@defun mime-parse-buffer &optional  buffer
+
+@var{buffer} \e$B$r\e(B message \e$B$H$7$F9=J82r@O$7!"$=$N7k2L$N\e(B mime-entity \e$B$r\e(B 
+@var{buffer} \e$B$N\e(B@code{mime-message-structure} \e$B$K3JG<$9$k!#\e(B@refill
 
-@item node-id
-entity \e$B$N\e(B node-id (\e$B@0?t$N\e(B list)
+@var{buffer} \e$B$,>JN,$5$l$?>l9g!"8=:_$N\e(B buffer \e$B$r9=J82r@O$9$k!#\e(B
+@end defun
 
-@item content-type
-Content-Type (@ref{Content-Type}) \e$BMs$N>pJs\e(B(mime-content-type)
 
-@item content-disposition
-Content-Disposition (@ref{Content-Disposition}) \e$BMs$N>pJs\e(B
-(mime-content-disposition)
 
-@item encoding
-entity \e$B$N\e(B Content-Transfer-Encoding (@ref{Content-Transfer-Encoding})
-(\e$BJ8;zNs\e(B)
+@node Entity hierarchy, Entity Attributes, Entity creation, Entity
+@section Entity \e$B3,AX\e(B
 
-@item children
-entity \e$B$K4^$^$l$k\e(B entity \e$B$N\e(B list (mime-entity \e$B$N\e(B 
-list)
+@defvar mime-message-structure
 
-@end table
+\e$B8=:_$N\e(B buffer \e$B$K$*$1$k\e(B message \e$BA4BN$N\e(B mime-entity \e$B9=B$BN$r3JG<$9$k\e(Bbuffer
+local \e$BJQ?t!#\e(B
+@end defvar
 
 
-\e$B$^$?!"2a5n$H$N8_49@-$N$?$a!"0J2<$NMWAGL>$N;2>H4X?t$bMxMQ2DG=$G$"$k!#\e(B
+@defun mime-entity-children entity
 
-@table @var
-@item type/subtype
-entity \e$B$N\e(B type/subtype (\e$BJ8;zNs\e(B)
+@var{entity} \e$B$K4^$^$l$k\e(B entity \e$B$N\e(B list \e$B$rJV$9!#\e(B
+@end defun
 
-@item media-type
-entity \e$B$N\e(B media-primary-type (symbol)
 
-@item media-subtype
-entity \e$B$N\e(B media-subtype (symbol)
+@defun mime-entity-parent entity  &optional  message
 
-@item parameters
-entity \e$B$N\e(B Content-Type \e$BMs$N\e(B parameter (\e$BO"A[\e(B list)
+@var{entity} \e$B$N?F$N\e(B entity \e$B$rJV$9!#\e(B@refill
 
-@end table
-@end deffn
+@var{message} \e$B$,;XDj$5$l$?>l9g!"$3$l$r:,$H8+Jo$9!#\e(B
+@end defun
 
 
-@defun make-mime-entity buffer header-start header-end body-start body-end
-          &optional  node-id content-type content-disposition encoding
-         children
+@defun mime-root-entity-p entity
 
-entity \e$B$N@8@.;R!#\e(B
+@var{entity} \e$B$,:,!JB($A!"\e(Bmessage \e$BA4BN!K$G$"$k>l9g$K!"Hs\e(B-@code{nil} \e$B$rJV\e(B
+\e$B$9!#\e(B
 @end defun
 
 
-@defun mime-entity-point-min entity
+@defun mime-entity-node-id entity
 
-entity \e$B$NB8:_$9$k\e(B buffer \e$B$K$*$1$k\e(B entity \e$B$N@hF,0LCV$rJV$9!#\e(B
+@var{entity} \e$B$N\e(B node-id \e$B$rJV$9!#\e(B
 @end defun
 
 
-@defun mime-entity-point-max entity
+@defun mime-entity-number entity
 
-entity \e$B$NB8:_$9$k\e(B buffer \e$B$K$*$1$k\e(B entity \e$B$NKvHx0LCV$rJV$9!#\e(B
+@var{entity} \e$B$N\e(B entity-number \e$B$rJV$9!#\e(B
 @end defun
 
 
+@defun mime-find-entity-from-number entity-number  &optional  message
 
-@node Message parser, Entity as node in message, mime-entity, Entity
-@section Message \e$B$N2r@O4o\e(B
-
-@defun mime-parse-message &optional  default-ctl default-encoding node-id
+Return entity from @var{entity-number} in @var{message}.@refill
 
-\e$B8=:_$N\e(B buffer \e$B$r9=J82r@O$7$?7k2L$rJV$9!#\e(B
+If @var{message} is not specified, @code{mime-message-structure} is
+used.
 @end defun
 
 
-@defun mime-parse-buffer &optional  buffer
+@defun mime-find-entity-from-node-id entity-node-id  &optional  message
 
-@var{buffer} \e$B$r9=J82r@O$7!"$=$N7k2L$r\e(B @var{buffer} \e$B$N\e(B
-@code{mime-message-structure} \e$B$K3JG<$9$k!#\e(B@refill
+Return entity from @var{entity-node-id} in @var{message}.@refill
 
-@var{buffer} \e$B$,>JN,$5$l$?>l9g!"8=:_$N\e(B buffer \e$B$r9=J82r@O$9$k!#\e(B
+If @var{message} is not specified, @code{mime-message-structure} is
+used.
 @end defun
 
 
 
-@node Entity as node in message, Entity-header, Message parser, Entity
-@section Entity \e$B$N0LCV4X78$K4X$9$k5!G=\e(B
+@node Entity Attributes, Entity-header, Entity hierarchy, Entity
+@section Entity \e$B$NB0@-\e(B
 
-@defvar mime-message-structure
+@defun mime-entity-content-type entity
 
-\e$B8=:_$N\e(B buffer \e$B$K$*$1$k\e(B message \e$BA4BN$N\e(B mime-entity \e$B9=B$BN$r3JG<$9$k\e(Bbuffer
-local \e$BJQ?t!#\e(B
-@end defvar
+@var{entity} \e$B$N\e(B content-type \e$B$rJV$9!#\e(B(cf. @ref{mime-content-type})
+@end defun
 
 
-@defun mime-entity-number entity
+@defun mime-entity-content-disposition entity
 
-@var{entity} \e$B$N\e(B entity-number \e$B$rJV$9!#\e(B
+@var{entity} \e$B$N\e(B content-disposition \e$B$rJV$9!#\e(B
+(cf. @ref{mime-content-disposition})
 @end defun
 
 
-@defun mime-entity-parent entity  &optional  message-structure
+@defun mime-entity-filename entity
 
-@var{entity} \e$B$N?F$N\e(B entity \e$B$rJV$9!#\e(B@refill
+Entity \e$B$N\e(B file \e$BL>$rJV$9!#\e(B
+@end defun
 
-@var{message-structure} \e$B$,>JN,$5$l$?>l9g$O\e(B entity \e$B$,B8:_$9$k\e(B buffer \e$B$K$*\e(B
-\e$B$1$k\e(B @code{mime-message-structure} \e$B$NCM$rMQ$$$k!#\e(B@refill
 
-@var{message-structure} \e$B$,;XDj$5$l$?>l9g!"$3$l$r:,$H8+Jo$9!#\e(B
+@defun mime-entity-encoding entity
+
+@var{entity} \e$B$N\e(B content-transfer-encoding \e$B$rJV$9!#\e(B
+(cf. @ref{Content-Transfer-Encoding})
 @end defun
 
 
-@defun mime-root-entity-p entity
+@defun mime-entity-cooked-p entity
 
-@var{entity} \e$B$,:,!JB($A!"\e(Bmessage \e$BA4BN!K$G$"$k>l9g$K!"Hs\e(B-@code{nil} \e$B$rJV\e(B
-\e$B$9!#\e(B
+Return non-nil if contents of @var{entity} has been already
+code-converted.
 @end defun
 
 
 
-@node Entity-header, Entity-content, Entity as node in message, Entity
+@node Entity-header, Entity-content, Entity Attributes, Entity
 @section Entity header \e$B$N>pJs\e(B
 
-@defun mime-fetch-field field-name
-            &optional  entity
+@defun mime-fetch-field field-name  &optional  entity
 
 @var{entity} \e$B$N\e(B header \e$BCf$N\e(B @var{field-name} \e$BMs$N\e(B body \e$B$rJV$9!#\e(B@refill
 
@@ -280,8 +263,7 @@ local \e$BJQ?t!#\e(B
 @end defun
 
 
-@defun mime-read-field field-name
-            &optional  entity
+@defun mime-read-field field-name  &optional  entity
 
 @var{entity} \e$B$N\e(B header \e$BCf$N\e(B @var{field-name} \e$BMs$r9=J82r@O$7$?7k2L$rJV$9!#\e(B
 @refill
@@ -299,7 +281,6 @@ local \e$BJQ?t!#\e(B
 
 
 @defun mime-insert-decoded-header entity  &optional  invisible-fields visible-fields
-           code-conversion
 
 \e$B8=:_0LCV$K\e(B @var{entity} \e$B$NI|9f$7$?\e(B header \e$B$rA^F~$9$k!#\e(B@refill
 
@@ -313,7 +294,7 @@ local \e$BJQ?t!#\e(B
 
 
 
-@node Entity-content,  , Entity-header, Entity
+@node Entity-content, Entity buffer, Entity-header, Entity
 @section Entity \e$B$NFbMF\e(B
 
 @defun mime-entity-content entity
@@ -322,6 +303,128 @@ local \e$BJQ?t!#\e(B
 @end defun
 
 
+@defun mime-write-entity-content entity filename
+
+Write content of @var{entity} into @var{filename}.
+@end defun
+
+
+@defun mime-write-entity entity filename
+
+Write representation of @var{entity} into @var{filename}.
+@end defun
+
+
+@defun mime-write-entity-body entity filename
+
+Write body of @var{entity} into @var{filename}.
+@end defun
+
+
+
+@node Entity buffer, mm-backend, Entity-content, Entity
+@section Entity \e$B$N\e(B buffer \e$B$K$h$kI=8=\e(B
+
+@defun mime-entity-buffer entity
+
+@var{entity} \e$B$,B8:_$9$k\e(B buffer \e$B$rJV$9!#\e(B
+@end defun
+
+
+@defun mime-entity-point-min entity
+
+@var{entity} \e$B$,B8:_$9$k\e(B buffer \e$B$K$*$1$k!"\e(B@var{entity} \e$B$,@j$a$kNN0h$N@hF,\e(B
+\e$B0LCV$rJV$9!#\e(B
+@end defun
+
+
+@defun mime-entity-point-max entity
+
+@var{entity} \e$B$,B8:_$9$k\e(B buffer \e$B$K$*$1$k!"\e(B@var{entity} \e$B$,@j$a$kNN0h$NKvHx\e(B
+\e$B0LCV$rJV$9!#\e(B
+@end defun
+
+
+@defun mime-entity-header-start entity
+
+@var{entity} \e$B$,B8:_$9$k\e(B buffer \e$B$K$*$1$k!"\e(Bheader \e$B$,@j$a$kNN0h$N@hF,0LCV$r\e(B
+\e$BJV$9!#\e(B
+@end defun
+
+
+@defun mime-entity-header-end entity
+
+@var{entity} \e$B$,B8:_$9$k\e(B buffer \e$B$K$*$1$k!"\e(Bheader \e$B$,@j$a$kNN0h$NKvHx0LCV$r\e(B
+\e$BJV$9!#\e(B
+@end defun
+
+
+@defun mime-entity-body-start entity
+
+@var{entity} \e$B$,B8:_$9$k\e(B buffer \e$B$K$*$1$k!"\e(Bbody \e$B$,@j$a$kNN0h$N@hF,0LCV$rJV\e(B
+\e$B$9!#\e(B
+@end defun
+
+
+@defun mime-entity-body-end entity
+
+@var{entity} \e$B$,B8:_$9$k\e(B buffer \e$B$K$*$1$k!"\e(Bbody \e$B$,@j$a$kNN0h$NKvHx0LCV$rJV\e(B
+\e$B$9!#\e(B
+@end defun
+
+
+
+@node mm-backend,  , Entity buffer, Entity
+@section Entity \e$B$NI=8=$H<B8=\e(B
+@cindex mm-backend
+@cindex entity \e$B=hM}\e(B method
+@cindex representation-type
+
+Entity \e$B$OCj>]2=$5$l$?%G!<%?I=8=$G!"<B:]$N%G!<%?I=8=$H$7$F$OMQES$K1~$8$F\e(B
+\e$B$5$^$6$^$J$b$N$,MxMQ$G$-$k$h$&$K@_7W$5$l$F$$$^$9!#\e(B@refill
+
+\e$B$3$3$G!"\e(Bentity \e$B$,$I$&$$$&<oN`$NI=8=$r9T$C$F$$$k$+$r<($9$N$,\e(B
+@strong{representation-type} \e$B$G!"\e(Bentity \e$B$r@8@.$9$k;~$K$O$3$l$r;XDj$7$^$9!#\e(B
+(cf. @ref{Entity Creation}) @refill
+
+\e$BA0@a$^$G$K=R$Y$FMh$?\e(B entity \e$B$KBP$9$k=hM}$O!"\e(Bentity \e$B$KBP$7$F$=$N=hM}$r0M\e(B
+\e$BMj$9$k$3$H$K$h$C$F<B8=$5$l$F$$$^$9!#\e(BEntity \e$B$O<+J,$N\e(B representation-type 
+\e$B$rCN$C$F$*$j!"$=$N\e(B representation-type \e$B$K1~$8$F<B:]$N=hM}$r9T$&4X?t$r8F\e(B
+\e$B$S=P$7$^$9!#$3$N$h$&$J4X?t$r\e(B @strong{entity \e$B=hM}\e(Bmethod} \e$B$H8F$S$^$9!#$^$?!"\e(B
+representation-type \e$BKh$K$3$N$h$&$J4X?t$r$^$H$a$?$b$N$r\e(B 
+@strong{mm-backend} \e$B$H8F$S$^$9!#\e(B@refill
+
+mm-backend \e$B$O\e(B representation-type \e$B$NL>A0$N@hF,$K\e(B @code{mm} \e$B$H$$$&\e(B
+\e$B@\F,<-$rIU$1$?4X?tL>$+$i$J$k\e(B module \e$B$G!"$=$N\e(B module \e$BL>$OF1MM$K\e(B
+representation-type \e$B$NL>A0$N@hF,$K\e(B @code{mm} \e$B$rIU$1$?$b$N$K$J$C$F\e(B
+\e$B$$$^$9!#$3$N\e(B module \e$B$O\e(B representation-type \e$B$N\e(B entity \e$B$,:G=i$K@8@.$5$l$k\e(B
+\e$B;~$K<+F0E*$K\e(B require \e$B$5$l$^$9!#\e(B
+
+
+@menu
+* Request for entity::          Entity \e$B$X$NJX$j\e(B
+* mm-backend module::           mm-backend \e$B$N:n$jJ}\e(B
+@end menu
+
+@node Request for entity, mm-backend module, mm-backend, mm-backend
+@subsection Entity \e$B$X$NJX$j\e(B
+
+@defun mime-entity-send entity message  &rest  args
+
+@var{entity} \e$B$K\e(B @var{message} \e$B$rAw$k!#\e(B@refill
+
+@var{args} \e$B$O\e(B @var{message} \e$B$N0z?t$G$"$k!#\e(B
+@end defun
+
+
+
+@node mm-backend module,  , Request for entity, mm-backend
+@subsection mm-backend \e$B$N:n$jJ}\e(B
+
+\e$B!J$9$_$^$;$s!#$=$N$&$A=q$-$^$9\e(B (^_^;\e$B!K\e(B@refill
+
+\e$B!J$H$j$"$($:!"\e(Bmm*.el \e$B$r;29M$K$7$F$/$@$5$$!K\e(B
+
 
 @node Content-Type, Content-Disposition, Entity, Top
 @chapter Content-Type \e$BMs$N>pJs\e(B
@@ -1290,7 +1393,7 @@ FLIM \e$B$N\e(B file \e$B$O\e(B CVS \e$B$r;H$C$F4IM}$5$l$F$$$^$9!#$3$N$?$a!"0J2<$NJ}K
 (1) checkout
 
     % cvs -d :pserver:anonymous@@chamonix.jaist.ac.jp:/hare/cvs/root \
-       checkout [-r TAG] gnus
+       checkout [-r TAG] flim
 @end example