sup:mainline.git
9 years agoswitch bin and lib versions from git -> 0.4 release-0.4
William Morgan [Wed, 23 Jan 2008 17:36:41 +0000 (09:36 -0800)]
switch bin and lib versions from git -> 0.4

9 years agoupdate webpage for 0.4 release
William Morgan [Wed, 23 Jan 2008 18:06:49 +0000 (10:06 -0800)]
update webpage for 0.4 release

9 years agoupdate history for 0.4
William Morgan [Wed, 23 Jan 2008 17:35:28 +0000 (09:35 -0800)]
update history for 0.4

9 years ago(minor) remove warnings when run with -w
William Morgan [Tue, 22 Jan 2008 20:24:03 +0000 (12:24 -0800)]
(minor) remove warnings when run with -w

9 years agoMerge branches 'prev-next-improv', 'fix-warnings', 'mime-view', 'charset', 'join...
William Morgan [Tue, 22 Jan 2008 20:21:53 +0000 (12:21 -0800)]
Merge branches 'prev-next-improv', 'fix-warnings', 'mime-view', 'charset', 'join-threads', 'quoteline', 'maildir-fix' and 'regex-fix'

9 years agoMerge branch 'quote-detection'
William Morgan [Tue, 22 Jan 2008 20:21:46 +0000 (12:21 -0800)]
Merge branch 'quote-detection'

9 years agoMerge branch 'bin-lib-versions'
William Morgan [Tue, 22 Jan 2008 20:16:29 +0000 (12:16 -0800)]
Merge branch 'bin-lib-versions'

Conflicts:

lib/sup.rb

9 years agoescape all regexes used for tab completion
William Morgan [Tue, 22 Jan 2008 07:29:46 +0000 (23:29 -0800)]
escape all regexes used for tab completion

Tab completion uses many regexes, all built from user data. These need to
be escaped, or special characters will throw an exception.

9 years agomodulo the file size in a maildir, so it's <= 7 digits.
Jeff Balogh [Fri, 18 Jan 2008 08:58:33 +0000 (03:58 -0500)]
modulo the file size in a maildir, so it's <= 7 digits.

The size needs to be <= 7 digits to preserve sup's increasing id
requirement.  Otherwise, large messages (probably w/ attachments) have
an id that is a magnitude larger than small messages.

9 years agorenamed "quoteline" hook to "attribution"
Grant Hollingworth [Thu, 17 Jan 2008 17:49:21 +0000 (12:49 -0500)]
renamed "quoteline" hook to "attribution"

9 years agocase-insensitive content-type detection
William Morgan [Sat, 19 Jan 2008 17:25:20 +0000 (09:25 -0800)]
case-insensitive content-type detection

Apparently some mailers uppercase their shit. E.g.:
Content-type: text/plain; Format=Flowed; Charset=iso-8859-1

9 years agomore quote detection tweaking
William Morgan [Thu, 17 Jan 2008 01:18:54 +0000 (17:18 -0800)]
more quote detection tweaking

9 years agomake '#' in thread-index-mode join all tagged threads into one thread
William Morgan [Thu, 17 Jan 2008 00:50:51 +0000 (16:50 -0800)]
make '#' in thread-index-mode join all tagged threads into one thread

No way to reverse this, yet.

9 years agoTagger#apply_to_tagged can take an arbitrary action
William Morgan [Thu, 17 Jan 2008 00:47:35 +0000 (16:47 -0800)]
Tagger#apply_to_tagged can take an arbitrary action

With this change, applying operations to tagged objects can be
short-circuited by passing the desired action directly to #apply_to_tagged,
rather than requiring it to interactive prompt the user for a command.

This class could probably use a little restructuring to divorce it from
Mode.

9 years agoadd the ability to joining threads forcefully to ThreadSet
William Morgan [Thu, 17 Jan 2008 00:44:43 +0000 (16:44 -0800)]
add the ability to joining threads forcefully to ThreadSet

