GNU Emacs 系エディタ で動作する cmail MUA および付随ツールの開発と保守


Die Systemvoraussetzungen sind nicht definiert

Veröffentlicht: 2003-12-31 23:45
cmail snapshot release 2.62.20031231 (1 files Verstecken)


IMAP4 関係のモジュールが大きくアップデートされています。
IMAP4 ディレクトリ以下で変更されています。
ML [cmail 10323]

Hamster サーバ で動作するように変更しました。


2003-12-31 Takeshi Morishima <>

* options/cmail-use-simap4.el (cmail-simap4-servers): modified
Search Preference List data type as a list of lisp expression.
* options/cmail-simap4.el (cmail-simap4-esa-query): added simple
* contrib/namaham/Namaham.ini.dist: added
* contrib/namaham/ added
* contrib/namaham/NamahamStart.hsc: added
* contrib/namaham/ added
* contrib/namaham/NamahamDbBld.hsc.: added

2003-12-25 Takeshi Morishima <>

* options/cmail-use-simap4.el (cmail-simap4-servers): added search
method and preference server option. Added version upgrade code.
(cmail-simap4-determine-search-method): now accesses to server
spec to get search mode.
(cmail-simap4-servers-1_3-search-type): added.
(cmail-simap4-servers-1_3-search-prefs): added.
(cmail-simap4-insert-dummy-part): default to "unknown" if part
contains nil for element 0 and 1.
(cmail-simap4-insert-text-part): default to "plain", and
"charset=iso-8859-1" and "7bit" if part contains nil for element
1, 2 and 5.
(cmail-simap4-insert-multipart1): default to "", "plain" and
"7bit" , or "" and "rfc822" when part contains nil for element 0,
1 and 5.
(cmail-simap4-insert-message-part1): default to 0 if part contains
nil for element 8.
(cmail-simap4-esa-query): changed order of parsing query result.

2003-12-24 Takeshi Morishima <>

