all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* apt-utils
@ 2005-03-30 22:58 Sebastian Luque
  0 siblings, 0 replies; 3+ messages in thread
From: Sebastian Luque @ 2005-03-30 22:58 UTC (permalink / raw)


Hi,

I'm getting the following error, both with 'emacs' or 'emacs -q -no-site-file':


,-----[ *Backtrace* (lines: 1 - 14) ]
| Debugger entered--Lisp error: (invalid-function #<hash-table 'equal nil 21532/28048 0x9c6c6e8>)
|   #<hash-table 'equal nil 21532/28048 0x9c6c6e8>("emacs" nil nil)
|   ad-Orig-minibuffer-complete()
|   minibuffer-complete(1)
|   call-interactively(minibuffer-complete)
|   ad-Orig-completing-read("Choose Debian package: " #<hash-table 'equal nil 21532/28048 0x9c6c6e8> nil t nil nil nil nil)
|   completing-read("Choose Debian package: " #<hash-table 'equal nil 21532/28048 0x9c6c6e8> nil t nil)
|   apt-utils-choose-package()
|   apt-utils-show-package-1(t)
|   apt-utils-show-package()
| * call-interactively(apt-utils-show-package)
|   execute-extended-command(nil)
|   call-interactively(execute-extended-command)
`-----


System info:

- GNU Emacs 21.4.1 (i386-pc-linux-gnu, X toolkit, Xaw3d scroll bars) of
  2005-03-17 on trouble, modified by Debian

- apt-utils version:
  $Id: apt-utils.el,v 1.12 2004/11/26 02:49:03 psg Exp $


Thanks in advance for any help regarding this,
-- 
Sebastian P. Luque

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: apt-utils
       [not found] <mailman.704.1112224229.28103.help-gnu-emacs@gnu.org>
@ 2005-03-31  1:07 ` Neil Woods
  2005-03-31  4:26   ` apt-utils Sebastian Luque
  0 siblings, 1 reply; 3+ messages in thread
From: Neil Woods @ 2005-03-31  1:07 UTC (permalink / raw)


Sebastian Luque <sluque@mun.ca> writes:

> Hi,
>
> I'm getting the following error, both with 'emacs' or 'emacs -q -no-site-file':
>
>
> ,-----[ *Backtrace* (lines: 1 - 14) ]
> | Debugger entered--Lisp error: (invalid-function #<hash-table 'equal nil 21532/28048 0x9c6c6e8>)
> |   #<hash-table 'equal nil 21532/28048 0x9c6c6e8>("emacs" nil nil)
> |   ad-Orig-minibuffer-complete()
> |   minibuffer-complete(1)
> |   call-interactively(minibuffer-complete)
> |   ad-Orig-completing-read("Choose Debian package: " #<hash-table 'equal nil 21532/28048 0x9c6c6e8> nil t nil nil nil nil)
> |   completing-read("Choose Debian package: " #<hash-table 'equal nil 21532/28048 0x9c6c6e8> nil t nil)
> |   apt-utils-choose-package()
> |   apt-utils-show-package-1(t)
> |   apt-utils-show-package()
> | * call-interactively(apt-utils-show-package)
> |   execute-extended-command(nil)
> |   call-interactively(execute-extended-command)
> `-----
>
>
> System info:
>
> - GNU Emacs 21.4.1 (i386-pc-linux-gnu, X toolkit, Xaw3d scroll bars) of
>   2005-03-17 on trouble, modified by Debian
>
> - apt-utils version:
>   $Id: apt-utils.el,v 1.12 2004/11/26 02:49:03 psg Exp $

I've just tried it here with the same results. 

The problem is in the defconst form
'apt-utils-completing-read-hashtable-p' in the file apt-utils.el where a
test is made for the version of Emacs being used, and whether
completing-read supports hash table as input.

A quick fix would be to change the test as indicated:

(defconst apt-utils-completing-read-hashtable-p
  (and (not apt-utils-xemacs-p)
       (or
        ;; Next released version after 21.3 will support this
        (and
         (>= emacs-major-version 21)
         (>= emacs-minor-version 5))           ; <----- was 4
        (>= emacs-major-version 22)
        ;; As will the current pretest
        (string-match "\\..*\\..*\\." emacs-version)))
  "Non-nil if `completing-read' supports hash table as input.")

or simply to take out the major-version test < 22, on the likely
assumption that the next major release of Emacs will be version 22 (and
not 21.5).

Hope that helps.
-- 
Neil

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: apt-utils
  2005-03-31  1:07 ` apt-utils Neil Woods
@ 2005-03-31  4:26   ` Sebastian Luque
  0 siblings, 0 replies; 3+ messages in thread
From: Sebastian Luque @ 2005-03-31  4:26 UTC (permalink / raw)


Neil Woods <cnw+usenet@pobox.com> wrote:

[...]

> A quick fix would be to change the test as indicated:
>
> (defconst apt-utils-completing-read-hashtable-p
> (and (not apt-utils-xemacs-p)
> (or
> ;; Next released version after 21.3 will support this
> (and
> (>= emacs-major-version 21)
> (>= emacs-minor-version 5))           ; <----- was 4
> (>= emacs-major-version 22)
> ;; As will the current pretest
> (string-match "\\..*\\..*\\." emacs-version)))
> "Non-nil if `completing-read' supports hash table as input.")
>
> or simply to take out the major-version test < 22, on the likely
> assumption that the next major release of Emacs will be version 22 (and
> not 21.5).
>
> Hope that helps.

Thanks Neil, I tried your first solution, and it took care of the problem,
but somehow font-locking was gone. I just checked the author's website,
and followed up to the package's latest version:

https://alioth.debian.org/projects/mph-emacs-pkgs

which has the following version of the defconst:

(defconst apt-utils-completing-read-hashtable-p
  ;; I think this is a valid way to check this feature...
  (condition-case nil
      (or (all-completions "" (make-hash-table)) t)
    (error nil))
  "Non-nil if `completing-read' supports hash table as input.")


This seems to be working normally again.

Cheers,
-- 
Sebastian P. Luque

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2005-03-31  4:26 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2005-03-30 22:58 apt-utils Sebastian Luque
     [not found] <mailman.704.1112224229.28103.help-gnu-emacs@gnu.org>
2005-03-31  1:07 ` apt-utils Neil Woods
2005-03-31  4:26   ` apt-utils Sebastian Luque

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.