Jag har nyligen bytt epostläsare från Wanderlust till notmuch. Båda två är emacsbaserade (eller ok, notmuch är strängt taget ett fristående program, men gränssnittet är emacsbaserat). De har dock en väldigt olika ingång på själva epostläsandet. Medan Wanderlust är en ganska vanlig epostläsare så är notmuch annorlunda. Istället för att sortera epost i inkorgar så slänger den in all inkommande post i en databas, och förser varje meddelande med en eller flera taggar. Från början får varje meddelande specialtaggarna »inbox« och »unread«, där båda dessa försvinner (läs: tas bort av läsaren) när man har läst klart ett mail. Tack vare databasen går det löjligt fort att både söka och tagga epost genom notmuch. Även om det är jättemycket epost. Det gör att man kan sortera mycket inkommande post automatiskt. Ardbetsflödet går till ungefär såhär hos mig:
hämta eposten med offlineimap (eller feed2imap för RSS) och släng in den i olika mappar i ~/inmail/ lägg in eposten och tagga den i notmuch (se kod nedan) öppna eposten i notmuch i Emacs skumma igenom inboxen, tagga mail som jag behöver följa upp (långa mail som ska läsas sen eller svaras mer noga med t.ex) med todo gör samma sak med inkorgen som meddelanden från RSSen kommer i tagga alla intressanta RSS-meddelanden med »rek« — ett program jag har skrivit genererar ett RSS-flöde med dessa varje timme, och laddar upp det till min webserver via FTP (ev. vid ett senare tillfälle) hantera todo-markerad epost och ta bort todo-taggen när de är klara
Men eftersom jag bara nyligen har börjat med det så kan det komma att ändras (tips mottages tacksamt!). De inställningar jag har gjort för Emacs finns dels i min mail.el, förutom en del SMTP-relaterat som finns i secrets.el. De skulle kunna se ut ungefär såhär: Såhär ser scriptet ut som jag kör när jag hämtar ny epost till Notmuch: Av någon anledning kör det inte som en hook till offlineimap — om någon vet varför, så säg till. Nu är det inget större problem, jag kan bara lägga till det i samma script för cron. För att se om jag har fått nya mail kör jag ett script som i princip anropar notmuch count. Resultatet visas sedan i min statusrad i xmonad/xmobar, men det skulle förstås fungera ihop med t.ex. dwms statusrad också. Medan allt fungerar tillräckligt bra för att jag inte ska titta tillbaka mot Wanderlust så finns det fortfarande en del frågetecken:
Jag kan tabbkomplettera adresser i inkommande meddelanden, det verkar som om det kommer från BBDB. Men hur matar jag BBDB med epost från notmuch? Görs det automatisk? Jag kör SpamAssassin på min epostserver, den taggar allt spam med [SPAM] i ämnesfältet. Men man kan av någon anledning inte söka på varesig reguljära uttryck, stora bokstäver eller, konstigast av allt, tecknet [ eller ] i notmuch, så min nuvarande spam-tagg innehåller alla mail med ordet »spam« någonstans i ämnesfältet. När jag har www-sökt har jag inte sett något om hur man integrerar spamhantering med notmuch. Notmuch har någon funktion att den tuggar igenom HTML-epost och genererar en råtextupplaga av den, med bl.a. länkar som fotnoter. Det är en jättebra idé och jag tycker verkligen att det ska vara kvar. Men, emacsprogrammet visar både den omtuggade versionen och html-delen, efter varandra. Det är fantastiskt opraktiskt om man läser sina RSS-flöden som HTML-epost. Lyckligtvis sägs det att de jobbar på detta. Det finns mig veterligen ingen metod för att sortera inkommande post efter vilken IMAP- eller Maildir-låda den hamnar i, vilket gör att mina filter som jag har på epostservern blir relativt värdelösa. Onödigt! Dessutom omöjliggör det en lång rad smarta lösningar för att komma runt notmuch begränsade söksyntax.
Feel free to Flattr this post at flattr.com, if you like it.