ThreadSet#join_threads now takes any number of threads (which must be part
of the threadset) heuristically either picks one message to be the root
(if all messages but one have a "Re:" on the subject line), or creates
a fake root. It updates the message object and marks it dirty so that a
subsequent save will preserve the new structure.

9 years ago(minor) bugfix for Container#is_reply?
William Morgan [Thu, 17 Jan 2008 00:25:45 +0000 (16:25 -0800)]
(minor) bugfix for Container#is_reply?

I guess this method hasn't been used for a while...

9 years agograb non-terminal blank lines as part of quotes
William Morgan [Wed, 16 Jan 2008 22:20:08 +0000 (14:20 -0800)]
grab non-terminal blank lines as part of quotes

This helps with those irritating mailers that do something like this:
Bob said:
<blank line, for no reason>
> quoted text
> quoted text

9 years agoloosen up quote header matching
William Morgan [Wed, 16 Jan 2008 22:07:09 +0000 (14:07 -0800)]
loosen up quote header matching

Don't try and parse all possible quote headers, just assume that they're
at least one word character followed by some quoted lines of text.

9 years agoadd mime-view hook for viewing mime attachments
William Morgan [Wed, 16 Jan 2008 04:02:20 +0000 (20:02 -0800)]
add mime-view hook for viewing mime attachments

Add a hook for handling the spawning of external programs for viewing MIME
attachments.

9 years agoMerge branch 'master' into next
William Morgan [Wed, 16 Jan 2008 03:06:48 +0000 (19:06 -0800)]
Merge branch 'master' into next

Conflicts:

lib/sup.rb

9 years agouse gettext library to determine character set
William Morgan [Wed, 9 Jan 2008 16:30:30 +0000 (08:30 -0800)]
use gettext library to determine character set

Previous character set detection was completely broken.

9 years agoAdded quoteline hook for reply mode
Marcus Williams [Tue, 15 Jan 2008 09:40:04 +0000 (09:40 +0000)]
Added quoteline hook for reply mode

This hook allows a user to configure a quote line for replies. The
default is the standard sup quote line "Excerpts from...". Multiple
lines are allowed.

9 years agoFix for some warnings on faked addresses and ids
Marcus Williams [Tue, 15 Jan 2008 14:02:27 +0000 (14:02 +0000)]
Fix for some warnings on faked addresses and ids

Fixes a few unitialised variable warnings when logging faked message
addresses or faked message ids. Also initialises the @lines var when the
message is not text.

9 years agoMerge branch 'master' into next
William Morgan [Tue, 15 Jan 2008 05:04:58 +0000 (21:04 -0800)]
Merge branch 'master' into next

9 years ago(minor) remove spurious lines from last commit
William Morgan [Tue, 15 Jan 2008 05:03:41 +0000 (21:03 -0800)]
(minor) remove spurious lines from last commit

9 years agoAvoid re-adding the signature when re-editing a draft with edit_signature: true
Nicolas Pouillard [Mon, 14 Jan 2008 09:00:38 +0000 (10:00 +0100)]
Avoid re-adding the signature when re-editing a draft with edit_signature: true

9 years ago(minor) reformat comments
William Morgan [Mon, 14 Jan 2008 03:15:21 +0000 (19:15 -0800)]
(minor) reformat comments

9 years agobugfix: file-browser-mode should reset the cursor when entering a new dir
William Morgan [Mon, 14 Jan 2008 01:23:49 +0000 (17:23 -0800)]
bugfix: file-browser-mode should reset the cursor when entering a new dir

Otherwise, entering a new directory can start with the cursor and page at
a weird location, e.g. with the very last file appearing at the top of
the screen.

9 years agoHACKING update: and/or versus ||/&&
William Morgan [Mon, 14 Jan 2008 00:50:40 +0000 (16:50 -0800)]
HACKING update: and/or versus ||/&&

9 years ago"loose alignment" of the first open message when starting thread-view-mode
William Morgan [Sun, 13 Jan 2008 07:04:19 +0000 (23:04 -0800)]
"loose alignment" of the first open message when starting thread-view-mode

