Re: mairix search

2011-05-03 Thread Jostein Berntsen
On 03.05.11,00:26, Tim Gray wrote:
 On Apr 29, 2011 at 01:56 PM +0200, Sebastian Tramp wrote:
 Is searching / indexing with mairix state of the art or is there a
 better solution available? I am quite happy with that, just wanted to
 ask ;-).
 
 I found that mairix was a lot better for me than nmzmail.  I used
 mairix for quite a bit.  I then found mu (and figured out how to
 compile it on OS X).  I liked that even more.
 
 Now however, I'm running notmuch as just an indexer.  It's pretty
 fast.  I really like it.  It's also being actively developed.  And
 the best part in my mind is that it's developed as a library with a
 command line utility.  So my secret dream is that some enterprising
 developer hooks notmuch directly into mutt.  That would be awesome.
 

I use mairix, but it seems like mu is being quite actively developed:

http://www.djcbsoftware.nl/code/mu/


Jostein




Re: mairix search

2011-05-03 Thread Sebastian Tramp
On Tue, May 03, 2011 at 12:26:45AM -0400, Tim Gray wrote:

 On Apr 29, 2011 at 01:56 PM +0200, Sebastian Tramp wrote:

 Is searching / indexing with mairix state of the art or is there a
 better solution available? I am quite happy with that, just wanted to
 ask ;-).

 I found that mairix was a lot better for me than nmzmail. I used
 mairix for quite a bit. I then found mu (and figured out how to
 compile it on OS X). I liked that even more.

 Now however, I'm running notmuch as just an indexer. It's pretty fast.
 I really like it. It's also being actively developed. And the best
 part in my mind is that it's developed as a library with a command
 line utility. So my secret dream is that some enterprising developer
 hooks notmuch directly into mutt. That would be awesome.

Sounds interesting. do you think, notmuch is faster than mairix (not that
I have a problem with mairix speed, just for our information)

Can you share your config parts regarding notmuch / mutt integration?
(or do you use it via emacs?)

best regards

Sebastian Tramp

-- 
Sebastian Tramp
WebID: http://sebastian.tramp.name


Re: mairix search

2011-05-03 Thread Sebastian Tramp
On Mon, May 02, 2011 at 06:00:04PM -0400, Ed Blackman wrote:
 On Fri, Apr 29, 2011 at 02:08:33PM -0700, Omen Wild wrote:
 Quoting Ed Blackman e...@edgewood.to on Fri, Apr 29 17:03:
 
 In my case, mairixquery is a Perl script that prompts me for the mairix
 search string, gives me yes or no prompts for whether to search threads
 or augment previous results, and saves the most recent 100 searches so
 that I can make edits if the query returns too little or way too much.
 
 That sounds really interesting.  Any chance you would be willing to
 share it?
 
 Sure.  I've attached it.

great, it works for me. just a notice for the other: under
debian/ubuntu, there is a dependency for the libterm-readline-gnu-perl
package ...

best regards

Sebastian Tramp


Re: offlineimap much slower than gmail-imap

2011-05-03 Thread Scott Barker
On Mon, May 02, 2011 at 12:03:46AM +0200, Jose M Vidal wrote:
 I was happily using mutt with gmail-imap.
 Then I decided to switch to offlineimap+msmtp, so I could still use
 mutt offline, have a backup of all my e-mails and, hopefully, increase
 mutt speed by working locally.
 But, after having all installed an all my e-mails already downloaded
 (10GB / 45.000 e-mails), every time I switch from INBOX to All Mail,
 it takes 6 minutes (!) to refresh the index.
 I had caché enabled with imap, and I am stilll keeping it in my .muttrc:
 
 set header_cache=~/.mutt/GMail/cache/headers¬
 set message_cachedir=~/.mutt/GMail/cache/bodies¬
 
 But I am afraid cache only works with online imap, because now
 accessing to folders is much-much slower than with previous online
 configuration.
 Is  there anything I can do to speed-up my mutt?
 Thanks in advanced,
 
 -- 
 jm
 
 PS: my mutt is 1.5.20

If your maildir is on an ecryptfs filesystem, the problem is the stat() call
that mutt makes to check for changes in the maildir files. This is very slow
on an ecryptfs filesystem because the header on every file must be decrypted
for the stat() call. If you are certain that no other program might modify
your mail files, you can unset maildir_header_cache_verify to bypass the
stat() call. I use this for my large archive folders (which I also set
read-only for safety) with a folder hook:

  folder-hook 'archive' 'push toggle-write; unset maildir_header_cache_verify'

After I did this, access to my large folders became virtually instant.

-- 
Scott Barker   sc...@mostlylinux.ca
Linux Consultant   http://www.mostlylinux.ca/scott


