all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Geek4AllSeasons <Geek4AllSeasons@hotmail.com>
To: Help-gnu-emacs@gnu.org
Subject: info/info+ (23.1.50/EmacsW32) - Error creating toplevel dir menu
Date: Sun, 10 Jan 2010 12:15:06 -0800 (PST)	[thread overview]
Message-ID: <27101958.post@talk.nabble.com> (raw)


A problem creating the toplevel dir menu (C-h i) was corrected with changes
below. Comments/suggestions would be appreciated on:

1. appropriate list/forum
2. change correctness
3. issues (regarding 2.)

After upgrading to EmacsW32+Emacs20091103 (patched) the toplevel dir menu
went missing. "Can't find dir or any compressed version of it" appears in
*messages*/*backtrace*.

After some Edebug hacking I found a mismatch in the "filename" parameter
being passed down from:
[info](Info-directory)->
[info](Info-find-node "dir" "top")->
[info+](Info-find-node-2 "dir" "top" )

The Dir menu was created after the following change was made in in
[info+]Info-find-node-2:

--- /cygdrive/d/Download/Emacs/info+.el	2010-01-10 18:09:46.262804400 +0000
+++ /cygdrive/c/Software/Emacs/site-lisp/auto-install/info+.el	2010-01-10
18:20:21.967298700 +0000
@@ -1463,8 +1463,9 @@
                        buffer-file-name nil)
                  (erase-buffer)
                  (cond
-                   ((eq filename t)
-                    (Info-insert-dir))
+                   ((or (eq filename t)
+			(equal filename "dir"))
+		    (Info-insert-dir))
                    ((eq filename 'apropos)
                     (insert-buffer-substring " *info-apropos*"))
                    ((eq filename 'history)

The fix was made in info+.el to localize side effects and due to limited
knowledge of dependencies/design intent. The underlying problem maybe in the
"virtual" info logic. There may be a shortcircut between filename and
nodename semantics. Info-find-node calls Info-find-file. The first and only
case executed there is:

(Info-virtual-call (Info-virtual-fun 'find-file "dir" nil) "dir" noerror))

The problem is/was caused by 'find-file mapping to Info-directory-find-file,
which just returns the unchanged filename. 'find-node would map to
Info-directory-find-node, which calls Info-insert-dir (see above).

-- 
View this message in context: http://old.nabble.com/info-info%2B-%2823.1.50-EmacsW32%29---Error-creating-toplevel-dir-menu-tp27101958p27101958.html
Sent from the Emacs - Help mailing list archive at Nabble.com.





             reply	other threads:[~2010-01-10 20:15 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-01-10 20:15 Geek4AllSeasons [this message]
2010-01-10 21:38 ` info/info+ (23.1.50/EmacsW32) - Error creating toplevel dir menu Peter Dyballa
2010-01-10 21:46 ` Lennart Borgman
2010-01-11  0:15 ` Drew Adams

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=27101958.post@talk.nabble.com \
    --to=geek4allseasons@hotmail.com \
    --cc=Help-gnu-emacs@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.