Align the first open message of thread-view-mode heuristically. Try and
give some top and left context, but not so much that the message is
cropped.

9 years agomake column jumping go by 4 chars at a time instead of 2
William Morgan [Sun, 13 Jan 2008 06:32:07 +0000 (22:32 -0800)]
make column jumping go by 4 chars at a time instead of 2

This speeds up horizontal scrolling dramatically.

9 years agobugfix: jump_to_col should only jump to a multiple of COL_JUMP
William Morgan [Sun, 13 Jan 2008 06:30:53 +0000 (22:30 -0800)]
bugfix: jump_to_col should only jump to a multiple of COL_JUMP

9 years agoadd 'z': align current message, to thread-view-mode
William Morgan [Sun, 13 Jan 2008 05:54:11 +0000 (21:54 -0800)]
add 'z': align current message, to thread-view-mode

Pressing 'z' now makes the current message be top- and left-aligned in
the buffer.

9 years agomake 'n' and 'p' in thread-view-mode always top-and-left justify
William Morgan [Sun, 13 Jan 2008 05:48:36 +0000 (21:48 -0800)]
make 'n' and 'p' in thread-view-mode always top-and-left justify

Previously, 'n' and 'p' would only move the cursor if the next or
previous message already completely fit on the screen. Now they always
move the buffer so that the current message is at the top left. I think
this makes it a little easier to read a whole thread, message by
message.

9 years agomake thread-view-mode 'n' and 'p' work with unreceived messages
William Morgan [Sun, 13 Jan 2008 05:44:59 +0000 (21:44 -0800)]
make thread-view-mode 'n' and 'p' work with unreceived messages

Without this patch, if the cursor is on an unreceived message line,
it doesn't move upon hitting 'n' or 'p'.

9 years agopreserve filename when viewing attachments with text-mode
William Morgan [Sun, 13 Jan 2008 01:19:50 +0000 (17:19 -0800)]
preserve filename when viewing attachments with text-mode

When a text-mode is spawned to view an attachment, pass in the atachment
filename, so that saving the buffer provies the filename as a default
value.

9 years agoMerge branch 'master' into next
William Morgan [Thu, 10 Jan 2008 17:44:16 +0000 (09:44 -0800)]
Merge branch 'master' into next

9 years agouse "999" instead of 999 for gem version identifier
William Morgan [Thu, 10 Jan 2008 17:40:55 +0000 (09:40 -0800)]
use "999" instead of 999 for gem version identifier

This is necessary for earlier rubygems versions, which require a string
version identifier.

9 years agobugfix in ThreadSet#remove_id: wasn't working for root messages
William Morgan [Thu, 10 Jan 2008 05:27:29 +0000 (21:27 -0800)]
bugfix in ThreadSet#remove_id: wasn't working for root messages

9 years agobugfix: title printing for appropriate TERM values
William Morgan [Wed, 9 Jan 2008 22:54:02 +0000 (14:54 -0800)]
bugfix: title printing for appropriate TERM values

@in_x needs to be defined in BufferManager, not Buffer

9 years agocompare bin and lib versions, and error out on mismatch
William Morgan [Wed, 9 Jan 2008 18:50:04 +0000 (10:50 -0800)]
compare bin and lib versions, and error out on mismatch

This should help the occasional bug reports that happen because someone
runs bin/sup from development, but somehow picks up libraries from a
pre-installed gem.

To make "rake gem" still function when working from a checkout, we fake
a version number of 999. (Gem versions must be dotted numerics.)

It won't detect version mismatches against gems that have been installed
via "rake gem" from a checkout, but that is typically a less common
issue.

9 years agoMerge branch 'master' into next
William Morgan [Wed, 9 Jan 2008 18:37:52 +0000 (10:37 -0800)]
Merge branch 'master' into next

9 years ago(minor) update Rakefile with vim and emacs syntax pragmas
William Morgan [Wed, 9 Jan 2008 18:37:40 +0000 (10:37 -0800)]
(minor) update Rakefile with vim and emacs syntax pragmas

