Emacs: Predictive Completion package

The Emacs Predictive Completion package adds a new minor-mode to the GNU Emacs editor. When enabled, predictive mode exploits the redundancy inherent in languages in order to complete words you are typing before you've finished typing them (somewhat like the IntelliSense feature in some IDEs). It is highly customisable, and works happily alongside other Emacs major modes. See the documentation for more details.

Predictive mode only works under GNU Emacs, not under XEmacs. It may be possible to get it to work under XEmacs with a modicum of work. (At the very least, the overlay compatibility package would be required.) If you're interested in attempting this, then I'm happy to answer questions, but I have no plans to do it myself.

Download and Installation

The current release of the Predictive Completion package is version 0.24 (released February 2013). It's still under active development, so don't forget to check back here for updates every so often. If you want to live on the bleeding edge, the latest "development" version of the Predictive package is hosted in a git repository.

  • Git repository: http://www.dr-qubit.org/git/predictive.git
  • Current version (0.24)

Note that the git repository URL is a git repository, not a web-site. You cannot view it in a web browser. To grab the latest development version, clone the repository using something like:

git clone http://www.dr-qubit.org/git/predictive.git

Whether you downloaded the package or cloned the git repository, you need to perform some further steps in order to install the Predictive Completion package on your system. See the Obtaining and Installing section of the manual and the INSTALL file included in the package for installation instructions.


Full documentation is available in a variety of formats, for download and viewing online.

If you're interested in using predictive mode, you should read the extensive Predictive User Manual.

The Predictive Programmer Manual contains low-level information for people who want to write their own lisp code to enhance predictive mode, for instance to make predictive completion work in other major modes. However, there is one reason why you might not want to read the programmer manual: it doesn't exist yet. Some of the information that would be in the programmer manual, were it to exist, is described in the auto-overlays manual (which does exist!). The Completion-UI manual would contain further relevant information, were it to exist.

Predictive User Manual

Predictive Programmer Manual


Other sources of information

The Predictive Mode page on the Emacs Wiki contains various useful pieces of information about the Predictive Completion package. (And if you don't find the information you want, you can always add it yourself and then read it.)

Mathias Dahl has also posted a nice tutorial about using predictive mode on his blog.

Bugs and Feature Requests

Bugs, feature requests, and any other feedback should be addressed to toby-predictive@dr-qubit.org. (Note that this address is protected by the TMDA spam-reduction system. The first time you send an email, you will have to verify your address by replying to a confirmation message.)

If you have code you would like to contribute to the Predictive package, either send a patch against the latest development version to toby-predictive@dr-qubit.org. Or, better still, use git, rebase your work against the latest git master, and let me know where to find your clone of the Predictive repository so that I can pull your changes.

A list of known bugs and feature suggestions is included at the end of the user manual.

Leave a comment

All comments are moderated. By submitting your comment you agree to license the content under a Creative Commons Attribution-ShareAlike 4.0 International License.

Creative Commons License