Homepage: https://www.gnu.org/software/emacs
Author: Lars Magne Ingebrigtsen
Electric completion of addresses and the like
ecomplete stores matches in a file that looks like this: ((mail ("larsi@gnus.org" 38154 1516109510 "Lars Ingebrigtsen") ("kfogel@red-bean.com" 10 1516065455 "Karl Fogel ") ... )) That is, it's an alist map where the key is the "type" of match (so that you can have one list of things for `mail' and one for, say, `twitter'). In each of these sections you then have a list where each item is on the form (KEY TIMES-USED LAST-TIME-USED STRING) If you call `ecomplete-display-matches', it will then display all items that match STRING. KEY is unique and is used to identify the item, and is used for updates. For instance, if given the above data, you call (ecomplete-add-item "larsi@gnus.org" 'mail "Lars Magne Ingebrigtsen ") the "larsi@gnus.org" entry will then be updated with that new STRING. The interface functions are `ecomplete-add-item' and `ecomplete-display-matches', while `ecomplete-setup' should be called to read the .ecompleterc file, and `ecomplete-save' are called to save the file.