9 years agoMerge branch 'master' into next
William Morgan [Wed, 9 Jan 2008 18:08:11 +0000 (10:08 -0800)]
Merge branch 'master' into next

9 years agoadd 'screen' to the list of possible TERM values that allow title setting
William Morgan [Wed, 9 Jan 2008 18:02:53 +0000 (10:02 -0800)]
add 'screen' to the list of possible TERM values that allow title setting

9 years agodetect character set correctly (but unix-centrically)
William Morgan [Wed, 9 Jan 2008 16:30:30 +0000 (08:30 -0800)]
detect character set correctly (but unix-centrically)

9 years agoonly set terminal title if $TERM is an xterm or rxvt variant
William Morgan [Wed, 9 Jan 2008 16:06:39 +0000 (08:06 -0800)]
only set terminal title if $TERM is an xterm or rxvt variant

9 years agostrip out \t and \r from text attachments when viewing inline
William Morgan [Tue, 8 Jan 2008 19:11:57 +0000 (11:11 -0800)]
strip out \t and \r from text attachments when viewing inline

9 years agobugfix: attachment tempfile deletion
William Morgan [Tue, 8 Jan 2008 18:42:58 +0000 (10:42 -0800)]
bugfix: attachment tempfile deletion

attachment temp files (used for Attachment#view!) now use (a
monkey-patched) Tempfile, so they should be deleted upon program exit or
gc or however it works.

9 years agobugfix: thread correctly in resumed/killed draft messages
William Morgan [Tue, 8 Jan 2008 18:04:31 +0000 (10:04 -0800)]
bugfix: thread correctly in resumed/killed draft messages

the entire thread was being deleted because of UpdateManager changes.
now there are two signals: deleted and single_message_deleted, the first
for thread deletion and the second for draft message removal, and
ThreadIndexMode handles them correctly.

9 years agobugfix in reply-to-all
William Morgan [Tue, 8 Jan 2008 16:56:13 +0000 (08:56 -0800)]
bugfix in reply-to-all
the "all" option was still showing up even when it wasn't diffferent from
the "sender" option.

9 years agofix: Add parentheses since `||' binds more than `or'.
Nicolas Pouillard [Tue, 8 Jan 2008 01:43:51 +0000 (02:43 +0100)]
fix: Add parentheses since `||' binds more than `or'.

Signed-off-by: William Morgan <wmorgan-sup@masanjin.net>
9 years agoencoding, fix: Normalize UTF8 and UTF_8 to utf8, to please iconv.
Nicolas Pouillard [Tue, 8 Jan 2008 01:42:56 +0000 (02:42 +0100)]
encoding, fix: Normalize UTF8 and UTF_8 to utf8, to please iconv.

Signed-off-by: William Morgan <wmorgan-sup@masanjin.net>
9 years agomessage.rb: Fix the usage of error_message and Chunk::Text.new.
Nicolas Pouillard [Tue, 8 Jan 2008 01:40:44 +0000 (02:40 +0100)]
message.rb: Fix the usage of error_message and Chunk::Text.new.

Signed-off-by: William Morgan <wmorgan-sup@masanjin.net>
9 years agoadd delete key support to textfields
William Morgan [Tue, 8 Jan 2008 00:11:28 +0000 (16:11 -0800)]
add delete key support to textfields

9 years agotodo updates
William Morgan [Mon, 7 Jan 2008 06:29:37 +0000 (22:29 -0800)]
todo updates

9 years agoupdate rubymail pointer on webpage
William Morgan [Mon, 7 Jan 2008 06:17:55 +0000 (22:17 -0800)]
update rubymail pointer on webpage

9 years agofix help text in sup-tweak-labels
William Morgan [Mon, 7 Jan 2008 05:56:32 +0000 (21:56 -0800)]
fix help text in sup-tweak-labels

9 years agoadd "." commands to thread-view-mode: dispatch-and-kill instead of -next
William Morgan [Sun, 6 Jan 2008 23:54:48 +0000 (15:54 -0800)]
add "." commands to thread-view-mode: dispatch-and-kill instead of -next

