Skip to content
An extensible thesaurus mode for emacs
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.


Synosaurus is a thesaurus fontend for Emacs with pluggable backends.


Getting Started

  • Synosaurus is available from MELPA. Install it with:
    M-x package-install synosaurus

    Or if you really want to install it manually, add the synosaurus directory to your load-path:

    (add-to-list 'load-path "/path/to/synosaurus")
  • Then enable the minor mode with synosaurus-mode.


The main commands for you to use are:

Queries you for a word, looks it up in the thesaurus and shows you a list of alternatives. You can click or press RET on these alternatives to look them up instead.
Look up the word under the cursor, asks you to select one of the alternatives and replaces the original word with you selection. You can configure different methods for the alternative selection, see below.
Asks for a word, presents a list of synonyms to choose from, and inserts the selected one into the current buffer.

The default keybindings are:

C-c C-s lsynosaurus-lookup
C-c C-s rsynosaurus-choose-and-replace
C-c C-s isynosaurus-choose-and-insert


Synosaurus can be configured through the normal customization interface of emacs. Take a look at:

M-x customize-group synosaurus

The individual options are:

  • synosaurus-backend

    The thesaurus backend to use. This can also be set per buffer.

  • synosaurus-choose-method

    The way, synosaurus-choose-and-replace should query you for alternatives. The following symbols are acceptable values.

    Use the library popup.el to show a popup with alternatives. This is recommended and the default, but you will need to install popup.el separately.
    Use IDO to show a nice fuzzy matching completing minibuffer.
    Use the normal minibuffer completion.


Two thesaurus backends are implemented right now in various states of completion.

Openthesaurus is a open German thesaurus and is supported quite well, but needs an Internet connection to be queried. Its backend function is called synosaurus-backend-openthesaurus.

Wordnet is a English thesaurus, that can be installed as a separate program called wn, that is used offline. Wordnet can do lot’s of things other than simple lists of synonyms. Not many of these features are supported by synosaurus, yet. Wordnet’s backend function is called synosaurus-backend-wordnet.


  • popup.el, if you want to use the popup method for choosing alternatives.
You can’t perform that action at this time.