Chris Hanson [Mon, 22 May 2000 14:50:02 +0000 (14:50 +0000)]
Fix typo.
Chris Hanson [Mon, 22 May 2000 13:52:41 +0000 (13:52 +0000)]
In APPEND-MESSAGE, create mailbox if append/copy causes error
containing TRYCREATE.
Chris Hanson [Mon, 22 May 2000 13:36:29 +0000 (13:36 +0000)]
Implement IMAIL-COPY-FOLDER, a tool to copy folders to and from an
IMAIL server.
Chris Hanson [Mon, 22 May 2000 13:30:18 +0000 (13:30 +0000)]
Canonicalize the case of IMAP URLs, where possible without knowing
details of the server.
Chris Hanson [Mon, 22 May 2000 13:25:38 +0000 (13:25 +0000)]
Use explicit mechanism to link variables into the Edwin package, so
that IMAIL can be reloaded.
Chris Hanson [Mon, 22 May 2000 04:01:58 +0000 (04:01 +0000)]
Eliminate FOLDER-VALID?, replacing it with the more sensible
URL-EXISTS?.
Chris Hanson [Mon, 22 May 2000 04:01:06 +0000 (04:01 +0000)]
Generalize MOVE-RELATIVE to accept a raw command argument rather than
a delta, and to do something sensible if there's no prefix argument.
Chris Hanson [Mon, 22 May 2000 03:55:22 +0000 (03:55 +0000)]
In flag-modification commands, don't advance to next message unless a
prefix argument is given.
Chris Hanson [Mon, 22 May 2000 03:49:11 +0000 (03:49 +0000)]
IMAIL-GET-DEFAULT-URL must never signal an error.
Chris Hanson [Mon, 22 May 2000 03:44:22 +0000 (03:44 +0000)]
Eliminate FOLDER-VALID?, replacing it with the more sensible
URL-EXISTS?.
Chris Hanson [Mon, 22 May 2000 03:43:39 +0000 (03:43 +0000)]
Suppress the IMAP port if it is the standard port.
Chris Hanson [Mon, 22 May 2000 03:37:00 +0000 (03:37 +0000)]
Eliminate FOLDER-VALID?, replacing it with the more sensible
URL-EXISTS?.
Chris Hanson [Mon, 22 May 2000 03:32:17 +0000 (03:32 +0000)]
Provide inserted default strings to all URL prompts.
Chris Hanson [Mon, 22 May 2000 03:01:30 +0000 (03:01 +0000)]
Restructure the URL completion code to clean it up a bit. Change the
completer so that it doesn't do completion on URL protocols. Instead,
if there isn't a protocol prefix on the string, it assumes the
protocol of the default URL, and completes the string relative to that
URL.
Chris Hanson [Mon, 22 May 2000 02:17:58 +0000 (02:17 +0000)]
Implement URL completion, and reimplement URL parsing to do sensible
defaulting. This implementation appears to work but has several minor
problems.
Chris Hanson [Sun, 21 May 2000 00:03:32 +0000 (00:03 +0000)]
Fix typo and also type error.
Chris Hanson [Sun, 21 May 2000 00:03:05 +0000 (00:03 +0000)]
Export procedures for deconstructing LIST responses.
Chris Hanson [Sat, 20 May 2000 20:08:37 +0000 (20:08 +0000)]
Supply missing STRING-GREATEST-COMMON-PREFIX, needed by completion code.
Chris Hanson [Sat, 20 May 2000 19:39:20 +0000 (19:39 +0000)]
Pathname completion filters now accept a pathname rather than a
string.
Chris Hanson [Sat, 20 May 2000 19:37:03 +0000 (19:37 +0000)]
Change URL completion so that completion stops after completing a
protocol name, rather than continuing to complete the body.
Chris Hanson [Sat, 20 May 2000 19:36:28 +0000 (19:36 +0000)]
Fix braino in pathname completion. Previous design would have
recursively read every subdirectory of the given directory attempting
to enumerate files to present to the filter. This design descends
exactly one level at a time, as it should.
Chris Hanson [Sat, 20 May 2000 19:09:58 +0000 (19:09 +0000)]
Split off broken-pipe detection code. This has little effect now but
will be useful later when I improve the error recovery.
Chris Hanson [Sat, 20 May 2000 18:59:16 +0000 (18:59 +0000)]
Change syscall name and error tables to lower case. These strings are
converted into symbols without case modification, and must be in the
correct case for the runtime system.
Chris Hanson [Sat, 20 May 2000 03:24:31 +0000 (03:24 +0000)]
First draft of URL completion mechanism. IMAP method not yet
implemented.
Chris Hanson [Sat, 20 May 2000 03:23:32 +0000 (03:23 +0000)]
Reminder to move pathname-completion code into the runtime system.
Chris Hanson [Sat, 20 May 2000 03:22:52 +0000 (03:22 +0000)]
First draft of URL completion mechanism. IMAP method not yet
implemented.
Chris Hanson [Fri, 19 May 2000 21:37:48 +0000 (21:37 +0000)]
Export edwin commands, modes, and variables.
Chris Hanson [Fri, 19 May 2000 21:28:43 +0000 (21:28 +0000)]
Summary-buffer navigation now fixed.
Chris Hanson [Fri, 19 May 2000 21:25:31 +0000 (21:25 +0000)]
Define MOVE-RELATIVE-ANY.
Chris Hanson [Fri, 19 May 2000 21:24:12 +0000 (21:24 +0000)]
Change flag-marking commands to accept a prefix argument to repeat with.
Chris Hanson [Fri, 19 May 2000 21:12:14 +0000 (21:12 +0000)]
M-x imail-expunge should not use the navigator abstraction.
Chris Hanson [Fri, 19 May 2000 21:10:20 +0000 (21:10 +0000)]
Fix bug: SELECT-MESSAGE event can be called with no message.
Chris Hanson [Fri, 19 May 2000 21:03:53 +0000 (21:03 +0000)]
Assorted design changes.
Chris Hanson [Fri, 19 May 2000 21:02:20 +0000 (21:02 +0000)]
Change SET-MESSAGE-FLAGS! so that a folder event is generated when the
flags are stored, rather than when the the storage request is
initiated. IMAP can sometimes set the flags when no request has been
initiated.
Chris Hanson [Fri, 19 May 2000 20:57:56 +0000 (20:57 +0000)]
Bind M-x imail-summary-by-flags to C-M-f rather than C-M-l.
Chris Hanson [Fri, 19 May 2000 20:57:29 +0000 (20:57 +0000)]
Use new navigator abstraction to allow the summary buffer to share
nearly all of the IMAIL mode commands. Fix various bugs, both in
summary mode and in the navigator abstraction.
Chris Hanson [Fri, 19 May 2000 20:08:25 +0000 (20:08 +0000)]
Use UID STORE rather than STORE.
Chris Hanson [Fri, 19 May 2000 20:03:12 +0000 (20:03 +0000)]
Fix thinko.
Chris Hanson [Fri, 19 May 2000 18:21:01 +0000 (18:21 +0000)]
Implement navigation abstraction to allow the summary buffer to
properly share commands with the folder buffer.
Chris Hanson [Fri, 19 May 2000 18:06:18 +0000 (18:06 +0000)]
Use MOVE-RELATIVE for deletion and undeletion commands.
Chris Hanson [Fri, 19 May 2000 17:52:40 +0000 (17:52 +0000)]
Define generic BURST-COMMA-LIST-STRING.
Chris Hanson [Fri, 19 May 2000 17:50:30 +0000 (17:50 +0000)]
Share flag-prompting code to summary buffer commands.
Chris Hanson [Fri, 19 May 2000 17:29:50 +0000 (17:29 +0000)]
Downgrade one suggestion to a feature.
Chris Hanson [Fri, 19 May 2000 17:29:03 +0000 (17:29 +0000)]
Update for changes. Add note about command to copy entire folders.
Chris Hanson [Fri, 19 May 2000 17:26:24 +0000 (17:26 +0000)]
More usability improvements.
Chris Hanson [Fri, 19 May 2000 17:04:31 +0000 (17:04 +0000)]
Show several markers for common message flags, rather than just D for
deleted. Add space for a generic marker a la Dired.
Chris Hanson [Fri, 19 May 2000 16:55:22 +0000 (16:55 +0000)]
Add range checking to the group delete and replace operations.
Chris Hanson [Fri, 19 May 2000 16:33:10 +0000 (16:33 +0000)]
Various new ideas.
Chris Hanson [Fri, 19 May 2000 16:32:51 +0000 (16:32 +0000)]
Eliminate "edited" flag.
Chris Hanson [Fri, 19 May 2000 13:33:08 +0000 (13:33 +0000)]
Notes regarding presentation of standard flags in the summary buffer.
Chris Hanson [Fri, 19 May 2000 05:04:43 +0000 (05:04 +0000)]
Note bug with navigating partial summary buffers. Note that
%APPEND-MESSAGE must create the folder if it doesn't already exist.
Chris Hanson [Fri, 19 May 2000 05:03:44 +0000 (05:03 +0000)]
A number of usability improvements.
Chris Hanson [Fri, 19 May 2000 05:02:51 +0000 (05:02 +0000)]
Fix bug: SEARCH-FOLDER is supposed to return indices, but the IMAP
method was returning message objects.
Chris Hanson [Fri, 19 May 2000 05:02:01 +0000 (05:02 +0000)]
Fix bug: IMAP SEARCH response is allowed to be empty; I was signalling
error in that case.
Chris Hanson [Fri, 19 May 2000 04:16:47 +0000 (04:16 +0000)]
Note regarding suboptimal password caching.
Chris Hanson [Fri, 19 May 2000 04:16:16 +0000 (04:16 +0000)]
Redesign handling of IMAP connections so that there can be multiple
mailboxes simultaneously open on the same server. Also provide
mechanism for getting connections for server operations such as CREATE
and DELETE. Flush BIND-AUTHENTICATOR; just define a UI element to
generate a password.
Chris Hanson [Fri, 19 May 2000 03:20:46 +0000 (03:20 +0000)]
Implement MESSAGE->STRING.
Chris Hanson [Fri, 19 May 2000 02:43:49 +0000 (02:43 +0000)]
Fix bug: READ-PFLAG was only reading flags that started with "\\".
Chris Hanson [Fri, 19 May 2000 02:42:58 +0000 (02:42 +0000)]
Reimplement low-level IMAP tracing code to be a complete transcript
mechanism.
Chris Hanson [Fri, 19 May 2000 02:31:12 +0000 (02:31 +0000)]
Reimplement low-level IMAP tracing code to be a complete transcript
mechanism.
Chris Hanson [Thu, 18 May 2000 22:11:16 +0000 (22:11 +0000)]
Implement commands to create and delete folders. Put in special hack
to prepend "inbox." to folder names when using Cyrus.
Chris Hanson [Thu, 18 May 2000 21:27:59 +0000 (21:27 +0000)]
Flesh out the help text for IMAIL Summary mode. Tweak the column
headings slightly. Add imail-summary-mode-hook.
Chris Hanson [Thu, 18 May 2000 21:09:37 +0000 (21:09 +0000)]
Add header line to summary buffer to indicate each column's meaning.
Chris Hanson [Thu, 18 May 2000 20:55:05 +0000 (20:55 +0000)]
Add indication of message's length to summary buffer.
Chris Hanson [Thu, 18 May 2000 19:59:37 +0000 (19:59 +0000)]
Implement MESSAGE-LENGTH.
Chris Hanson [Thu, 18 May 2000 19:53:30 +0000 (19:53 +0000)]
Add progress meter when reading very long message bodies.
Chris Hanson [Thu, 18 May 2000 19:29:10 +0000 (19:29 +0000)]
Add hook for progress indicator to code that reads literals.
Chris Hanson [Thu, 18 May 2000 18:57:45 +0000 (18:57 +0000)]
Change background NOOP idea from bug fix to feature.
Chris Hanson [Thu, 18 May 2000 18:56:58 +0000 (18:56 +0000)]
Need commands to create, delete, and rename folders.
Chris Hanson [Thu, 18 May 2000 17:16:58 +0000 (17:16 +0000)]
Summary browser now done. Need progress meter for long messages.
Chris Hanson [Thu, 18 May 2000 17:16:28 +0000 (17:16 +0000)]
Additional round of debugging and expansion. This version seems to
work pretty well.
Chris Hanson [Thu, 18 May 2000 17:14:18 +0000 (17:14 +0000)]
Fix thinko.
Chris Hanson [Thu, 18 May 2000 15:35:29 +0000 (15:35 +0000)]
Change message-deletion commands to take a repeat argument.
Chris Hanson [Thu, 18 May 2000 05:19:00 +0000 (05:19 +0000)]
Results of first round of serious debugging. The summary feature now
appears to work almost right. Some additional work remains.
Chris Hanson [Thu, 18 May 2000 05:18:01 +0000 (05:18 +0000)]
Fix a few bugs from the recent changes.
Chris Hanson [Thu, 18 May 2000 04:21:21 +0000 (04:21 +0000)]
Extensive work. First draft of code that uses new folder events to
see what changes are occurring to the folder and reflecting that in
the summary buffer.
Chris Hanson [Thu, 18 May 2000 03:59:43 +0000 (03:59 +0000)]
Add folder event to signal selection of a message in the front end.
Unlike other folder events, this one doesn't update the folder's
modification count, so split of a procedure FOLDER-EVENT to handle
cases like this.
Chris Hanson [Thu, 18 May 2000 03:43:06 +0000 (03:43 +0000)]
Change the way folder modification events are signalled. Now there
are several different types of events, and each type has specific
parameters associated with it. The intent of this change is to allow
the front end to figure out what is happening in the back end and
reflect that to the user.
Also: eliminate MESSAGE-MODIFICATION-COUNT and eliminate a handful of
modification events that were not visible at the folder abstraction
boundary (events are now part of the abstraction boundary, and should
not reflect irrelevant internal state).
Chris Hanson [Wed, 17 May 2000 20:53:32 +0000 (20:53 +0000)]
First cut at implementation of summary buffers.
Chris Hanson [Wed, 17 May 2000 20:52:59 +0000 (20:52 +0000)]
Define special buffer properties so that SELECTED-FOLDER and
SELECTED-MESSAGE can work properly in buffers other than the folder
buffer.
Chris Hanson [Wed, 17 May 2000 20:52:21 +0000 (20:52 +0000)]
Implement MESSAGE-TIME.
Chris Hanson [Wed, 17 May 2000 19:24:09 +0000 (19:24 +0000)]
Define special buffer properties so that SELECTED-FOLDER and
SELECTED-MESSAGE can work properly in buffers other than the folder
buffer.
Chris Hanson [Wed, 17 May 2000 19:11:16 +0000 (19:11 +0000)]
Add PROPERTIES slot to all core objects, for use exclusively by the
front end.
Chris Hanson [Wed, 17 May 2000 18:40:09 +0000 (18:40 +0000)]
Several changes that make IMAIL come up much faster with large
folders. First, we pay attention to the UNSEEN value, and delete
UNSEEN when expunges happen to avoid having an invalid value. Second,
we don't load headers for all the messages in advance; just their
UIDs, which is very fast.
This allows the mail reader to fetch just the information for the
first unseen message, which happens very quickly on a fast network
connection.
Chris Hanson [Wed, 17 May 2000 18:37:29 +0000 (18:37 +0000)]
Fix typo.
Chris Hanson [Wed, 17 May 2000 17:54:47 +0000 (17:54 +0000)]
Eliminate compiler warning.
Chris Hanson [Wed, 17 May 2000 17:54:08 +0000 (17:54 +0000)]
Eliminate code to read RMAIL inbox.
Chris Hanson [Wed, 17 May 2000 17:52:42 +0000 (17:52 +0000)]
Implement M-x imail-get-new-mail.
Chris Hanson [Wed, 17 May 2000 17:31:26 +0000 (17:31 +0000)]
Implement M-x imail-get-new-mail.
Chris Hanson [Wed, 17 May 2000 17:30:59 +0000 (17:30 +0000)]
Implement PROBE-FOLDER.
Chris Hanson [Wed, 17 May 2000 17:20:14 +0000 (17:20 +0000)]
Set buffer default directory to something sensible.
Chris Hanson [Wed, 17 May 2000 17:18:19 +0000 (17:18 +0000)]
Generate predicate for file folders.
Chris Hanson [Wed, 17 May 2000 17:15:22 +0000 (17:15 +0000)]
Change definition of imail-kept-headers so that it specifies the order
of the headers as well.
Chris Hanson [Wed, 17 May 2000 17:06:53 +0000 (17:06 +0000)]
Set buffer not modified bit.
Chris Hanson [Wed, 17 May 2000 17:04:08 +0000 (17:04 +0000)]
Change FIRST-UNSEEN-MESSAGE to return #F if there are no unseen
messages; previously it returned the last message. Reexamine all of
the uses of FIRST-UNSEEN-MESSAGE and refine the logic there.
Chris Hanson [Wed, 17 May 2000 17:00:54 +0000 (17:00 +0000)]
Change FIRST-UNSEEN-MESSAGE to return #F if there are no unseen
messages; previously it returned the last message. Reexamine all of
the uses of FIRST-UNSEEN-MESSAGE and refine the logic there.
Chris Hanson [Wed, 17 May 2000 16:25:06 +0000 (16:25 +0000)]
Note regarding generation of status messages during I/O.
Chris Hanson [Wed, 17 May 2000 16:23:29 +0000 (16:23 +0000)]
Fix bug: expunging of IMAP messages wasn't renumbering the remaining
messages.
Chris Hanson [Wed, 17 May 2000 16:15:49 +0000 (16:15 +0000)]
Change method used to fetch message contents so that it uses UID FETCH
rather than FETCH.
Chris Hanson [Wed, 17 May 2000 15:46:57 +0000 (15:46 +0000)]
Implement MESSAGE-ATTACHED? and MESSAGE-DETACHED?, to abstract the
details of this query. Refine the method used to obtain the selected
message, by saving the message index when a message is detached, and
using that index to choose a new message.