[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: getting help for your guile libraries in emacs
From: |
Andy Wingo |
Subject: |
Re: getting help for your guile libraries in emacs |
Date: |
Sun, 25 Nov 2007 19:40:03 +0100 |
User-agent: |
Gnus/5.11 (Gnus v5.11) Emacs/22.1.50 (gnu/linux) |
On Sun 25 Nov 2007 19:16, Andy Wingo <address@hidden> writes:
> In your .emacs:
So, turns out there was a typo, a missing definition for mapcan (?), and
a lack of a require statement. Try this:
(require 'info-look)
(setq scheme-mode-doc-specs nil)
(setq Info-additional-directory-list
(list "~/src/guile-1.8/doc/ref"
"~/src/guile-1.8/doc/goops"))
(setq scheme-mode-doc-specs
'(("(guile)Procedure Index" nil "^ -+ .*: " " ")
("(guile)Variable Index" nil "^ -+ .*: " " ")
("(guile)R5RS Index" nil "^ -+ .*: " " ")
("(goops)Function and Variable Index" nil "^ -+ .*: " " ")))
(setq guile-gnome-platform-dir "~/src/guile-gnome/platform/")
(setq guile-gnome-platform-doc-paths
'("glib/doc/gobject"
"glib/doc/glib"
"atk/doc"
"pango/doc/pango"
"pango/doc/pangocairo"
"gtk/doc/gdk"
"gtk/doc/gtk"
"libglade/doc"
"gnome-vfs/doc"
"libgnome/doc"
"libgnomeui/doc"
"libgnomecanvas/doc"
"gconf/doc"))
(setq guile-gnome-platform-doc-names
(mapcar
(lambda (x)
(string-match "^\\([a-z0-9-]+\\)/doc/?\\([a-z0-9-]+\\)?$" x)
(or (match-string 2 x) (match-string 1 x)))
guile-gnome-platform-doc-paths))
(if guile-gnome-platform-dir
(nconc Info-additional-directory-list
(mapcar
(lambda (path)
(concat guile-gnome-platform-dir path))
guile-gnome-platform-doc-paths)))
(defun mapcan (f l) (apply 'nconc (mapcar f l)))
(nconc scheme-mode-doc-specs
(mapcan
(lambda (wrapset)
(list (list (concat "(guile-gnome-" wrapset ")Type Index") nil
"^ -+ .*: " " ")
(list (concat "(guile-gnome-" wrapset ")Function Index") nil
"^ -+ .*: " " ")))
guile-gnome-platform-doc-names))
(info-lookup-add-help
:mode 'scheme-mode
:regexp "[^()`',\" \t\n]+"
:ignore-case nil
:doc-spec scheme-mode-doc-specs)
Cheers,
Andy
--
http://wingolog.org/