Context-Menu-CM

Usage:
This code provides a simple mechanism for allowing multiple tools to use Hemlock's contextual popup menu.  It is based on the idea of a "default" tool.  Right-Click in a Hemlock window produces the default tool's popup menu. The default tool popup menu has tool-specific entries, but it also has a "Tool" submenu.  The "Tool" submenu lists all other available tools.  Selecting a tool makes it the default.

Currently, there are three tools that you can load:
    CL-Documentation-CM -- provides access to documentation for :CL symbols. 
    Hemlock-Commands-CM -- provides access to documentation for Hemlock commands.
    List-Definitions-CM -- provides a listing of file definitions, plus 2 history lists.
    (See the respective ReadMe files for details.)

The point of the utility, however, is to make it easy to select which tools you want to use and to make it easy to write and integrate your own new tools.  There is a simple API for this, described in the file "NewTools".

HyperSpec: CL-Documentation-CM and Hemlock-Commands-CM require the HyperSpec.  You either have to be connected to the internet, or you need to use a local copy and set this variable in ~/ccl-init.lisp:

;;; Use your own path here, if you are using a local copy of the HyperSpec:
(setq gui::*hyperspec-root-url* (gui::pathname-to-url "/Lisp/hyperspec-7-0/"))
 Set the variable before you require the tools.  A local copy is recommended.

Setup:
cd  ccl/contrib/
svn update

That will pull in new versions of all contribs, including Context-Menu, Hemlock-Commands-CM, CL-Documentation-CM and List-Definitions-CM.

In the Listener or in ~/ccl-init.lisp execute these forms:

;;; Use your own path here, if you are using a local copy of the HyperSpec:
(setq gui::*hyperspec-root-url* (gui::pathname-to-url "/Lisp/hyperspec-7-0/"))

(require :context-menu-cm)
(require :cl-documentation-cm)
(require :list-definitions-cm)
(require :hemlock-commands-cm)
(cmenu:set-default-tool "List-Definitions-CM")

Then (but only as a last resort) read the documentation for each tool.

Context-Menu-CM and the other tools are also available at:   www.clairvaux.org/downloads/
But updating the contribs directory and then requiring what you need works nicely.

Shareware:
If you decide to use Context-Menu-CM on a regular basis, please make a $5 contribution to either the Save Darfur Coalition or the World Wildlife Fund.  You can do this online.