".a" => archive and kill buffer, ".s" => spam and kill buffer, etc. Also added
",N" and ".N" for marking threads as unread.

9 years agoadd a :regexen section of an account in config.yaml for email regexes
William Morgan [Sun, 6 Jan 2008 19:25:03 +0000 (11:25 -0800)]
add a :regexen section of an account in config.yaml for email regexes

9 years agoclean up account code slightly
William Morgan [Sun, 6 Jan 2008 19:17:27 +0000 (11:17 -0800)]
clean up account code slightly

9 years agosave all message state when seppukuing
William Morgan [Sun, 6 Jan 2008 18:51:52 +0000 (10:51 -0800)]
save all message state when seppukuing

9 years agoworkaround for a rmail MIME parsing bug
William Morgan [Fri, 4 Jan 2008 05:04:28 +0000 (21:04 -0800)]
workaround for a rmail MIME parsing bug

9 years agoadded some unit tests for message parsing
Ismo Puustinen [Fri, 4 Jan 2008 04:56:15 +0000 (20:56 -0800)]
added some unit tests for message parsing

excerpts from original message from Ismo Puustinen <ismo@iki.fi>:
I wrote one new unit test. The difference to previous tests is that
this test actually currently fails: for some reason, dividing a
message body into chunks doesn't succeed. The message in question
is an actual email message sent to vim-mac mailing list; only
the names and email addresses have been obscured. I selected the
message for the tests because it kept crashing my sup-sync. :-)

9 years agobugfix: threading works properly again. and is improved, slightly.
William Morgan [Fri, 4 Jan 2008 04:41:09 +0000 (20:41 -0800)]
bugfix: threading works properly again. and is improved, slightly.

previous commits served only to screw things up. now everything works
and messages are lovingly threaded in the correct manner

9 years agobugfix: multiple full header views would overwrite each other
William Morgan [Fri, 4 Jan 2008 02:37:09 +0000 (18:37 -0800)]
bugfix: multiple full header views would overwrite each other

9 years agobugfix: thread ordering in thread-index-mode "jumping around"
William Morgan [Fri, 4 Jan 2008 02:23:16 +0000 (18:23 -0800)]
bugfix: thread ordering in thread-index-mode "jumping around"

happens when more than one thread exists with the exact same date.

9 years agominor webpage changes
William Morgan [Wed, 2 Jan 2008 04:40:59 +0000 (20:40 -0800)]
minor webpage changes

9 years agomore todo updates
William Morgan [Tue, 1 Jan 2008 23:39:30 +0000 (15:39 -0800)]
more todo updates

9 years agotodo updates: plans for 0.4 and 0.5
William Morgan [Tue, 1 Jan 2008 00:09:11 +0000 (16:09 -0800)]
todo updates: plans for 0.4 and 0.5

9 years agosadly, that thread invariant cannot be maintained without creating bugs.
William Morgan [Mon, 31 Dec 2007 02:26:24 +0000 (18:26 -0800)]
sadly, that thread invariant cannot be maintained without creating bugs.

9 years agoremove spurious logging from completion code
William Morgan [Sun, 30 Dec 2007 20:16:52 +0000 (12:16 -0800)]
remove spurious logging from completion code

9 years agomake BufferManager#ask_getch and #ask finally work correctly
William Morgan [Sun, 30 Dec 2007 20:11:16 +0000 (12:11 -0800)]
make BufferManager#ask_getch and #ask finally work correctly

lots of ncurses fighting involved!

9 years agoadded dispatch-and-kill to thread-view-mode
William Morgan [Sun, 30 Dec 2007 19:05:25 +0000 (11:05 -0800)]
added dispatch-and-kill to thread-view-mode

9 years agoadded ThreadIndexMode#launch_next_thread_after to support dispatch-then-kill
William Morgan [Sun, 30 Dec 2007 19:03:23 +0000 (11:03 -0800)]
added ThreadIndexMode#launch_next_thread_after to support dispatch-then-kill

