Skip to main content

Notmuch addressbook

Project description

Notmuch Addressbook Utility

Notmuch Addressbook manager for vim
===================================

DEPENDENCES
-----------

* notmuch with python bindings

INSTALL
-------

* Standalone install

if you do not want to use the vim script file, you can install the module as follows:

```
python setup.py install
```

or using:

```
pip install notmuch_abook
```

* Vimscript install

Use vundle to install this script, add to your vimrc:

```
Bundle "guyzmo/notmuch-abook"
```

for convenience, you can create a symlink to your bin directory:
```
ln -s $HOME/.vim/bundle/notmuch-abook/pylibs/notmuch_addresses.py ~/bin/notmuch-abook
```

CONFIGURATION
-------------

Open notmuch configuration file (usually $HOME/.notmuch-config) and add:

```
[addressbook]
path=/home/USER/.notmuch-abook.db
backend=sqlite3
```

where USER is your username (or at any other place)

Default notmuch query string is

```
NOT tag:junk AND NOT folder:drafts AND NOT tag:deleted
```

If you prefer something else, you can specify it in notmuch configuration file:

```
[addressbook]
path=/home/USER/.notmuch-abook.db
backend=sqlite3
query=folder:Inbox OR folder:Sent
```

If you use a non-default notmuch configuration file, you can set it in your vimrc with:

```
let g:notmuchconfig = "~/.notmuch-config-custom"
```

In your favorite mail filter program, add a rule such as (for procmail), so all new mail will be parsed:

```
:0 Wh
| python $HOME/.vim/bundle/notmuch-abook/pylibs/notmuch_addresses.py update
```

If you can't use procmail (eg if you are using offlineimap) then you could put the following few lines at the start of the [post-new hook](http://notmuchmail.org/manpages/notmuch-hooks-5/) (**before** you remove the new tag). Also note this is shell syntax, so you'll have to adapt if your hook is in another language.

```
# first update notmuch-abook
for file in $(notmuch search --output=files tag:new) ; do
cat $file | $HOME/bin/notmuch-abook update
done
```

USAGE
-----

For the first time, you shall launch the script as follows to create the addresses database (it takes ~20 seconds for 10000 mails):

```
python $HOME/.vim/bundle/notmuch-abook/pylibs/notmuch_addresses.py create
```

and then, to lookup an address, either you use the vimscript to complete (<c-x><c-u>) the name in a header field,
or you can call it from commandline:

```
python $HOME/.vim/bundle/notmuch-abook/pylibs/notmuch_addresses.py lookup Guyz
```

the script will match any word beginning with the pattern in the name and address parts of the entry.

LICENSE
-------

(c)2013, Bernard Guyzmo Pratz, guyzmo at m0g dot net

Even though it is a WTFPL license, if you do improve that code, it's great, but if you
don't tell me about that, you're just a moron. And if you like that code, you have the
right to buy me a beer, thank me, or [flattr](http://flattr.com/profile/guyzmo)/[gittip](http://gittip.com/guyzmo) me.

```
DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE
Version 2, December 2004

Copyright (C) 2004 Sam Hocevar <sam@hocevar.net>

Everyone is permitted to copy and distribute verbatim or modified
copies of this license document, and changing it is allowed as long
as the name is changed.

DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION

0. You just DO WHAT THE FUCK YOU WANT TO.
```

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

notmuch_abook-1.7.tar.gz (8.2 kB view details)

Uploaded Source

Built Distributions

notmuch_abook-1.7-py3.4.egg (16.9 kB view details)

Uploaded Source

notmuch_abook-1.7-py2.7.egg (16.8 kB view details)

Uploaded Source

File details

Details for the file notmuch_abook-1.7.tar.gz.

File metadata

  • Download URL: notmuch_abook-1.7.tar.gz
  • Upload date:
  • Size: 8.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for notmuch_abook-1.7.tar.gz
Algorithm Hash digest
SHA256 7154eab2886f0dde66106bcd1f65983953a1c9b236cd5ae5c53d119133a2f83f
MD5 f526ca40f7faf33e5604d4391b7d2b42
BLAKE2b-256 a59cd840ca22bfd0bb800413311a07d5d22e3f895502889255724cd3f4e33739

See more details on using hashes here.

File details

Details for the file notmuch_abook-1.7-py3.4.egg.

File metadata

File hashes

Hashes for notmuch_abook-1.7-py3.4.egg
Algorithm Hash digest
SHA256 6e343321e08131a2a11939b6b54abb4a0fa17442f9b5ce6625e47c0d4d1b03ff
MD5 e38b659d7a1df76ec026508e9e268b89
BLAKE2b-256 6acdb439378ab6460b477768a0b43150ba95332238a1566d9939a64a76c8ce30

See more details on using hashes here.

File details

Details for the file notmuch_abook-1.7-py2.7.egg.

File metadata

File hashes

Hashes for notmuch_abook-1.7-py2.7.egg
Algorithm Hash digest
SHA256 2dae74fb97e2f03ffba1ef1a0ca5a5bece4ce58723bbff26627b7b8b883154c3
MD5 3ebfaed2e5472773ce8d24c373bb4c97
BLAKE2b-256 83e369ccc7e5ecce64871759729f9f8b945287f7c04d878657b00f35da7f31ba

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page