annotate man/tm/tm-view-en.texi @ 98:0d2f883870bc r20-1b1

Import from CVS: tag r20-1b1
author cvs
date Mon, 13 Aug 2007 09:13:56 +0200
parents 0293115a14e9
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
8
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
1 \input texinfo.tex
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
2 @setfilename tm-view-en.info
16
0293115a14e9 Import from CVS: tag r19-15b91
cvs
parents: 10
diff changeset
3 @settitle{tm-view 7.80 Reference Manual (English Version)}
8
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
4 @titlepage
16
0293115a14e9 Import from CVS: tag r19-15b91
cvs
parents: 10
diff changeset
5 @title tm-view 7.80 Reference Manual (English Version)
8
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
6 @author MORIOKA Tomohiko <morioka@@jaist.ac.jp>
16
0293115a14e9 Import from CVS: tag r19-15b91
cvs
parents: 10
diff changeset
7 @subtitle 1997/1/31
8
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
8 @end titlepage
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
9 @node Top, Introduction, (dir), (dir)
16
0293115a14e9 Import from CVS: tag r19-15b91
cvs
parents: 10
diff changeset
10 @top tm-view 7.80 Reference Manual (English Version)
8
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
11
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
12 @ifinfo
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
13
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
14 This file documents tm-view, a MIME Viewer for GNU Emacs.
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
15 @end ifinfo
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
16
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
17 @menu
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
18 * Introduction:: What is tm-view?
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
19 * MIME display:: Structure of display in mime/viewer-mode
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
20 * mime/viewer-mode:: Navigation in mime/viewer-mode
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
21 * method:: Mechanism of decoding
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
22 * Two buffers for an article:: raw-article-buffer and preview-buffer
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
23 * API:: Functions to decode MIME message
10
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 8
diff changeset
24 * Acknowledgments::
8
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
25 * Concept Index::
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
26 * Function Index::
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
27 * Variable Index::
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
28 @end menu
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
29
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
30 @node Introduction, MIME display, Top, Top
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
31 @chapter What is tm-view?
10
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 8
diff changeset
32 @cindex filter
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 8
diff changeset
33 @cindex method
8
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
34
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
35 The tm-view is a general MIME viewer running on GNU Emacs.@refill
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
36
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
37 tm-view provides the major-mode called @code{mime/viewer-mode}
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
38 (@ref{mime/viewer-mode}) to read MIME message for MUA. MUA
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
39 (@ref{(tm-en)MUA}) implementer can use it to add MIME function.@refill
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
40
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
41 tm-view is a user interface kernel to view and navigate MIME message.
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
42 tm-view drives some programs to navigate each content-type
10
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 8
diff changeset
43 (@ref{(tm-en)content-type})s, they are called @strong{method}
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 8
diff changeset
44 (@ref{method}). tm-view calls some programs to display each contents
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 8
diff changeset
45 and headers in preview buffer, they are called @strong{filter} (@ref{Two buffers for an article}). Method and filters are tm-view application
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 8
diff changeset
46 program. They expand tm-view to treat various kinds of MIME types.
8
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
47
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
48
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
49 @node MIME display, mime/viewer-mode, Introduction, Top
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
50 @chapter Structure of display in mime/viewer-mode
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
51
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
52 In mime/viewer-mode (@ref{mime/viewer-mode}), following are displayed
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
53 for each parts:@refill
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
54
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
55 @example
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
56 [content-button]
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
57 (content-header)
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
58
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
59 (content-body)
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
60 (content-separator)
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
61 @end example
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
62
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
63 You can change design or stop to display if you specify for each
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
64 conditions, such as content-types.@refill
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
65
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
66 Example:
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
67
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
68 @example
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
69 From: morioka@@jaist.ac.jp (MORIOKA Tomohiko)
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
70 Subject: Re: Question
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
71 Newsgroups: zxr.message.mime
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
72 Date: 22 Oct 93 11:02:44
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
73 Mime-Version: 1.0
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
74 Organization: Japan Advanced Institute of Science and Technology,
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
75 Ishikawa, Japan
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
76
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
77 [1 (text/plain)]
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
78 How to compose MIME message in MIME-Edit mode.
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
79
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
80 Press `C-c C-x ?' then help message will be displayed:
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
81
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
82 C-c C-x C-t insert a text message.
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
83 C-c C-x TAB insert a (binary) file.
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
84 C-c C-x C-e insert a reference to external body.
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
85 C-c C-x C-v insert a voice message.
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
86 C-c C-x C-y insert a mail or news message.
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
87 C-c C-x RET insert a mail message.
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
88 C-c C-x C-s insert a signature file at end.
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
89 C-c C-x t insert a new MIME tag.
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
90 C-c C-x a enclose as multipart/alternative.
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
91 C-c C-x p enclose as multipart/parallel.
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
92 C-c C-x m enclose as multipart/mixed.
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
93 C-c C-x d enclose as multipart/digest.
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
94 C-c C-x s enclose as PGP signed.
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
95 C-c C-x e enclose as PGP encrypted.
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
96 C-c C-x C-k insert PGP public key.
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
97 C-c C-x C-p preview editing MIME message.
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
98 ...
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
99
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
100 So press `C-c C-x C-i' and specify file name you want to include.
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
101
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
102 MIME encoding for binary file is normally Base64.
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
103
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
104 [2 (image/gif)]
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
105
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
106 [3 (text/plain)]
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
107
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
108 In this way, it is finish a message attaching a picture.
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
109
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
110 ======================== A cup of Russian tea ========================
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
111 ============ * not by jam, not by marmalade, by honey * ============
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
112 ============ MORIOKA Tomohiko ============
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
113 =============== Internet E-mail: <morioka@@jaist.ac.jp> ===============
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
114 @end example
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
115
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
116
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
117
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
118 @menu
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
119 * content-button::
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
120 * content-header::
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
121 * content-body::
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
122 * content-separator::
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
123 @end menu
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
124
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
125 @node content-button, content-header, MIME display, MIME display
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
126 @section content-button
10
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 8
diff changeset
127 @cindex content-number
8
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
128
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
129 content-subject displays abstract for the part. It is placed in top of
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
130 the part.@refill
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
131
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
132 In default, it is displayed following design:
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
133
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
134 @example
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
135 [1.3 test (text/plain)]
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
136 @end example
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
137
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
138
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
139 First number field represents position of a content in the part. It is
10
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 8
diff changeset
140 called @strong{content-number}. It can be considered as the chapter
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 8
diff changeset
141 number in the message.@refill
8
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
142
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
143 Second string part represents title. It is created by following:
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
144
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
145 @enumerate
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
146 @item
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
147 name paramater or x-name parameter in Content-Type field
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
148 (@ref{(tm-en)Content-Type field})
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
149 @item
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
150 Content-Description field (@ref{(tm-en)Content-Description field}) or
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
151 Subject field
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
152 @item
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
153 filename of uuencode
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
154 @end enumerate
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
155
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
156
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
157 If they are not exists, space is displayed.@refill
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
158
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
159 Third parenthesis part represents content-type/subtype of the part. If
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
160 it is non-MIME part, @code{nil} is displayed.@refill
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
161
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
162 Content-button is used like icon when content-header
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
163 (@ref{content-header}) and content-body (@ref{content-body}) are hidden.
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
164 For example:
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
165
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
166 @example
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
167 [2 (image/gif)]
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
168 @end example
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
169
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
170 @noindent
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
171 if you press @kbd{v} key, GIF image is displayed.
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
172
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
173 If mouse operations are available, you can press content-button by mouse
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
174 button-2 (center button of 3 button-mouse) to play, similarly to press
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
175 @kbd{v} key. (cf. @ref{mime/viewer-mode}) @refill
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
176
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
177 By the way, it is annoying to display content-button if content-header
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
178 is displayed. So tm-view provides a mechanism to specify conditions
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
179 to display content-button.
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
180
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
181
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
182 @defvar mime-viewer/content-button-ignored-ctype-list
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
183
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
184 List of content-types.@refill
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
185
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
186 If content-type of a part is a member of this list, its content-button
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
187 is not displayed.
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
188 @end defvar
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
189
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
190
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
191
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
192 @node content-header, content-body, content-button, MIME display
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
193 @section content-header
10
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 8
diff changeset
194 @cindex content-header-filter
8
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
195
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
196 A content header displays the header portion of a part in the
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
197 preview-buffer. However it is annoying to display header for every
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
198 parts, so tm-view provides a mechanism to specify its condition.@refill
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
199
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
200 When the function @code{mime-viewer/header-visible-p} returns @code{t}
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
201 for reversed-content-number of a part, content-header is
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
202 displayed.@refill
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
203
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
204 This judge function returns @code{t} when a part is root or content-type
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
205 of its parent is a member of the variable
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
206 @code{mime-viewer/childrens-header-showing-Content-Type-list}.@refill
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
207
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
208 If you want to change this condition, please redefine it. Notice that
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
209 it refers variable
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
210 @code{mime-viewer/childrens-header-showing-Content-Type-list}, however
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
211 if you redefine function @code{mime-viewer/header-visible-p}, it may not
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
212 work. So if you want to redefine it, it should be refer variable
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
213 @code{mime-viewer/childrens-header-showing-Content-Type-list}.@refill
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
214
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
215 When content-header is displayed, content-header are formated by the
10
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 8
diff changeset
216 program called by @strong{content-header-filter}. Content-header-filter
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 8
diff changeset
217 is searched from variable
8
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
218 @code{mime-viewer/content-header-filter-alist}. Its key is major-mode
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
219 of the raw-article-buffer (@ref{raw-article-buffer}). If not found,
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
220 function @code{mime-viewer/default-content-header-filter} is
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
221 called.@refill
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
222
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
223
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
224 @defvar mime-viewer/childrens-header-showing-Content-Type-list
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
225
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
226 List of content-types. If content-type of parent of a part is a member
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
227 of this variable, its content-header is displayed. Default value is
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
228 @code{'("message/rfc822" "message/news")}.@refill
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
229
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
230 This variable is referred by the function
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
231 @code{mime-viewer/header-visible-p}.
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
232 @end defvar
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
233
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
234
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
235
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
236 @defun mime-viewer/header-visible-p rcnum cinfo &optional ctype
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
237
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
238 Returns @code{t} if a part which reversed-content-number is @var{rcnum}
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
239 in content-info @var{cinfo} is displayed.@refill
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
240
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
241 If you know content-type, you can specify by @var{ctype}.
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
242 @end defun
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
243
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
244
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
245
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
246 @defvar mime-viewer/content-header-filter-alist
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
247
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
248 Association-list whose key is major-mode of a raw-article-buffer, value
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
249 is content-header-filter.
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
250 @end defvar
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
251
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
252
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
253
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
254 @defun mime-viewer/default-content-header-filter
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
255
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
256 It is called when content-header-filter is not found in variable
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
257 @code{mime-viewer/content-header-filter-alist}.@refill
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
258
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
259 It refers @code{mime-viewer/ignored-field-regexp}.
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
260 @end defun
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
261
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
262
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
263
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
264 @defvar mime-viewer/ignored-field-list
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
265
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
266 List of regular expression to represent invisible fields even if
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
267 content-header is displayed.@refill
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
268
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
269 Variable @code{mime-viewer/ignored-field-regexp} is created from
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
270 it.@refill
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
271
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
272 Please use function @code{tm:add-fields} or @code{tm:delete-fields} to
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
273 set it.
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
274 @end defvar
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
275
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
276
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
277
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
278 @node content-body, content-separator, content-header, MIME display
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
279 @section content-body
10
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 8
diff changeset
280 @cindex content-filter
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 8
diff changeset
281 @cindex content-body
8
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
282
10
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 8
diff changeset
283 @strong{content-body} represents content of the part.@refill
8
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
284
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
285 tm-view does not display raw content body. For example, if a content
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
286 has binary, it is hidden. If a content has text/enriched, it is
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
287 formated. Namely content body is hidden or formated.@refill
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
288
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
289 Function @code{mime-viewer/body-visible-p} is a judge function whether
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
290 content-body of a content is displayed. If it returns @code{nil},
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
291 content-body is hidden. In default, it returns non-@code{nil} when
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
292 content-type of a part is a member of variable
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
293 @code{mime-viewer/default-showing-Content-Type-list}.@refill
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
294
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
295 When content-body of a content is displayed, content-body is formated by
10
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 8
diff changeset
296 @strong{content-filter}. Content-filter is searched from variable
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 8
diff changeset
297 @code{mime-viewer/content-filter-alist}. At this time, major-mode of
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 8
diff changeset
298 the raw-article-buffer (@ref{raw-article-buffer}) is used as the key.
8
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
299
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
300 If it is not found, function
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
301 @code{mime-viewer/default-content-filter} is called.
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
302
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
303
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
304 @defvar mime-viewer/default-showing-Content-Type-list
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
305
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
306 List of content-type. If content-type of a part is a member of this
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
307 variable, its body is displayed.
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
308 @end defvar
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
309
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
310
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
311
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
312 @defun mime-viewer/body-visible-p rcnum cinfo &optional ctype
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
313
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
314 Return non-@code{nil}, if content-type of a part is displayed.
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
315 @var{rcnum} is reversed-content-number of a part. @var{cinfo} is
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
316 content-info of the message. If you know content-type of a part, you
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
317 can specify it as argument @var{ctype}.
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
318 @end defun
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
319
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
320
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
321
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
322 @defvar mime-viewer/content-filter-alist
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
323
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
324 Association-list whose key is major-mode of a raw-article-buffer, value
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
325 is content-filter.
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
326 @end defvar
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
327
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
328
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
329
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
330 @defun mime-viewer/default-content-filter rcnum cinfo ctype params subj
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
331
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
332 It is called when content-body of a part should be displayed and
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
333 content-filter is not found in
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
334 @code{mime-viewer/content-filter-alist}.@refill
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
335
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
336 In default, it does nothing.
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
337 @end defun
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
338
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
339
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
340
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
341 @node content-separator, , content-body, MIME display
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
342 @section content-separator
10
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 8
diff changeset
343 @cindex content-separator
8
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
344
10
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 8
diff changeset
345 @strong{content-separator} is displayed to represent boundary of
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 8
diff changeset
346 contents.@refill
8
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
347
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
348 Content-separator is displayed by function
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
349 @code{mime-viewer/default-content-separator}. In default, it displays
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
350 line-break when content-header and content-body are not
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
351 displayed.@refill
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
352
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
353 If you want to change this condition, please redefine this function.
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
354
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
355
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
356 @defun mime-viewer/default-content-separator rcnum cinfo ctype params subj
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
357
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
358 Display content-separator. @var{cnum} is content-number of a content.
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
359 @var{cinfo} is content-info of the message. @var{ctype} is content-type
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
360 of a content. @var{params} is Content-Type field parameters of a
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
361 content. @var{subj} is subject.@refill
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
362
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
363 In default, it displays line-break when content-header and content-body
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
364 are not displayed.
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
365 @end defun
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
366
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
367
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
368
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
369 @node mime/viewer-mode, method, MIME display, Top
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
370 @chapter Navigation in mime/viewer-mode
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
371
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
372 @code{mime/viewer-mode} has following functions:@refill
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
373
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
374 @table @kbd
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
375 @item @key{u}
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
376 goes to the upper content (returns to the Summary mode if the cursor
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
377 is sitting on the top content (*1))
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
378
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
379 @item @key{p}
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
380 goes to the previous content
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
381
16
0293115a14e9 Import from CVS: tag r19-15b91
cvs
parents: 10
diff changeset
382 @item @key{M-TAB}
0293115a14e9 Import from CVS: tag r19-15b91
cvs
parents: 10
diff changeset
383 goes to the previous content
0293115a14e9 Import from CVS: tag r19-15b91
cvs
parents: 10
diff changeset
384
8
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
385 @item @key{n}
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
386 goes to the next content
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
387
16
0293115a14e9 Import from CVS: tag r19-15b91
cvs
parents: 10
diff changeset
388 @item @key{TAB}
0293115a14e9 Import from CVS: tag r19-15b91
cvs
parents: 10
diff changeset
389 goes to the next content
0293115a14e9 Import from CVS: tag r19-15b91
cvs
parents: 10
diff changeset
390
8
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
391 @item @key{SPC}
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
392 scrolls up
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
393
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
394 @item @key{M-SPC}
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
395 scrolls down
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
396
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
397 @item @key{DEL}
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
398 scrolls down
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
399
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
400 @item @key{RET}
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
401 goes to the next line
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
402
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
403 @item @key{M-RET}
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
404 goes to the previous line
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
405
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
406 @item @key{<}
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
407 goes to the beginning of message
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
408
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
409 @item @key{>}
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
410 goes to the end of message
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
411
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
412 @item @key{v}
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
413 playbacks a part (*2)
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
414
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
415 @item @key{e}
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
416 extracts a file from a part (*2)
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
417
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
418 @item @key{C-c C-p}
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
419 prints a part (*2)
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
420
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
421 @item @key{f}
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
422 displays X-Face in the message
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
423
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
424 @item @key{mouse-button-2}
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
425 drives mouse button in preview-buffer.
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
426
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
427 For content-button, it playbacks a part (*2)@refill
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
428
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
429 For URL-button, it drives WWW browser@refill
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
430
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
431 @end table
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
432
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
433 @noindent
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
434 @strong{[Notice]}
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
435 @quotation
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
436
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
437 (*1) Not return to the Summary mode unless tm-view has been setup using
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
438 tm-mh-e, tm-vm, gnus-mime, tm-gnus, tm-rmail etc.@refill
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
439
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
440 (*2) Actual playback/extract/print will be performed by a method.
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
441 @end quotation
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
442
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
443
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
444
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
445 @node method, Two buffers for an article, mime/viewer-mode, Top
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
446 @chapter Mechanism of decoding
10
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 8
diff changeset
447 @cindex external method
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 8
diff changeset
448 @cindex internal method
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 8
diff changeset
449 @cindex method
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 8
diff changeset
450 @cindex decoding-mode
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 8
diff changeset
451 @cindex decoding operation(s) (for a part)
8
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
452
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
453 In @code{mime/viewer-mode}, you can do play (@kbd{v}), extract
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
454 (@kbd{e}), or print (@kbd{C-c C-p}) for each parts. These operations
10
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 8
diff changeset
455 are called @strong{decoding operation(s) (for a part)}. And kind of
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 8
diff changeset
456 decoding operations are called @strong{decoding-mode}.@refill
8
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
457
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
458 When decoding operation is driven, tm-view calls a procedure matched for
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
459 the condition, such as content-type (@ref{(tm-en)content-type}) of the
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
460 part or its environment. This procedure is called
10
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 8
diff changeset
461 @strong{method}.@refill
8
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
462
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
463 There are two kinds of methods. One is Emacs Lisp function, called
10
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 8
diff changeset
464 @strong{internal method}. Another one is external program, called
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 8
diff changeset
465 @strong{external method}.@refill
8
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
466
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
467 Internal method operates in Emacs, so it can do carefully.@refill
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
468
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
469 External method is called as asynchronous process, so Emacs does not
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
470 wait while method is running. So it is good for big data, such as
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
471 audio, image or video.
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
472
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
473
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
474 @menu
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
475 * decoding-condition:: Setting decoding condition for parts
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
476 * environment variables:: Environment variables
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
477 @end menu
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
478
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
479 @node decoding-condition, environment variables, method, method
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
480 @section Setting decoding condition for parts
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
481
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
482 When decoding operation is driven, tm-view calls a method matched for
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
483 the condition searched from the variable
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
484 @code{mime/content-decoding-condition}.@refill
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
485
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
486 Variable @code{mime/content-decoding-condition} is defined as a list
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
487 with the following syntax:@refill
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
488
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
489 @lisp
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
490 (condition_1 condition_2 ...)
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
491 @end lisp
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
492
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
493 Each condition are association-list with the following syntax:@refill
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
494
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
495 @lisp
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
496 ((field-type_1 . value_1)
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
497 (field-type_2 . value_2)
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
498 ...)
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
499 @end lisp
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
500
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
501 For example, if you want to call the external method named tm-plain to
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
502 decode every text/plain (@ref{(tm-en)text/plain}) type parts, you can
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
503 define the condition like:@refill
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
504
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
505 @lisp
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
506 ((type . "text/plain")
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
507 (method "tm-plain" nil 'file 'type 'encoding 'mode 'name))
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
508 @end lisp
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
509
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
510 This condition definition will match all parts whose content-type
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
511 (@ref{(tm-en)content-type}) are text/plain. Here is an another
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
512 example:@refill
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
513
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
514 @lisp
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
515 ((type . "text/plain")
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
516 (method "tm-plain" nil 'file 'type 'encoding 'mode 'name)
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
517 (mode . "play"))
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
518 @end lisp
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
519
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
520 This will match the part whose type is text/plain and the mode is
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
521 play.@refill
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
522
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
523 Here is an another example:@refill
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
524
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
525 @lisp
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
526 ((method "metamail" t "-m" "tm" "-x" "-d" "-z" "-e" 'file)
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
527 (mode . "play"))
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
528 @end lisp
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
529
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
530 This will match all parts which have a mode of play.@refill
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
531
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
532 The conditions defined in a variable
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
533 @code{mime/content-decoding-condition} are examined from top to
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
534 bottom. The first matching condition becomes valid and the method
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
535 specified in that condition definition will be executed.
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
536
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
537
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
538 @menu
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
539 * method value:: Format of method value
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
540 * Example of decoding-condition::
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
541 @end menu
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
542
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
543 @node method value, Example of decoding-condition, decoding-condition, decoding-condition
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
544 @subsection Format of method value
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
545
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
546 You can specify the method field of the decoding-condition definition in
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
547 two different ways,@refill
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
548
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
549 @lisp
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
550 (method . SYMBOL)
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
551 @end lisp
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
552
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
553 @noindent
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
554 or
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
555
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
556 @lisp
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
557 (method STRING FLAG arg1 arg2 ...)
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
558 @end lisp
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
559
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
560 @noindent
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
561 can be accepted.
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
562
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
563 When a symbol is specified in the method field, a function whose name is
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
564 SYMBOL will be called as an internal method.@refill
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
565
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
566 When a list is specified in the method field, it will be called as an
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
567 external method.@refill
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
568
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
569 The list below shows the meaning of the parameters when the external
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
570 method is specified in the method field.@refill
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
571
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
572 @table @samp
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
573 @item STRING
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
574 name of an external method
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
575
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
576 @item FLAG
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
577 If @code{t}, both the content-header and the content-body
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
578 are passed to an external method.
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
579
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
580 If @code{nil}, only the content-body is passed to an external
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
581 method.@refill
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
582
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
583 @item ARGUMENTs
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
584 list of arguments passed to an external method
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
585
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
586 @end table
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
587
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
588 An argument passed to an external method can be in one of the following
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
589 formats:@refill
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
590
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
591 @table @samp
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
592 @item STRING
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
593 string itself
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
594
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
595 @item 'SYMBOL
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
596 value gotten using SYMBOL as a key from decoding-condition
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
597
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
598 @item 'STRING
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
599 value gotten using STRING as a key from decoding-condition
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
600
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
601 @end table
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
602
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
603 @code{'SYMBOL} can be one of the following:@refill
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
604
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
605 @table @samp
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
606 @item 'file
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
607 name of a file holding the original content
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
608
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
609 @item 'type
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
610 content-type/sub-type of Content-Type field
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
611
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
612 @item 'encoding
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
613 field body of Content-Transfer-Encoding field
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
614
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
615 @item 'mode
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
616 decoding-mode
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
617
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
618 @item 'name
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
619 name of a file created by decode operation
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
620
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
621 @end table
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
622
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
623
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
624 @code{'STRING} is used to search a parameter of the Content-Type
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
625 field whose name matches with it, and pass the value of that parameter
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
626 to the external method.
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
627
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
628
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
629 @node Example of decoding-condition, , method value, decoding-condition
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
630 @subsection Example of decoding-condition
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
631
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
632 Following is an example of decoding-condition:
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
633
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
634 @lisp
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
635 (defvar mime/content-decoding-condition
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
636 '(((type . "text/plain")
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
637 (method "tm-plain" nil 'file 'type 'encoding 'mode 'name))
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
638 ((type . "text/x-latex")
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
639 (method "tm-latex" nil 'file 'type 'encoding 'mode 'name))
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
640 ((type . "audio/basic")
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
641 (method "tm-au" nil 'file 'type 'encoding 'mode 'name))
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
642 ((type . "image/gif")
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
643 (method "tm-image" nil 'file 'type 'encoding 'mode 'name))
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
644 ((type . "image/jpeg")
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
645 (method "tm-image" nil 'file 'type 'encoding 'mode 'name))
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
646 ((type . "image/tiff")
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
647 (method "tm-image" nil 'file 'type 'encoding 'mode 'name))
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
648 ((type . "image/x-tiff")
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
649 (method "tm-image" nil 'file 'type 'encoding 'mode 'name))
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
650 ((type . "image/x-xbm")
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
651 (method "tm-image" nil 'file 'type 'encoding 'mode 'name))
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
652 ((type . "image/x-pic")
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
653 (method "tm-image" nil 'file 'type 'encoding 'mode 'name))
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
654 ((type . "video/mpeg")`
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
655 (method "tm-mpeg" nil 'file 'type 'encoding 'mode 'name))
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
656 ((type . "application/octet-stream")
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
657 (method "tm-file" nil 'file 'type 'encoding 'mode 'name))
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
658 ((type . "message/partial")
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
659 (method . mime/decode-message/partial-region))
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
660 ((method "metamail" t
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
661 "-m" "tm" "-x" "-d" "-z" "-e" 'file)(mode . "play"))
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
662 ))
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
663 @end lisp
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
664
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
665
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
666 For example, if you want to use metamail to decode any contents,
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
667
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
668 @lisp
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
669 (setq mime/content-decoding-condition
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
670 '(
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
671 ((method "metamail" t "-m" "tm" "-x" "-d" "-z" "-e" 'file))
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
672 ))
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
673 @end lisp
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
674
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
675 @noindent
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
676 will work.
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
677
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
678 Variable @code{mime/content-decoding-condition} provides you of very
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
679 flexible way to define the conditions of decoding. It can be simple if
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
680 you only need the a few decoding methods, while it can be very
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
681 complicated if you want to use the separate decoding method for each
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
682 type/mode combination.@refill
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
683
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
684 Following function may be useful to set decoding-condition. It is a
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
685 function of @file{tl-atype.el}.
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
686
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
687
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
688 @defun set-atype symbol alist
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
689
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
690 Add condition @var{alist} to @var{symbol}.
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
691
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
692 @noindent
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
693 @strong{[Example]}
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
694 @quotation
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
695
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
696 @lisp
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
697 (set-atype 'mime/content-decoding-condition
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
698 '((type . "message/external-body")
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
699 ("access-type" . "anon-ftp")
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
700 (method . mime/decode-message/external-ftp)
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
701 ))
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
702 @end lisp
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
703 @end quotation
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
704 @end defun
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
705
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
706
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
707
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
708 @node environment variables, , decoding-condition, method
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
709 @section Environment variables
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
710
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
711 Standard methods of tm-view reference some environment variables. You
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
712 can specify them to customize.
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
713
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
714 @table @var
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
715 @item TM_TMP_DIR
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
716 Directory for temporary files or extracted files. If it is omitted,
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
717 @file{/tmp/} is used.
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
718
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
719 @item VIDEO_DITHER
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
720 Dither for mpeg_play. If it is omitted, `gray' is used.
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
721
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
722 @item TM_WWW_BROWSER
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
723 WWW browser name. If it is omitted, `netscape' is used.
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
724
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
725 @end table
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
726
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
727
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
728
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
729 @node Two buffers for an article, API, method, Top
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
730 @chapter raw-article-buffer and preview-buffer
10
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 8
diff changeset
731 @cindex filter
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 8
diff changeset
732 @cindex content-filter
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 8
diff changeset
733 @cindex header-filter
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 8
diff changeset
734 @cindex preview-buffer
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 8
diff changeset
735 @cindex raw-article-buffer
8
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
736
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
737 tm-view managements two buffers, one is for raw message called
10
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 8
diff changeset
738 @strong{raw-article-buffer}, another one is to preview for user called
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 8
diff changeset
739 @strong{preview-buffer}. major-mode of raw-article-buffer is same as
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 8
diff changeset
740 major-mode for article of original MUA, major-mode of preview-buffer is
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 8
diff changeset
741 @code{mime/viewer-mode} (@ref{mime/viewer-mode}).@refill
8
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
742
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
743 When called @code{mime/viewer-mode}, tm-view analyzes
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
744 raw-article-buffer, and sets its result to the variable
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
745 @code{mime::article/content-info}.@refill
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
746
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
747 After that, tm-view create a preview-buffer corresponded to the
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
748 raw-article-buffer. As this time, tm-view modifies header and body of
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
749 each parts of the message by specified conditions. Filter program for
10
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 8
diff changeset
750 header is called @strong{header-filter} (@ref{content-header}), filter
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 8
diff changeset
751 program for body is called @strong{content-filter} (@ref{content-body}),
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 8
diff changeset
752 and they are called @strong{filter}.@refill
8
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
753
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
754 When preview-buffer is made, buffer local variable of preview-buffer
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
755 @code{mime::preview/content-list} is made to register structure of
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
756 preview-buffer. tm-view manages message by
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
757 @code{mime::article/content-info} in raw-article-buffer and
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
758 @code{mime::preview/content-list} in preview-buffer.@refill
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
759
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
760 @noindent
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
761 @strong{[Notice]}
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
762 @quotation
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
763 In this document, I call ``content-type'' as content-type/subtype of
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
764 Content-Type field.
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
765 @end quotation
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
766
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
767
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
768
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
769 @menu
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
770 * raw-article-buffer:: buffer local variables of raw-article-buffer
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
771 * preview-buffer:: Buffer local variables of preview-buffer
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
772 @end menu
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
773
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
774 @node raw-article-buffer, preview-buffer, Two buffers for an article, Two buffers for an article
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
775 @section buffer local variables of raw-article-buffer
10
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 8
diff changeset
776 @cindex content-info
8
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
777
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
778 @deffn{Structure} mime::content-info rcnum point-min point-max type parameters encoding children
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
779
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
780 structure to represent MIME content in raw-article-buffer. It is called
10
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 8
diff changeset
781 by @strong{content-info}.@refill
8
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
782
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
783 Please use reference function @code{mime::content-info/SLOT-NAME} to
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
784 reference slot of content-info. Their argument is only
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
785 content-info.@refill
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
786
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
787 Following is a list of slots of the structure:
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
788
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
789 @table @var
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
790 @item rcnum
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
791 ``reversed content-number'' (list)
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
792
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
793 @item point-min
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
794 beginning point of region in raw-article-buffer
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
795
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
796 @item point-max
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
797 end point of region in raw-article-buffer
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
798
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
799 @item type
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
800 content-type/sub-type (string or nil)
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
801
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
802 @item parameters
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
803 parameter of Content-Type field (association list)
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
804
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
805 @item encoding
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
806 Content-Transfer-Encoding (string or nil)
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
807
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
808 @item children
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
809 parts included in this part (list of content-infos)
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
810
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
811 @end table
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
812
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
813 If a part includes other parts in its contents, such as multipart or
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
814 message/rfc822, content-infos of other parts are included in
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
815 @var{children}, so content-info become a tree.
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
816 @end deffn
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
817
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
818
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
819 @defvar mime::article/content-info
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
820
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
821 result of MIME parsing of raw-article-buffer (content-info)
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
822 @end defvar
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
823
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
824
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
825 @defvar mime::article/preview-buffer
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
826
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
827 preview-buffer corresponded by this buffer
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
828 @end defvar
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
829
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
830
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
831 @defun mime-article/point-content-number point &optional cinfo
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
832
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
833 In a region managed by content-info @var{cinfo}, it returns
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
834 content-number corresponded by @var{point}.@refill
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
835
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
836 If @var{cinfo} is omitted, @code{mime::article/content-info} is used as
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
837 default value.
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
838 @end defun
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
839
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
840
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
841 @defun mime-article/rcnum-to-cinfo rcnum &optional cinfo
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
842
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
843 In a region managed by content-info @var{cinfo}, it returns content-info
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
844 corresponded by reversed-content-number @var{rcnum}.@refill
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
845
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
846 If @var{cinfo} is omitted, @code{mime::article/content-info} is used as
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
847 default value.
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
848 @end defun
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
849
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
850
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
851 @defun mime-article/cnum-to-cinfo rcnum &optional cinfo
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
852
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
853 In a region managed by content-info @var{cinfo}, it returns content-info
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
854 corresponded by content-number @var{rcnum}.@refill
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
855
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
856 If @var{cinfo} is omitted, @code{mime::article/content-info} is used as
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
857 default value.
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
858 @end defun
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
859
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
860
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
861 @defun mime/flatten-content-info &optional cinfo
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
862
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
863 It returns flatten list of content-info from content-info @var{cinfo}
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
864 tree.@refill
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
865
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
866 If @var{cinfo} is omitted, @code{mime::article/content-info} is used as
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
867 default value.
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
868 @end defun
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
869
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
870
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
871
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
872 @node preview-buffer, , raw-article-buffer, Two buffers for an article
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
873 @section Buffer local variables of preview-buffer
10
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 8
diff changeset
874 @cindex preview-content-info
8
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
875
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
876 @defvar mime::preview/mother-buffer
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
877
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
878 Mother buffer of this preview-buffer.
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
879 @end defvar
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
880
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
881
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
882 @deffn{Structure} mime::preview-content-info point-min point-max buffer content-info
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
883
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
884 structure to represent MIME content in preview-buffer. It is called by
10
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 8
diff changeset
885 @strong{preview-content-info}.@refill
8
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
886
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
887 Please use reference function
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
888 @code{mime::preview-content-info/SLOT-NAME} to reference slot of
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
889 preview-content-info. Their argument is only
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
890 preview-content-info.@refill
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
891
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
892 Following is a list of slots of the structure:
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
893
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
894 @table @var
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
895 @item point-min
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
896 beginning point of region in preview-buffer
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
897
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
898 @item point-max
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
899 end point of region in preview-buffer
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
900
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
901 @item buffer
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
902 raw-article-buffer corresponding a part
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
903
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
904 @item content-info
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
905 content-info corresponding a part
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
906
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
907 @end table
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
908 @end deffn
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
909
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
910
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
911
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
912 @defvar mime::preview/content-list
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
913
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
914 List of preview-content-info to represent structure of this
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
915 preview-buffer.
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
916 @end defvar
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
917
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
918
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
919
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
920 @defvar mime::preview/article-buffer
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
921
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
922 raw-article-buffer corresponded by this preview-buffer.
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
923 @end defvar
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
924
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
925
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
926
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
927 @defvar mime::preview/original-major-mode
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
928
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
929 major-mode of original buffer.
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
930 @end defvar
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
931
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
932
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
933
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
934 @defvar mime::preview/original-window-configuration
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
935
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
936 window-configuration just before made this preview-buffer.
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
937 @end defvar
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
938
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
939
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
940
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
941 @defun mime-preview/point-pcinfo point &optional pcl
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
942
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
943 In a region of preview-buffer managed by preview-content-info @var{pcl},
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
944 it returns preview-content-info corresponded by @var{point}.@refill
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
945
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
946 If @var{cinfo} is omitted, @code{mime::preview/content-list} is used.
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
947 @end defun
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
948
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
949
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
950
10
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 8
diff changeset
951 @node API, Acknowledgments, Two buffers for an article, Top
8
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
952 @chapter Functions to decode MIME message
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
953
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
954 tm-view provides some available functions to decode and navigate MIME
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
955 message to each MUA (@ref{(tm-en)MUA})s.@refill
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
956
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
957 There are 2 kinds of functions, one is for MIME preview, another one is
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
958 to decode RFC 1522 encoded-word (@ref{(tm-en)encoded-word}).
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
959
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
960
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
961 @menu
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
962 * API about MIME preview:: Function to preview MIME message
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
963 * encoded-word decoding:: encoded-word decoder
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
964 @end menu
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
965
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
966 @node API about MIME preview, encoded-word decoding, API, API
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
967 @section Function to preview MIME message
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
968
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
969
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
970 @deffn{Command} mime/viewer-mode &optional mother ctl encoding ibuf obuf mother-keymap
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
971
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
972 Parse @var{ibuf} as a MIME message, and create preview-buffer into
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
973 @var{obuf} to display to user, then enter @code{mime/viewer-mode}
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
974 (@ref{mime/viewer-mode}).@refill
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
975
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
976 If @var{ibuf} is omitted, current buffer is used.@refill
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
977
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
978 @var{mother} is used to specify original raw-article-buffer. It may be
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
979 useful when a raw-article-buffer is assembled from message/partial
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
980 messages.@refill
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
981
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
982 @var{ctl} is used to specify Content-Type field
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
983 (@ref{(tm-en)Content-Type field}) information. Its format is output
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
984 format of @code{mime/Content-Type}. When @var{ctl} is specified,
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
985 tm-view uses it instead of Content-Type field of the
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
986 raw-article-buffer.@refill
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
987
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
988 @var{encoding} is used to specify field-body of
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
989 Content-Transfer-Encoding field. When is is specified, tm-view uses it
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
990 instead of Content-Type field of the raw-article-buffer.@refill
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
991
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
992 If @var{mother-keymap} is specified, keymap of @code{mime/viewer-mode}
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
993 includes it.
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
994 @end deffn
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
995
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
996
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
997
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
998 @node encoded-word decoding, , API about MIME preview, API
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
999 @section encoded-word decoder
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
1000
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
1001 tm-view has functions to decode RFC 1522 encoded-word
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
1002 (@ref{(tm-en)encoded-word}).
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
1003
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
1004
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
1005 @deffn{Command} mime/decode-message-header
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
1006
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
1007 It decodes encoded-words in message header of current buffer.@refill
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
1008
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
1009 If an encoded-word is broken or invalid, or it has non supported MIME
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
1010 charset (@ref{(tm-en)MIME charset}), it is not decoded.
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
1011 @end deffn
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
1012
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
1013
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
1014
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
1015 @deffn{Command} mime-eword/decode-region start end &optional unfolding must-unfold
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
1016
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
1017 It decodes encoded-words in region @var{start} to @var{end}.@refill
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
1018
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
1019 If an encoded-word is broken or invalid, or it has non supported MIME
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
1020 charset (@ref{(tm-en)MIME charset}), it is not decoded.@refill
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
1021
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
1022 If @var{unfolding} is non-nil, it unfolds folded fields.@refill
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
1023
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
1024 If @var{must-fold} is non-nil and decoded result of an encoded-word has
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
1025 folding or raw CR or LF, it unfolds or delete raw CR or LF.
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
1026 @end deffn
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
1027
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
1028
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
1029
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
1030 @defun mime-eword/decode-string string &optional must-unfold
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
1031
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
1032 It decodes encoded-words in @var{string} and returns decoded
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
1033 string.@refill
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
1034
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
1035 If an encoded-word is broken or invalid, or it has non supported MIME
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
1036 charset (@ref{(tm-en)MIME charset}), it is not decoded.@refill
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
1037
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
1038 If @var{string} is folded, it unfolds @var{string} before
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
1039 decoding.@refill
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
1040
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
1041 If @var{must-fold} is non-nil and decoded result of an encoded-word has
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
1042 folding or raw CR or LF, it unfolds or delete raw CR or LF.
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
1043 @end defun
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
1044
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
1045
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
1046
10
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 8
diff changeset
1047 @node Acknowledgments, Concept Index, API, Top
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 8
diff changeset
1048 @chapter Acknowledgments
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 8
diff changeset
1049
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 8
diff changeset
1050 First of all, I thank MASUTANI Yasuhiro. He requested me a lot of
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 8
diff changeset
1051 important features and gave me a lot of suggestions when tm-view was
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 8
diff changeset
1052 born. tm-view is based on his influence.@refill
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 8
diff changeset
1053
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 8
diff changeset
1054 I thank ENAMI Tsugutomo for work of @file{mime.el}, which is an origin
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 8
diff changeset
1055 of @file{tm-ew-d.el} and @file{mel-b.el}, and permission to rewrite for
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 8
diff changeset
1056 tm.@refill
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 8
diff changeset
1057
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 8
diff changeset
1058 I thank OKABE Yasuo for work of internal method for LaTeX and automatic
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 8
diff changeset
1059 assembling method for message/partial. I thank UENO Hiroshi for work of
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 8
diff changeset
1060 internal method for tar archive.@refill
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 8
diff changeset
1061
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 8
diff changeset
1062 Last of all, I thank members of two tm mailing lists, Japanese and
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 8
diff changeset
1063 English version.
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 8
diff changeset
1064
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 8
diff changeset
1065
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 8
diff changeset
1066 @node Concept Index, Function Index, Acknowledgments, Top
8
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
1067 @chapter Concept Index
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
1068
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
1069 @printindex cp
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
1070
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
1071 @node Function Index, Variable Index, Concept Index, Top
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
1072 @chapter Function Index
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
1073
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
1074 @printindex fn
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
1075
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
1076 @node Variable Index, , Function Index, Top
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
1077 @chapter Variable Index
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
1078
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
1079 @printindex vr
4b173ad71786 Import from CVS: tag r19-15b5
cvs
parents:
diff changeset
1080 @bye