9 years agoclean up an error message in BufferManager (minor)
William Morgan [Sun, 30 Dec 2007 19:00:26 +0000 (11:00 -0800)]
clean up an error message in BufferManager (minor)

9 years agoadded FinishLine object to util.rb (currently unused)
William Morgan [Sun, 30 Dec 2007 18:59:49 +0000 (10:59 -0800)]
added FinishLine object to util.rb (currently unused)

9 years agoadded multi-key del/spam/archive/nothing-and-kill-buffer to thread-view-mode
William Morgan [Sun, 30 Dec 2007 05:19:08 +0000 (21:19 -0800)]
added multi-key del/spam/archive/nothing-and-kill-buffer to thread-view-mode

9 years agobetter error message for keymap conflicts (minor)
William Morgan [Fri, 28 Dec 2007 22:02:42 +0000 (14:02 -0800)]
better error message for keymap conflicts (minor)

9 years agoadd multi-key sequence support
William Morgan [Fri, 28 Dec 2007 21:29:53 +0000 (13:29 -0800)]
add multi-key sequence support

BufferManager is now the main entry point for keystroke resolution,
via #resolve_input_with_keymap, as multi-key commands require
displaying one or more prompts.

9 years agobugfix: keystroke 'n' duplicated in scroll-mode
William Morgan [Fri, 28 Dec 2007 21:05:13 +0000 (13:05 -0800)]
bugfix: keystroke 'n' duplicated in scroll-mode

9 years agobugfix in keymap: actually check for duplicate keys
William Morgan [Fri, 28 Dec 2007 21:04:33 +0000 (13:04 -0800)]
bugfix in keymap: actually check for duplicate keys

9 years agobugfix: make thread-index-mode handle deletion notices correctly
William Morgan [Sun, 30 Dec 2007 04:40:00 +0000 (20:40 -0800)]
bugfix: make thread-index-mode handle deletion notices correctly

Originally was calling ThreadSet#remove_mid with the first message of the
thread, which didn't really make sense, eh?

9 years agomaintain a more reasonable thread structure during threading
William Morgan [Sun, 30 Dec 2007 04:32:23 +0000 (20:32 -0800)]
maintain a more reasonable thread structure during threading

two new invariants: every Thread should have at least one Container
tree, and every Container tree should have at least one Message.
this is also a bugfix for threadset#remove_id, but the current use
of that function is a bug in and of itself, which I will fix in
the next commit. At any rate, this is better code, presumably.

9 years agobugfix: properly choose root messages for threading by subject
William Morgan [Sun, 30 Dec 2007 04:28:23 +0000 (20:28 -0800)]
bugfix: properly choose root messages for threading by subject

9 years agobetter documentation for Thread#first_useful_descendent
William Morgan [Sun, 30 Dec 2007 03:11:14 +0000 (19:11 -0800)]
better documentation for Thread#first_useful_descendent

9 years agostop automatically stripping Re: bits from message subjects when indexing
William Morgan [Sun, 30 Dec 2007 00:56:37 +0000 (16:56 -0800)]
stop automatically stripping Re: bits from message subjects when indexing