Re: mairix search

2011-05-03 Thread Tim Gray

On May 03, 2011 at 08:39 AM +0200, Jostein Berntsen wrote:

I use mairix, but it seems like mu is being quite actively developed:


Yes, mu is quite actively developed.  I liked it a fair amount.  I just 
have a feeling that notmuch has a brighter future.


Re: offlineimap much slower than gmail-imap

2011-05-03 Thread Jose M Vidal
Hi everybody.
Thank you very much for your help.

The situation now is:

1- As my /home folder is ecrypt I added to my .muttrc your suggestion
(folder-hook 'archive' 'push toggle-write; unset
maildir_header_cache_verify')
Apparently, after a first refresh, the update of files looks
inmediate, but after using mutt a little bit, it turns slower againg.
The end result is that there's not a significant improve in
performance: Sometimes it is very fast, sometimes it is very slow.

2- I checked my data, ang got this:

jm@jm-ThinkPad-X200s:~/.mail/GMail/[Gmail].All Mail$ du -h
4,0K./tmp
940K./new
9,4G./cur
9,4G.
jm@jm-ThinkPad-X200s:~/.mail/GMail/[Gmail].All Mail$ find . -type f | wc -l
47860

The data shown in my mutt status page is the same (I am using google
apps, premium, so nothing strange about having more than 7Gb)

3- My system is 32 bit.

jm@jm-ThinkPad-X200s:~$ uname -m
i686

4- After working a little bit with I/O, I get:

  TID  PRIO  USER DISK READ  DISK WRITE  SWAPIN  IOCOMMAND
120  4886 be/4 jm  2.38 M/s0.00 B/s  0.00 % 96.43 % mutt

Honestly speaking, I don't know what to do with this information.
Thanks again for your help.

jm

PS: will keep tokyo-cabinet for later, thanks. Think that
understanding what is happenings is neccessary first.


Re: mairix search

2011-05-03 Thread Tim Gray

On May 03, 2011 at 08:47 AM +0200, Sebastian Tramp wrote:

Sounds interesting. do you think, notmuch is faster than mairix (not that
I have a problem with mairix speed, just for our information)


It's been a while since I've used mairix.  I forget exactly how long it 
took to index things initially.  I do remember however that I would only 
reindex to look for new mail once or twice a day because it took a fair 
amount of time and cpu power.


I'm currently indexing about 260,000 messages across many maildirs.  For 
unimportant reasons, I just reindexed them all from scratch last night.  
It took 1 hour and 10 minutes.  I did this while I was video chatting a 
friend.  This was an 'initial' index.  Subsequent indexing, looking for 
newly delivered messages, takes between 20-40 seconds, so I can run it 
every time I check for mail.  Which I do - I have it in my getmail 
script.  You can run it any time you want with the command `notmuch 
new`.


The other thing that I liked about notmuch infinitely more than mairix, 
and a fair bit more than mu, is that the search syntax just feels more 
natural to me.  Your mileage may vary.



Can you share your config parts regarding notmuch / mutt integration?
(or do you use it via emacs?)


I don't use it via emacs.  The mutt integration is very similar to what 
you'd do with mairix or mu.  A couple of bindings that just run the 
command line 'notmuch' program with your search terms following.  You do 
need to do a bit of command line piping to turn the filenames that 
notmuch outputs as search results into symbolic links.  Then you jump to 
a maildir with the results.


Though you can run it directly like this, I wrote a little python script 
that I call instead which gives me readline search history and cleans 
out the search results automatically when I make a new search.  I've 
attached the script 'notmuch-mutt.py'.  I started building in support 
for notmuch's tagging features but kind of lost interest.  You could 
also write an option if you want to *not* clear out the previous search 
results; then you could build up results incrementally if you desired.


I have a couple bindings defined.  I'll try to list them below; 
hopefully they don't get too jumbled up since they are kind of long (I 
don't break up my bindings definitions into separate lines in my muttrc 
- hopefully the \'s I put in break things appropriately).


This one just changes to the search results folder:
macro index,pager .r change-folder-readonly \
  ~/.notmuchmutt/search enter 


This on runs a search:
macro index,pager .s enter-commandunset wait_keyenter \
  shell-escape~/bin/notmuch-mutt.py -penter \
  change-folder-readonly~/.notmuchmutt/searchenter \
  enter-commandset wait_keyenter

This on runs a search and includes the full thread in the results.  You 
can also run it on a search result to reconstruct the thread from the 
message of interest.

macro index,pager .t enter-commandunset wait_keyenter \
  pipe-message~/bin/notmuch-mutt.py - --threadenter \
  change-folder-readonly~/.notmuchmutt/searchenter \
  enter-commandset wait_keyenter

This runs muttjump on the current message (see below).  I don't do all 
the screen stuff that muttjump can do.

macro generic .o enter-commandpush pipe-messagemuttjump \
  enterenter jump to original message

notmuch also has python bindings, so you can access the library 
directly.  For some reason on OS X, they don't work right for me, so my 
python script just calls the command line utility directly.


I also use the awesome 'muttjump' script [1].  It takes you to the 
parent mailbox of a message in the search results.


Hopefully I didn't forget any important bits.  The actual notmuch config 
file is very simple as there aren't a lot of relevant options.  You just 
set the directory to your maildir, and define your user name and address 
(I think this is used only if you are running it in emacs or vim as a 
full mail client).  Lastly, you can set which tags get set for new 
messages and whether or not you want imap flags (read, flagged, etc.) 
that are set in notmuch synchronized back to the maildir files.  Again, 
the last option is mostly for the full notmuch client.


[1]: https://github.com/weisslj/muttjump
#!/usr/bin/env python

__author__ = Tim Gray
__version__ = 1.0

import sys
import os
import optparse
import subprocess as sb
import shlex
import email
import readline

cfgdir = '~/.notmuchmutt'
cfgdir = os.path.expanduser(cfgdir)
searchdir = os.path.join(cfgdir, search/)
searchhist = os.path.join(cfgdir, 'search-history')
taghist = os.path.join(cfgdir, 'tag-history')
if os.path.isdir(cfgdir):
cfgFlag = True
else:
print 'must run with --config first to set up directory'
sys.exit(10)

class notmuch():
def __init__(self):
self.nm = '/usr/local/bin/notmuch'

def runCmd(self, query):
Runs the given command.
cmd 

Re: offlineimap much slower than gmail-imap

2011-05-03 Thread Jose M Vidal
 What does the following command give you (assuming your disk is /dev/sda):

    hdparm -tT /dev/sda

jm@jm-ThinkPad-X200s:~$ sudo hdparm -tT /dev/sda6

/dev/sda6:
 Timing cached reads:   2738 MB in  2.00 seconds = 1370.52 MB/sec
 Timing buffered disk reads:  116 MB in  3.02 seconds =  38.45 MB/sec

PS: note I had to sudo it. My /home doesn't have a specific partition this time:
jm@jm-ThinkPad-X200s:~$ df -h
S.archivosTam.  Usado Disp. % Uso Montado en
/dev/sda6  45G   29G   14G  69% /
none  950M  320K  950M   1% /dev
none  956M  1,7M  954M   1% /dev/shm
none  956M  100K  955M   1% /var/run
none  956M 0  956M   0% /var/lock
/home/jm/.Private  45G   29G   14G  69% /home/jm

Thanks again,


-- 
jm


quoted-printable not displaying correctly

2011-05-03 Thread Grant Edwards
I've noticed that pretty much all of the e-mail I get from MS Windows
users is not being displayed correctly.

The problem messages are multipart/alternative.

There are two parts:

The first is

  Content-Type: text/plain; charset=utf-8
  Content-Transfer-Encoding: quoted-printable

The second is

  Content-Type: text/plain; charset=utf-8
  Content-Transfer-Encoding: quoted-printable

The latter gets displayed properly when filtered through w3m, but I'd
rather not to do that, so I have mutt configured to prefer the
text/plain alternative, but it isn't getting displayed properly.

The text/plain body looks something like this:

Weird... where did all those question marks come from?=C2=A0 I just checked=
my sent file and they're not there.=C2=A0 I'm gramatically correct.=C2=
=A0 -jill=20

And it gets displayed like this:

Weird... where did all those question marks come from??? I just checked my
sent file and they're not there.?? I'm gramatically correct.?? -jill

As you can see, the =C20=A0 sequences get displayed as ??.  The =20
sequences and the end-of-line = characters seem to be handled OK.

How do I fix this?

-- 
Grant Edwards   grant.b.edwardsYow! I am NOT a nut
  at   
  gmail.com



Re: quoted-printable not displaying correctly

2011-05-03 Thread Grant Edwards
On 2011-05-03, Grant Edwards grant.b.edwa...@gmail.com wrote:
 I've noticed that pretty much all of the e-mail I get from MS Windows
 users is not being displayed correctly.

 The problem messages are multipart/alternative.

 There are two parts:

 The first is

   Content-Type: text/plain; charset=utf-8
   Content-Transfer-Encoding: quoted-printable

I didn't have LANG (or any of the LC_ variables) set.  Setting LANG to
en_US.UTF-8 and running mutt in a UTF8 capable terminal fixed the problem.

-- 
Grant Edwards   grant.b.edwardsYow! Here we are in America
  at   ... when do we collect
  gmail.comunemployment?