diff --git a/README.md b/README.md index 75b71a4..97b8d6d 100644 --- a/README.md +++ b/README.md @@ -31,18 +31,46 @@ As of this writing (2023-04-30), this has only been tested in Vim v9, but is als ``` If you want to have other file types to use this plugin, you may add them to the `allowlist` above. -1. By default, this plugin tries to determine if the cursor is in an email address field ('From:', 'To:', 'Cc:', 'Bcc:', in English). The matching is case-insensitive. If you use another language, that names these fields differently, you can modify this in $MYVIMRC by adding the `g:muttgoobook_address_fields` global variable. This is designed to be a Vim regular expression, replace `['from', 'to', 'b\?cc']` accordingly: +1. By default, this plugin tries to determine if the cursor is in an email + address field ('From:', 'To:', 'Cc:', 'Bcc:', in English). The matching is + case-insensitive. If you use another language, that names these fields + differently, you can modify this in $MYVIMRC by adding the + `g:muttgoobook_address_fields` global variable. This is designed to be a + Vim regular expression, replace `['from', 'to', 'b\?cc']` accordingly: ```vim let g:muttgoobook_address_fields = '^\s*\(from\|to\|b\?cc\):\s*' ``` The above pattern is the default if this variable isn't specified. -1. Also, if your mutt aliases file is in a different path than _${HOME}/.mutt/aliases_, you can override it in $MYVIMRC with the global variable `g:mutt_aliases`: - ```vim - let g:mutt_aliases = '~/.mutt/aliases' +1. Also, if your mutt aliases file is in a different path than + _${HOME}/.mutt/aliases_, you can override it in $MYVIMRC with the global + variable `g:mutt_aliases`: ```vim let g:mutt_aliases = '~/.mutt/aliases' ``` - Again, what appears above is the default if not set explicitly to something else. Any double-quotes (`"`) and backslashes (`\`) in the mutt aliases file will be removed before pasting the results of the completion to the currently edited mail file. + Again, what appears above is the default if not set explicitly to + something else. Any double-quotes (`"`) and backslashes (`\`) in the mutt + aliases file will be removed before pasting the results of the completion + to the currently edited mail file. + +## How to use it +If asyncomplete is installed correctly and is working, editing +a file type of `mail` should show the popup completion menu after you've typed +the first three characters of the name or email address, as long as the cursor +is in a `From:`, `To:`, `Cc:`, or `Bcc` field. Case doesn't matter for the +name of the address field, and the cursor can be in a multi-line list of +names/email addresses. + +The listing of the popup completion menu will show mutt aliases and names from +goobook that match the string entered thus far. You can further limit the +results returned in the popup completion menu by typing more characters. +Select the alias or name and press `Enter`, and the value from the alias will +be pasted (for mutt aliases), and the name and email address from Google +Contacts (goobook). Values from mutt aliases will be pasted verbatim except +backslashes (`\`) and double-quotes (`"`) will be removed. Email addresses +from goobook will appear between angle brackets (`<` and `>`). ## TODO -* possibly set up some kind of trigger to post an email address from the mutt aliases file or Google Contacts, within the body of the message. +* possibly set up some kind of trigger to post an email address from the mutt + aliases file or Google Contacts, within the body of the message. +* Maybe integrate with other CLI contact services, but the project may need to + be renamed * Perform more testing!