Rationale: when thread-by-subject is on, whether the subject is a reply or not
is actually used by threading to pick a root message (Thread#each). Stripping
the Re: header then gives incorrect behavior until the message has been loaded
from the source. Currently this isn't really a problem because threading isn't
called until all messages have been loaded from source, but in the future we
might optimize that a bit, at in the present, it gives weird results when
debugging.

9 years agoremove spurious ThreadIndexMode#handle_deleted_update
William Morgan [Sat, 29 Dec 2007 23:37:49 +0000 (15:37 -0800)]
remove spurious ThreadIndexMode#handle_deleted_update

9 years agocomments clarification for UpdateManager
William Morgan [Sat, 29 Dec 2007 22:37:29 +0000 (14:37 -0800)]
comments clarification for UpdateManager

9 years agobugfix for in-buffer search: corner case for results on last line
William Morgan [Thu, 27 Dec 2007 22:07:03 +0000 (14:07 -0800)]
bugfix for in-buffer search: corner case for results on last line

9 years agobugfix in question asking: update position when window is resized
William Morgan [Thu, 27 Dec 2007 18:14:08 +0000 (10:14 -0800)]
bugfix in question asking: update position when window is resized
previously we stored the position and width only once, at textfield
creation time, but then later screen resizings would make that
invalid. now we set those values every time we activate the textfield.

9 years agowhoops, fix spurious delete in previous commit
William Morgan [Wed, 26 Dec 2007 21:21:52 +0000 (13:21 -0800)]
whoops, fix spurious delete in previous commit

9 years agomake explicitly searching for "label:spam" and "label:deleted" work
William Morgan [Wed, 26 Dec 2007 20:44:37 +0000 (12:44 -0800)]
make explicitly searching for "label:spam" and "label:deleted" work
see comments for how this is possible without implementing our own
full-blown Ferret query parser.

9 years agouser query string normalization by pre-parsing with Ferret query parser
William Morgan [Wed, 26 Dec 2007 20:26:47 +0000 (12:26 -0800)]
user query string normalization by pre-parsing with Ferret query parser
This is a bit of a hack, because it relies on the fact that Ferret query
objects, when converted to string form, are normalized to have +field:text
and -field:text instead of AND, OR, and NOT keywords. Then we can apply
all our string substitutions to just the normalized form.

9 years agoadditional gmail-style query language additions
Marcus Williams [Sat, 22 Dec 2007 23:49:53 +0000 (15:49 -0800)]
additional gmail-style query language additions
original message:
Simple patch attached. Adds the "during" operator to the date searches
so you can say during:today or during:november . I prefer it to in/on
today :)

Also adds an alias for the label search of "is" so that you can do
more gmail like searches is:starred, is:unread, is:spam, is:deleted.
The last two required changing the return value to a list/pair in
parse_user_string_query and I'm not sure what the best way to do this
in ruby is. For now its a simple list. Also is there a better way to
deal with a nil result other than returning [nil,nil]? The first
element is the parsed query string, the second allows the parser to
add options to the query like :load_spam, :load_deleted which are then
used in the code already to drop (or not) the spam/deleted labeled
messages.

I figured you'd never want to search killed threads... and it made the
patch nastier because of the :skip_killed flag.

I'd like to add a has:attachment operator but the ferret index doesnt
appear to store enough info for this. It would be really nice to be
able to search for attachments (of certain types as well with
filename:...) I took a look at extending the index to add a new field
"filename" that contains a list of filenames attached to a message,
but this would break everyones index so I'm just requesting it as a
wishlist item rather than submitting a patch. With it you could do
wildcard filename attachment searches and the has:attachment search
would just be converted to a search for the presence of any filename.

9 years agoadd #pipe-to-process to text-mode
William Morgan [Sat, 22 Dec 2007 18:10:03 +0000 (10:10 -0800)]
add #pipe-to-process to text-mode

9 years agomove pipe-to-process functionality to a helper method in Mode
William Morgan [Sat, 22 Dec 2007 18:02:28 +0000 (10:02 -0800)]
move pipe-to-process functionality to a helper method in Mode
and away from thread-view-mode!

9 years agoadded #each_raw_message_line to draft source
William Morgan [Sat, 22 Dec 2007 18:00:44 +0000 (10:00 -0800)]
added #each_raw_message_line to draft source

9 years agoallow contacts without aliases and prompt for name changes in aliasing contacts
William Morgan [Fri, 21 Dec 2007 18:13:41 +0000 (10:13 -0800)]
allow contacts without aliases and prompt for name changes in aliasing contacts
based on a patch by pierre baillet

9 years agoupdated HACKING with better instructions for running locally and editing code
William Morgan [Fri, 21 Dec 2007 17:37:20 +0000 (09:37 -0800)]
updated HACKING with better instructions for running locally and editing code