* apel/*: Updated to release 10.6

2003-12-23 Takeshi Morishima <>

* options/cmail-simap4.el (cmail-simap4-sync-folder1): changed
update logic so that server local uidnext is saved only when
message fetch completed. This is to workaround Hamster
beta status command behavior.

2003-12-16 Takeshi Morishima <>

* options/cmail-simap4.el (cmail-simap4-fetch-new-msgs): Modified
function to limit number of new messages to fetch at a time. With
all 5 digits uid and around 1000 uids or more, cyrus imapd stopped
accepting a fetch command. Probably other imap4 servers would
have similar limit, potentially much less than cyrus. It cannot
be unlmitted buffer size anyway, so putting fix to repeat small
number of fetch.

(caNr, cdNr): New functions used by cmail-simap4-fetch-new-msgs.

2003-12-16 Takeshi Morishima <>

* options/cmail-simap4.el (everwhere): added authenticate-type
option for server spec options and updated format version to 1.3,
and changed access functions from -1_2- to -1_3- everwhere.

(cmail-simap4-get-object-by-spec-mbox): added code to call set
auth type based on custom option configuration.

* options/cmail-use-simap4.el (cmail-simap4-servers): added
authenticate-type option for server spec options. Now the server
option format version is 1.3.

(toplevel): added option format conversion from 1.0/1.1/1.2 to new

2003-08-04 Takeshi Morishima <>

* options/cmail-simap4.el (cmail-simap4-cfolders-to-show): Hamster
imap4 server uses all captial \NOSELECT flag, failing test. Now
this uses downcase before checking with member function.
(cmail-simap4-insert-no-multipart): Hamster returns body list
contains transfer encoding as nil (probably depending on
configuraton). Now assumes 7bit if nil is returned as a
(cmail-simap4-set-cache-by-mbox): a bug found during Hamster test
where flags list is not properly cached, causing NOSELECT mailbox
to be listed as shown folders, keep failing on imap4 select.

2003-08-02 Takeshi Morishima <>

* cmail-mime.el (cmail-mime-mail-setup): added function for
mail-setup hook for easy debugging. Now uses scoped global
variable *cmail-mime-mail-setup-decode-header-p to determine if
header decoding is needed. (Including a hacked cursor pointer
adjustement code.)
(toplevel): replaced lambda expression with cmail-mime-mail-setup
function for mail-setup-hook.
(cmail-mime-burst-internal): A fix of burst problem for mime based
digest with compiled cmail-mime.el. Was some macros defined in
mime modules not expanded at the time of compilation. This was
fixed by moving "(require 'mmbuffer)" and "(require 'mime)" out of
cmail-mime-burst-internal defun. Also swaped static-if logic and
run indentation.

* cmail-reply.el (cmail-mail2): Before calling "mail" function,
set local scoped *cmail-mime-mail-setup-decode-header-p to t if
reply or forward copies subject to mail buffer so that mime
decoding will be performed from mail-setup hook. This fixes an
issue of mime encoded subject string appearing subject in case of
forwarding. reply case was covered by mail-setup-hook, but not
the case of forwarding.

* cmail-vars.el: added definition and initialization for new
variable *cmail-mime-mail-setup-decode-header-p.

2003-08-02 Takeshi Morishima <>

* cmail-digest.el (cmail-burst-internal): now calls a new
cmail-insert-message function to import a message.
(cmail-send-digest): consolidates marked messages only and entire
folder messages only processing, since either way it now needs to
call cmail-insert-message to import external messages. Also
changed parameter for cmail-send-(mime-)digest-internal.
(cmail-send-digest-internal): now calls a new camil-insert-message
function to import a message.

* cmail-mime.el: a few indentation/reformat performed.
(cmail-mime-insert-message): moved import and removing cmail
internal control headers out of this function to
cmail-insert-message function.
(cmail-send-mime-digest-internal): removed unnecessary args and
renamed marked to msgs.

* cmail-reply.el (cmail-insert-message): added new function,

* options/cmail-simap4.el (cmail-simap4-supply-body): for forward
case, download full contents without prompting user for y-or-n.

2003-04-12 Takeshi Morishima <>

* options/cmail-simap4.el (cmail-simap4-sync-folders): Fixed a bug
on mailbox sync, virtual folders (search result folders) should
not be listed in the to be deleted folders.

2003-04-03 Takeshi Morishima <>

* options/cmail-simap4.el (cmail-simap4-sync-folders): Added code
to synchronize folders if it does not exist on local disk,
although they are not listed as folders to be synchronized. This
is to at least display folders on cmail. Once first sync is done
and folder file is created, it will not do sync unless explicitly
specified. (Note, this part will need some improvement such as
just get STATUS of a mailbox and create fake folder with proper
number of messages shown on folders mode buffer, so that it will
not take long time to sync all folders. This may need a bit
modification to folders-mode, so will not be done in this at this
point.) Also added code to prompt for deletion of folders to
allow the user to save folders, to just be safe. msg-53, 54 were
added and 52 was modified for this.
(cmail-simap4-create-empty-cfolder): Deleted - this was created as
a placeholder for the above mentioned quick STATUS get, but since
it needs folders mode change, will postpone the support sometime

2003-03-29 Takeshi Morishima <>

* options/cmail-simap4.el (cmail-simap4-sync-folders): Added code
to delete unnecessary/invisible directory as well.
(cmail-simap4-current-cfolders): No longer return the topdir as
valid cfolder (to avoid delete processing of the topdir.)

2003-03-29 Takeshi Morishima <>

* cmail-simap4.el (cmail-simap4-get-object-by-spec-mbox): When
deleting a folder, now because of cmail-simap4-predict-mbox
introduction it does not fail on selecting mailbox and prompts for
whether or not creating the mailbox being deleted if it is not on
the server. (During sync, this always occur if local folder
exists and corresponding mailbox has been deleted on the server by
another client.) Added code to check if noremote operation is
needed before connecting to the server to fix this problem.

2003-03-29 Takeshi Morishima <>

* options/cmail-simap4.el (cmail-simap4-predict-mbox): Added to
find mailbox name if it does not exist on the server currently.
It uses imap4 LIST command to get delimiter for root folder of
specified folder, and make up a imap4 mailbox for the cfolder.
This may or may not be a valid folder name, so further CREATE,
COPY, RENAME commands return value needs to be checked to know if
the mailbox is a valid one for the server.
(cmail-simap4-cfolder-to-mbox): Now use cmail-simap4-predict-mbox
instead of calling cmail-simap4-refresh-mboxprop, in case this is
called for non-existing, to be created folder name to mbox
(cmail-simap4-refresh-mboxprop): Added new optional argument mbox
and functionality to add that specific mbox property to the mbox
property and cbox property cache. In case a specific mailbox is
refreshed, it will not attempt to syncronize mailboxes cache
between the client and the server, which will happen if no mbox is
specified. Also added code to cache transaction update to avoid
multiple file write operation in a mbox sync loop.
(cmail-simap4-get-object-by-spec-mbox): After successful creation
of new mbox, it now call cmail-simap4-refresh-mboxprop with
specific mailbox to update local mbox/cbox property cache.
(cmail-simap4-rename-mailbox): Now resync mbox/cbox property cache
after successful renaming of mbox. It could be perticular
mailbox, but since this function does not know exact mbox name,
just sync everything. (Maybe we can enhance later if this becomes
performance problem. At this point, it does not appear to cause
any performance degradation.)
(cmail-simap4-save-cache): Added functionality of a transaction
write for mbox/cbox property cacheto avoid file operation of every
update from cmail-simap4-refresh-mboxprop.

2003-03-29 Takeshi Morishima <>

* options/cmail-simap4.el (cmail-simap4-sync-folders): Added
directory existence check during folders synchronization.
(cmail-simap4-get-spec-by-topdir): Return nil when a file named is
not a directory, in order to prevent imap operations on the file.

2003-03-28 Takeshi Morishima <>

* cmail-simap4.el (cmail-simap4-quote-mailbox): Now always use the
quoted string format when a mailbox is passed to a simap4 command.
There was a problem with mailbox names with spaces, which was
introduced due to 2003-03-23 change (New folder hierarchy
support). This fixes the problem. Changes also applied to all
the function that passes mailbox to simap4 functions. (simap4 is
also changing mailbox quoting separately.)

2003-03-25 Takeshi Morishima <>

* options/cmail-simap4.el (cmail-simap4-topdir): fixed bug for
server to local/local to server copy.

2003-03-24 Takeshi Morishima <>

* options/cmail-simap4.el (cmail-simap4-supply-body): fixed a bug
accidently changed from cmail-folder-mode to cfolder-mode causing
incorrect message display.

2003-03-23 Takeshi Morishima <>

* cmail-cfolder.el: Added file header.

* options/cmail-simap4.el: New way to handle mailbox delimiters
and cache.

2003-03-19 Takeshi Morishima <>

* cmail-cfolder.el (cmail-cfolder-create-mprop-alist): fixed the
problem of summary listing, exception error reported when no
message is in target folder.

* cmail-summary.el (cmail-make-summary): updated to handle summary
limit variable correctly.

2003-03-19 Takeshi Morishima <>

* options/cmail-simap4.el (cmail-simap4-esa-search,
cmail-simap4-construct-esearch-query, cmail-simap4-esearch-fetch,
cmail-simap4-esearch-query): added to support experimental (or
enhanced/external) search assistance.

* options/cmail-simap4.el (cmail-simap4-std-search,
cmail-simap4-search, cmail-simap4-determine-search-method):
restructured/created to allow M-s to invoke esa-search.
*cmail-simap4-search-method-alist needs to be set to use esa.