GNU bug report logs -
#36107
Be explicit here. Make a statement or ask a question.
Previous Next
Reported by: <d40547914 <at> dvuadmin.net>
Date: Wed, 5 Jun 2019 20:28:01 UTC
Severity: normal
Done: Mats Lidell <matsl <at> gillsatra.se>
Bug is archived. No further changes may be made.
To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 36107 in the body.
You can then email your comments to 36107 AT debbugs.gnu.org in the normal way.
Toggle the display of automated, internal messages from the tracker.
Report forwarded
to
bug-hyperbole <at> gnu.org
:
bug#36107
; Package
hyperbole
.
(Wed, 05 Jun 2019 20:28:01 GMT)
Full text and
rfc822 format available.
Acknowledgement sent
to
<d40547914 <at> dvuadmin.net>
:
New bug report received and forwarded. Copy sent to
bug-hyperbole <at> gnu.org
.
(Wed, 05 Jun 2019 20:28:02 GMT)
Full text and
rfc822 format available.
Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):
I use: Editor: GNU Emacs 26.1 (build 1, x86_64-w64-mingw32)
Hyperbole: 7.0.3
Sys Type: x86_64-w64-mingw32
OS Type: windows-nt
Window Sys: w32
News Reader: Gnus v5.13
[Although, I've confirmed this also happens on my Mac, with the same
Hyperbole version/Emacs version]
Report:
Howdy! I don't know if this is actually a bug, but I've run into some
weirdness with Global buttons.
Let's say that I've created a Global button to a Notes file, which lives
in my Org folder in my Home directory ("~/Org/Notes.org"). The button
metadata looks like this:
> ("Notes" nil nil link-to-file ("../Org/Notes.org") "USERNAMEHERE" "20190605:19:57:51" nil nil)
When I initially created the button, calling it with {C-h h g a}
correctly opened the document. All good so far.
Then I got to working on something else. Later, when I tried to call the
button again, and got this error:
> hpath:find: (hpath:find): "Org/Notes.org" does not exist
The file definitely exists, and hasn't been changed. But what *did*
change was my current working directory.
The problem -- if it actually *is* a problem -- seems to be in the
assumption Hyperbole makes that I'm always calling global buttons inside
the "~/.hyperb" folder.
When I work with other files, and change what folder I'm in, Hyperbole
doesn't seem to know to change the current working directory back to
"~/.hyperb" -- so, when I call global buttons, it's calling the relative
path ("..Org/Notes.org") from the place I'm currently working (say,
"~/Work/Project 1").
If I changed the button metadata to read ("~/Org/Notes.org") the button
immediately works as intended -- but having to manually alter every
global button seems like odd behavior.
Like I said, I don't know if this is a bug, or what. I usually assume
it's me doing something dumb to make this stuff happen -- but to try to
eliminate user error I quickly wrote an empty ".emacs" file that *only*
loaded Hyperbole, and I still saw the same behavior.
No idea! Hyperbole seems cool -- if it's something I'm doing wrong, I'd
love to fix it!
etb
Information forwarded
to
bug-hyperbole <at> gnu.org
:
bug#36107
; Package
hyperbole
.
(Wed, 05 Jun 2019 21:11:02 GMT)
Full text and
rfc822 format available.
Message #8 received at 36107 <at> debbugs.gnu.org (full text, mbox):
I just realized I didn't put a subject on my report -- oops! Sorry!
etb
Information forwarded
to
bug-hyperbole <at> gnu.org
:
bug#36107
; Package
hyperbole
.
(Thu, 06 Jun 2019 06:22:02 GMT)
Full text and
rfc822 format available.
Message #11 received at 36107 <at> debbugs.gnu.org (full text, mbox):
[Message part 1 (text/plain, inline)]
This is indeed a bug. Evaluate this function after loading Hyperbole and I
believe this will resolve it. The default-directory was not set properly
in this function.
(defun hpath:find (filename &optional display-where)
"Edits file FILENAME using user customizable settings of display program
and location.
FILENAME may start with a special prefix character which is
handled as follows:
!filename - execute as a non-windowed program within a shell;
&filename - execute as a windowed program;
-filename - load as an Emacs Lisp program.
Otherwise, if FILENAME matches a regular expression in the alist returned by
\(hpath:get-external-display-alist), the associated external display
program is invoked.
If not, `hpath:internal-display-alist' is consulted for a specialized
internal
display function to use. If no matches are found there,
`hpath:display-where-alist' is consulted using the optional argument,
DISPLAY-WHERE (a symbol) or if that is nil, the value of
`hpath:display-where', and the matching display function is used.
Allows for hash-style link references to HTML, Markdown or Emacs outline
headings of the form, <file>#<anchor-name>.
Returns non-nil iff file is displayed within a buffer (not with an external
program)."
(interactive "FFind file: ")
(let ((case-fold-search t)
modifier loc default-directory anchor hash path)
(if (string-match hpath:prefix-regexp filename)
(setq modifier (aref filename 0)
filename (substring filename (match-end 0))))
(setq path (hpath:substitute-value
(if (string-match hpath:markup-link-anchor-regexp filename)
(progn (setq hash t
anchor (match-string 3 filename))
(substring filename 0 (match-end 1)))
filename))
loc (hattr:get 'hbut:current 'loc)
default-directory (file-name-directory
;; Loc may be a buffer without a file
(if (stringp loc) loc default-directory))
filename (hpath:absolute-to path default-directory))
(let ((remote-filename (hpath:remote-p path)))
(or modifier remote-filename
(file-exists-p filename)
(error "(hpath:find): \"%s\" does not exist" filename))
(or modifier remote-filename
(file-readable-p filename)
(error "(hpath:find): \"%s\" is not readable" filename))
;; If filename is a remote file (not a directory, we have to copy it
to
;; a temporary local file and then display that.
(when (and remote-filename (not (file-directory-p remote-filename)))
(copy-file remote-filename
(setq path (concat hpath:tmp-prefix
(file-name-nondirectory remote-filename)))
t t)
(setq filename (cond (anchor (concat remote-filename "#" anchor))
(hash (concat remote-filename "#"))
(t path)))))
(cond (modifier (cond ((eq modifier ?!)
(hact 'exec-shell-cmd filename))
((eq modifier ?&)
(hact 'exec-window-cmd filename))
((eq modifier ?-)
(load filename)))
nil)
(t (let ((display-executables (hpath:find-program path))
executable)
(cond ((stringp display-executables)
(hact 'exec-window-cmd
(hpath:command-string display-executables
filename))
nil)
((hypb:functionp display-executables)
(funcall display-executables filename)
t)
((and (listp display-executables) display-executables)
(setq executable (hpath:find-executable
display-executables))
(if executable
(hact 'exec-window-cmd
(hpath:command-string executable
filename))
(error "(hpath:find): No available executable from: %s"
display-executables)))
(t (setq path (hpath:validate path))
(if (null display-where)
(setq display-where hpath:display-where))
(funcall
(car (cdr (or (assq display-where
hpath:display-where-alist)
(assq 'other-window
hpath:display-where-alist))))
path)
(if (or hash anchor) (hpath:to-markup-anchor hash anchor))
t)))))))
On Wed, Jun 5, 2019 at 5:20 PM <d40547914 <at> dvuadmin.net> wrote:
>
>
> I just realized I didn't put a subject on my report -- oops! Sorry!
>
> etb
>
> _______________________________________________
> Bug-hyperbole mailing list
> Bug-hyperbole <at> gnu.org
> https://lists.gnu.org/mailman/listinfo/bug-hyperbole
[Message part 2 (text/html, inline)]
Information forwarded
to
bug-hyperbole <at> gnu.org
:
bug#36107
; Package
hyperbole
.
(Thu, 06 Jun 2019 11:59:01 GMT)
Full text and
rfc822 format available.
Message #14 received at 36107 <at> debbugs.gnu.org (full text, mbox):
Thanks for looking at it!
Got an error with that code, though -- here's what I did:
1. Loaded Emacs. Hyperbole auto-loaded.
2. Invoked the "Notes" global button -- just to make sure Hyperbole was
running and good to go.
3. Evaluated provided code
4. Invoked "Notes" global button again and this is what the debugger
gave me:
Debugger entered--Lisp error: (void-function hypb:functionp)
(hypb:functionp display-executables)
(cond ((stringp display-executables) (funcall hrule:action (quote exec-window-cmd) (hpath:command-string display-executables filename)) nil) ((hypb:functionp display-executables) (funcall display-executables filename) t) ((and (listp display-executables) display-executables) (setq executable (hpath:find-executable display-executables)) (if executable (funcall hrule:action (quote exec-window-cmd) (hpath:command-string executable filename)) (error "(hpath:find): No available executable from: %s" display-executables))) (t (setq path (hpath:validate path)) (if (null display-where) (setq display-where hpath:display-where)) (funcall (car (cdr (or (assq display-where hpath:display-where-alist) (assq (quote other-window) hpath:display-where-alist)))) path) (if (or hash anchor) (hpath:to-markup-anchor hash anchor)) t))
(let ((display-executables (hpath:find-program path)) executable) (cond ((stringp display-executables) (funcall hrule:action (quote exec-window-cmd) (hpath:command-string display-executables filename)) nil) ((hypb:functionp display-executables) (funcall display-executables filename) t) ((and (listp display-executables) display-executables) (setq executable (hpath:find-executable display-executables)) (if executable (funcall hrule:action (quote exec-window-cmd) (hpath:command-string executable filename)) (error "(hpath:find): No available executable from: %s" display-executables))) (t (setq path (hpath:validate path)) (if (null display-where) (setq display-where hpath:display-where)) (funcall (car (cdr (or (assq display-where hpath:display-where-alist) (assq ... hpath:display-where-alist)))) path) (if (or hash anchor) (hpath:to-markup-anchor hash anchor)) t)))
(cond (modifier (cond ((eq modifier 33) (funcall hrule:action (quote exec-shell-cmd) filename)) ((eq modifier 38) (funcall hrule:action (quote exec-window-cmd) filename)) ((eq modifier 45) (load filename))) nil) (t (let ((display-executables (hpath:find-program path)) executable) (cond ((stringp display-executables) (funcall hrule:action (quote exec-window-cmd) (hpath:command-string display-executables filename)) nil) ((hypb:functionp display-executables) (funcall display-executables filename) t) ((and (listp display-executables) display-executables) (setq executable (hpath:find-executable display-executables)) (if executable (funcall hrule:action (quote exec-window-cmd) (hpath:command-string executable filename)) (error "(hpath:find): No available executable from: %s" display-executables))) (t (setq path (hpath:validate path)) (if (null display-where) (setq display-where hpath:display-where)) (funcall (car (cdr ...)) path) (if (or hash anchor) (hpath:to-markup-anchor hash anchor)) t)))))
(let ((case-fold-search t) modifier loc default-directory anchor hash path) (if (string-match hpath:prefix-regexp filename) (setq modifier (aref filename 0) filename (substring filename (match-end 0)))) (setq path (hpath:substitute-value (if (string-match hpath:markup-link-anchor-regexp filename) (progn (setq hash t anchor (match-string 3 filename)) (substring filename 0 (match-end 1))) filename)) loc (hattr:get (quote hbut:current) (quote loc)) default-directory (file-name-directory (if (stringp loc) loc default-directory)) filename (hpath:absolute-to path default-directory)) (let ((remote-filename (hpath:remote-p path))) (or modifier remote-filename (file-exists-p filename) (error "(hpath:find): \"%s\" does not exist" filename)) (or modifier remote-filename (file-readable-p filename) (error "(hpath:find): \"%s\" is not readable" filename)) (if (and remote-filename (not (file-directory-p remote-filename))) (progn (copy-file remote-filename (setq path (concat hpath:tmp-prefix (file-name-nondirectory remote-filename))) t t) (setq filename (cond (anchor (concat remote-filename "#" anchor)) (hash (concat remote-filename "#")) (t path)))))) (cond (modifier (cond ((eq modifier 33) (funcall hrule:action (quote exec-shell-cmd) filename)) ((eq modifier 38) (funcall hrule:action (quote exec-window-cmd) filename)) ((eq modifier 45) (load filename))) nil) (t (let ((display-executables (hpath:find-program path)) executable) (cond ((stringp display-executables) (funcall hrule:action (quote exec-window-cmd) (hpath:command-string display-executables filename)) nil) ((hypb:functionp display-executables) (funcall display-executables filename) t) ((and (listp display-executables) display-executables) (setq executable (hpath:find-executable display-executables)) (if executable (funcall hrule:action ... ...) (error "(hpath:find): No available executable from: %s" display-executables))) (t (setq path (hpath:validate path)) (if (null display-where) (setq display-where hpath:display-where)) (funcall (car ...) path) (if (or hash anchor) (hpath:to-markup-anchor hash anchor)) t))))))
hpath:find("../Org/Notes.org")
#f(compiled-function (path &optional point) (interactive #f(compiled-function () #<bytecode 0x1ff0aed>)) #<bytecode 0x1ee53dd>)("../Org/Notes.org")
apply(#f(compiled-function (path &optional point) (interactive #f(compiled-function () #<bytecode 0x23136a5>)) #<bytecode 0x1ee53dd>) "../Org/Notes.org")
eval((apply action args))
actype:act(actypes::link-to-file "../Org/Notes.org")
apply(actype:act actypes::link-to-file "../Org/Notes.org")
hbut:act(hbut:current)
gbut:act("Notes")
funcall-interactively(gbut:act "Notes")
call-interactively(gbut:act)
hui:menu-act(hyperbole nil nil nil)
hyperbole(nil nil nil nil)
funcall-interactively(hyperbole nil nil nil nil)
call-interactively(hyperbole nil nil)
command-execute(hyperbole)
Information forwarded
to
bug-hyperbole <at> gnu.org
:
bug#36107
; Package
hyperbole
.
(Thu, 06 Jun 2019 12:58:02 GMT)
Full text and
rfc822 format available.
Message #17 received at 36107 <at> debbugs.gnu.org (full text, mbox):
[Message part 1 (text/plain, inline)]
Strange as hypb:functionp is marked to be autoloaded and should be in
hyperbole-autoloads.el. Check if it is or not. Load it manually and then
test:
{M-x load-lib RET hypb RET}
On Thu, Jun 6, 2019 at 7:58 AM <d40547914 <at> dvuadmin.net> wrote:
>
> Thanks for looking at it!
>
> Got an error with that code, though -- here's what I did:
>
> 1. Loaded Emacs. Hyperbole auto-loaded.
>
> 2. Invoked the "Notes" global button -- just to make sure Hyperbole was
> running and good to go.
>
> 3. Evaluated provided code
>
> 4. Invoked "Notes" global button again and this is what the debugger
> gave me:
>
> Debugger entered--Lisp error: (void-function hypb:functionp)
> (hypb:functionp display-executables)
> (cond ((stringp display-executables) (funcall hrule:action (quote
> exec-window-cmd) (hpath:command-string display-executables filename)) nil)
> ((hypb:functionp display-executables) (funcall display-executables
> filename) t) ((and (listp display-executables) display-executables) (setq
> executable (hpath:find-executable display-executables)) (if executable
> (funcall hrule:action (quote exec-window-cmd) (hpath:command-string
> executable filename)) (error "(hpath:find): No available executable from:
> %s" display-executables))) (t (setq path (hpath:validate path)) (if (null
> display-where) (setq display-where hpath:display-where)) (funcall (car (cdr
> (or (assq display-where hpath:display-where-alist) (assq (quote
> other-window) hpath:display-where-alist)))) path) (if (or hash anchor)
> (hpath:to-markup-anchor hash anchor)) t))
> (let ((display-executables (hpath:find-program path)) executable) (cond
> ((stringp display-executables) (funcall hrule:action (quote
> exec-window-cmd) (hpath:command-string display-executables filename)) nil)
> ((hypb:functionp display-executables) (funcall display-executables
> filename) t) ((and (listp display-executables) display-executables) (setq
> executable (hpath:find-executable display-executables)) (if executable
> (funcall hrule:action (quote exec-window-cmd) (hpath:command-string
> executable filename)) (error "(hpath:find): No available executable from:
> %s" display-executables))) (t (setq path (hpath:validate path)) (if (null
> display-where) (setq display-where hpath:display-where)) (funcall (car (cdr
> (or (assq display-where hpath:display-where-alist) (assq ...
> hpath:display-where-alist)))) path) (if (or hash anchor)
> (hpath:to-markup-anchor hash anchor)) t)))
> (cond (modifier (cond ((eq modifier 33) (funcall hrule:action (quote
> exec-shell-cmd) filename)) ((eq modifier 38) (funcall hrule:action (quote
> exec-window-cmd) filename)) ((eq modifier 45) (load filename))) nil) (t
> (let ((display-executables (hpath:find-program path)) executable) (cond
> ((stringp display-executables) (funcall hrule:action (quote
> exec-window-cmd) (hpath:command-string display-executables filename)) nil)
> ((hypb:functionp display-executables) (funcall display-executables
> filename) t) ((and (listp display-executables) display-executables) (setq
> executable (hpath:find-executable display-executables)) (if executable
> (funcall hrule:action (quote exec-window-cmd) (hpath:command-string
> executable filename)) (error "(hpath:find): No available executable from:
> %s" display-executables))) (t (setq path (hpath:validate path)) (if (null
> display-where) (setq display-where hpath:display-where)) (funcall (car (cdr
> ...)) path) (if (or hash anchor) (hpath:to-markup-anchor hash anchor))
> t)))))
> (let ((case-fold-search t) modifier loc default-directory anchor hash
> path) (if (string-match hpath:prefix-regexp filename) (setq modifier (aref
> filename 0) filename (substring filename (match-end 0)))) (setq path
> (hpath:substitute-value (if (string-match hpath:markup-link-anchor-regexp
> filename) (progn (setq hash t anchor (match-string 3 filename)) (substring
> filename 0 (match-end 1))) filename)) loc (hattr:get (quote hbut:current)
> (quote loc)) default-directory (file-name-directory (if (stringp loc) loc
> default-directory)) filename (hpath:absolute-to path default-directory))
> (let ((remote-filename (hpath:remote-p path))) (or modifier remote-filename
> (file-exists-p filename) (error "(hpath:find): \"%s\" does not exist"
> filename)) (or modifier remote-filename (file-readable-p filename) (error
> "(hpath:find): \"%s\" is not readable" filename)) (if (and remote-filename
> (not (file-directory-p remote-filename))) (progn (copy-file remote-filename
> (setq path (concat hpath:tmp-prefix (file-name-nondirectory
> remote-filename))) t t) (setq filename (cond (anchor (concat
> remote-filename "#" anchor)) (hash (concat remote-filename "#")) (t
> path)))))) (cond (modifier (cond ((eq modifier 33) (funcall hrule:action
> (quote exec-shell-cmd) filename)) ((eq modifier 38) (funcall hrule:action
> (quote exec-window-cmd) filename)) ((eq modifier 45) (load filename))) nil)
> (t (let ((display-executables (hpath:find-program path)) executable) (cond
> ((stringp display-executables) (funcall hrule:action (quote
> exec-window-cmd) (hpath:command-string display-executables filename)) nil)
> ((hypb:functionp display-executables) (funcall display-executables
> filename) t) ((and (listp display-executables) display-executables) (setq
> executable (hpath:find-executable display-executables)) (if executable
> (funcall hrule:action ... ...) (error "(hpath:find): No available
> executable from: %s" display-executables))) (t (setq path (hpath:validate
> path)) (if (null display-where) (setq display-where hpath:display-where))
> (funcall (car ...) path) (if (or hash anchor) (hpath:to-markup-anchor hash
> anchor)) t))))))
> hpath:find("../Org/Notes.org")
> #f(compiled-function (path &optional point) (interactive
> #f(compiled-function () #<bytecode 0x1ff0aed>)) #<bytecode
> 0x1ee53dd>)("../Org/Notes.org")
> apply(#f(compiled-function (path &optional point) (interactive
> #f(compiled-function () #<bytecode 0x23136a5>)) #<bytecode 0x1ee53dd>)
> "../Org/Notes.org")
> eval((apply action args))
> actype:act(actypes::link-to-file "../Org/Notes.org")
> apply(actype:act actypes::link-to-file "../Org/Notes.org")
> hbut:act(hbut:current)
> gbut:act("Notes")
> funcall-interactively(gbut:act "Notes")
> call-interactively(gbut:act)
> hui:menu-act(hyperbole nil nil nil)
> hyperbole(nil nil nil nil)
> funcall-interactively(hyperbole nil nil nil nil)
> call-interactively(hyperbole nil nil)
> command-execute(hyperbole)
>
[Message part 2 (text/html, inline)]
Information forwarded
to
bug-hyperbole <at> gnu.org
:
bug#36107
; Package
hyperbole
.
(Thu, 06 Jun 2019 13:31:02 GMT)
Full text and
rfc822 format available.
Message #20 received at 36107 <at> debbugs.gnu.org (full text, mbox):
Hmm. I followed the instructions, and still have the error.
I went looking for `hypb:functionp` and didn't find anything either --
though, obvs, I don't know the codebase, so it could be defined
somewhere non-obvious, or I may be totally missing something. Doesn't
come up in {M-x describe-function}, wasn't listed in
`hyperbole-autoloads.el`, and didn't turn up when I searched in the code
directory with `ag`.
I've been doing this testing on my normal init, but it doesn't come up
in a vanilla Emacs with just Hyperbole loaded either.
Robert Weiner <rsw <at> gnu.org> writes:
> Strange as hypb:functionp is marked to be autoloaded and should be in
> hyperbole-autoloads.el. Check if it is or not. Load it manually and
> then test:
>
> {M-x load-lib RET hypb RET}
>
> On Thu, Jun 6, 2019 at 7:58 AM <d40547914 <at> dvuadmin.net> wrote:
>
>
> Thanks for looking at it!
>
> Got an error with that code, though -- here's what I did:
>
> 1. Loaded Emacs. Hyperbole auto-loaded.
>
> 2. Invoked the "Notes" global button -- just to make sure
> Hyperbole was
> running and good to go.
>
> 3. Evaluated provided code
>
> 4. Invoked "Notes" global button again and this is what the
> debugger
> gave me:
>
> Debugger entered--Lisp error: (void-function hypb:functionp)
> (hypb:functionp display-executables)
> (cond ((stringp display-executables) (funcall hrule:action
> (quote exec-window-cmd) (hpath:command-string display-executables
> filename)) nil) ((hypb:functionp display-executables) (funcall
> display-executables filename) t) ((and (listp
> display-executables) display-executables) (setq executable
> (hpath:find-executable display-executables)) (if executable
> (funcall hrule:action (quote exec-window-cmd)
> (hpath:command-string executable filename)) (error "(hpath:find):
> No available executable from: %s" display-executables))) (t (setq
> path (hpath:validate path)) (if (null display-where) (setq
> display-where hpath:display-where)) (funcall (car (cdr (or (assq
> display-where hpath:display-where-alist) (assq (quote
> other-window) hpath:display-where-alist)))) path) (if (or hash
> anchor) (hpath:to-markup-anchor hash anchor)) t))
> (let ((display-executables (hpath:find-program path))
> executable) (cond ((stringp display-executables) (funcall
> hrule:action (quote exec-window-cmd) (hpath:command-string
> display-executables filename)) nil) ((hypb:functionp
> display-executables) (funcall display-executables filename) t)
> ((and (listp display-executables) display-executables) (setq
> executable (hpath:find-executable display-executables)) (if
> executable (funcall hrule:action (quote exec-window-cmd)
> (hpath:command-string executable filename)) (error "(hpath:find):
> No available executable from: %s" display-executables))) (t (setq
> path (hpath:validate path)) (if (null display-where) (setq
> display-where hpath:display-where)) (funcall (car (cdr (or (assq
> display-where hpath:display-where-alist) (assq ...
> hpath:display-where-alist)))) path) (if (or hash anchor)
> (hpath:to-markup-anchor hash anchor)) t)))
> (cond (modifier (cond ((eq modifier 33) (funcall hrule:action
> (quote exec-shell-cmd) filename)) ((eq modifier 38) (funcall
> hrule:action (quote exec-window-cmd) filename)) ((eq modifier 45)
> (load filename))) nil) (t (let ((display-executables
> (hpath:find-program path)) executable) (cond ((stringp
> display-executables) (funcall hrule:action (quote
> exec-window-cmd) (hpath:command-string display-executables
> filename)) nil) ((hypb:functionp display-executables) (funcall
> display-executables filename) t) ((and (listp
> display-executables) display-executables) (setq executable
> (hpath:find-executable display-executables)) (if executable
> (funcall hrule:action (quote exec-window-cmd)
> (hpath:command-string executable filename)) (error "(hpath:find):
> No available executable from: %s" display-executables))) (t (setq
> path (hpath:validate path)) (if (null display-where) (setq
> display-where hpath:display-where)) (funcall (car (cdr ...))
> path) (if (or hash anchor) (hpath:to-markup-anchor hash anchor))
> t)))))
> (let ((case-fold-search t) modifier loc default-directory
> anchor hash path) (if (string-match hpath:prefix-regexp filename)
> (setq modifier (aref filename 0) filename (substring filename
> (match-end 0)))) (setq path (hpath:substitute-value (if
> (string-match hpath:markup-link-anchor-regexp filename) (progn
> (setq hash t anchor (match-string 3 filename)) (substring
> filename 0 (match-end 1))) filename)) loc (hattr:get (quote
> hbut:current) (quote loc)) default-directory (file-name-directory
> (if (stringp loc) loc default-directory)) filename
> (hpath:absolute-to path default-directory)) (let
> ((remote-filename (hpath:remote-p path))) (or modifier
> remote-filename (file-exists-p filename) (error "(hpath:find): \
> "%s\" does not exist" filename)) (or modifier remote-filename
> (file-readable-p filename) (error "(hpath:find): \"%s\" is not
> readable" filename)) (if (and remote-filename (not
> (file-directory-p remote-filename))) (progn (copy-file
> remote-filename (setq path (concat hpath:tmp-prefix
> (file-name-nondirectory remote-filename))) t t) (setq filename
> (cond (anchor (concat remote-filename "#" anchor)) (hash (concat
> remote-filename "#")) (t path)))))) (cond (modifier (cond ((eq
> modifier 33) (funcall hrule:action (quote exec-shell-cmd)
> filename)) ((eq modifier 38) (funcall hrule:action (quote
> exec-window-cmd) filename)) ((eq modifier 45) (load filename)))
> nil) (t (let ((display-executables (hpath:find-program path))
> executable) (cond ((stringp display-executables) (funcall
> hrule:action (quote exec-window-cmd) (hpath:command-string
> display-executables filename)) nil) ((hypb:functionp
> display-executables) (funcall display-executables filename) t)
> ((and (listp display-executables) display-executables) (setq
> executable (hpath:find-executable display-executables)) (if
> executable (funcall hrule:action ... ...) (error "(hpath:find):
> No available executable from: %s" display-executables))) (t (setq
> path (hpath:validate path)) (if (null display-where) (setq
> display-where hpath:display-where)) (funcall (car ...) path) (if
> (or hash anchor) (hpath:to-markup-anchor hash anchor)) t))))))
> hpath:find("../Org/Notes.org")
> #f(compiled-function (path &optional point) (interactive #f
> (compiled-function () #<bytecode 0x1ff0aed>)) #<bytecode
> 0x1ee53dd>)("../Org/Notes.org")
> apply(#f(compiled-function (path &optional point) (interactive
> #f(compiled-function () #<bytecode 0x23136a5>)) #<bytecode
> 0x1ee53dd>) "../Org/Notes.org")
> eval((apply action args))
> actype:act(actypes::link-to-file "../Org/Notes.org")
> apply(actype:act actypes::link-to-file "../Org/Notes.org")
> hbut:act(hbut:current)
> gbut:act("Notes")
> funcall-interactively(gbut:act "Notes")
> call-interactively(gbut:act)
> hui:menu-act(hyperbole nil nil nil)
> hyperbole(nil nil nil nil)
> funcall-interactively(hyperbole nil nil nil nil)
> call-interactively(hyperbole nil nil)
> command-execute(hyperbole)
>
>
>
--
Eric Bemiller, MLIS | Regional Librarian
P 980-939-7159 | E ebemiller <at> chamberlain.edu
2015 Ayrsley Town Blvd., Ste. 204, Charlotte, NC 28273
Information forwarded
to
bug-hyperbole <at> gnu.org
:
bug#36107
; Package
hyperbole
.
(Thu, 06 Jun 2019 20:57:02 GMT)
Full text and
rfc822 format available.
Message #23 received at 36107 <at> debbugs.gnu.org (full text, mbox):
[Message part 1 (text/plain, inline)]
hypb:functionp is defined in the hypb.el file in the Hyperbole directory or:
"${hyperb:dir}/hypb.el"
Bob
On Thu, Jun 6, 2019 at 9:29 AM Eric Bemiller <d40547914 <at> dvuadmin.net> wrote:
>
> Hmm. I followed the instructions, and still have the error.
>
> I went looking for `hypb:functionp` and didn't find anything either --
> though, obvs, I don't know the codebase, so it could be defined
> somewhere non-obvious, or I may be totally missing something. Doesn't
> come up in {M-x describe-function}, wasn't listed in
> `hyperbole-autoloads.el`, and didn't turn up when I searched in the code
> directory with `ag`.
>
> I've been doing this testing on my normal init, but it doesn't come up
> in a vanilla Emacs with just Hyperbole loaded either.
>
> Robert Weiner <rsw <at> gnu.org> writes:
>
> > Strange as hypb:functionp is marked to be autoloaded and should be in
> > hyperbole-autoloads.el. Check if it is or not. Load it manually and
> > then test:
> >
> > {M-x load-lib RET hypb RET}
> >
> > On Thu, Jun 6, 2019 at 7:58 AM <d40547914 <at> dvuadmin.net> wrote:
> >
> >
> > Thanks for looking at it!
> >
> > Got an error with that code, though -- here's what I did:
> >
> > 1. Loaded Emacs. Hyperbole auto-loaded.
> >
> > 2. Invoked the "Notes" global button -- just to make sure
> > Hyperbole was
> > running and good to go.
> >
> > 3. Evaluated provided code
> >
> > 4. Invoked "Notes" global button again and this is what the
> > debugger
> > gave me:
> >
> > Debugger entered--Lisp error: (void-function hypb:functionp)
> > (hypb:functionp display-executables)
> > (cond ((stringp display-executables) (funcall hrule:action
> > (quote exec-window-cmd) (hpath:command-string display-executables
> > filename)) nil) ((hypb:functionp display-executables) (funcall
> > display-executables filename) t) ((and (listp
> > display-executables) display-executables) (setq executable
> > (hpath:find-executable display-executables)) (if executable
> > (funcall hrule:action (quote exec-window-cmd)
> > (hpath:command-string executable filename)) (error "(hpath:find):
> > No available executable from: %s" display-executables))) (t (setq
> > path (hpath:validate path)) (if (null display-where) (setq
> > display-where hpath:display-where)) (funcall (car (cdr (or (assq
> > display-where hpath:display-where-alist) (assq (quote
> > other-window) hpath:display-where-alist)))) path) (if (or hash
> > anchor) (hpath:to-markup-anchor hash anchor)) t))
> > (let ((display-executables (hpath:find-program path))
> > executable) (cond ((stringp display-executables) (funcall
> > hrule:action (quote exec-window-cmd) (hpath:command-string
> > display-executables filename)) nil) ((hypb:functionp
> > display-executables) (funcall display-executables filename) t)
> > ((and (listp display-executables) display-executables) (setq
> > executable (hpath:find-executable display-executables)) (if
> > executable (funcall hrule:action (quote exec-window-cmd)
> > (hpath:command-string executable filename)) (error "(hpath:find):
> > No available executable from: %s" display-executables))) (t (setq
> > path (hpath:validate path)) (if (null display-where) (setq
> > display-where hpath:display-where)) (funcall (car (cdr (or (assq
> > display-where hpath:display-where-alist) (assq ...
> > hpath:display-where-alist)))) path) (if (or hash anchor)
> > (hpath:to-markup-anchor hash anchor)) t)))
> > (cond (modifier (cond ((eq modifier 33) (funcall hrule:action
> > (quote exec-shell-cmd) filename)) ((eq modifier 38) (funcall
> > hrule:action (quote exec-window-cmd) filename)) ((eq modifier 45)
> > (load filename))) nil) (t (let ((display-executables
> > (hpath:find-program path)) executable) (cond ((stringp
> > display-executables) (funcall hrule:action (quote
> > exec-window-cmd) (hpath:command-string display-executables
> > filename)) nil) ((hypb:functionp display-executables) (funcall
> > display-executables filename) t) ((and (listp
> > display-executables) display-executables) (setq executable
> > (hpath:find-executable display-executables)) (if executable
> > (funcall hrule:action (quote exec-window-cmd)
> > (hpath:command-string executable filename)) (error "(hpath:find):
> > No available executable from: %s" display-executables))) (t (setq
> > path (hpath:validate path)) (if (null display-where) (setq
> > display-where hpath:display-where)) (funcall (car (cdr ...))
> > path) (if (or hash anchor) (hpath:to-markup-anchor hash anchor))
> > t)))))
> > (let ((case-fold-search t) modifier loc default-directory
> > anchor hash path) (if (string-match hpath:prefix-regexp filename)
> > (setq modifier (aref filename 0) filename (substring filename
> > (match-end 0)))) (setq path (hpath:substitute-value (if
> > (string-match hpath:markup-link-anchor-regexp filename) (progn
> > (setq hash t anchor (match-string 3 filename)) (substring
> > filename 0 (match-end 1))) filename)) loc (hattr:get (quote
> > hbut:current) (quote loc)) default-directory (file-name-directory
> > (if (stringp loc) loc default-directory)) filename
> > (hpath:absolute-to path default-directory)) (let
> > ((remote-filename (hpath:remote-p path))) (or modifier
> > remote-filename (file-exists-p filename) (error "(hpath:find): \
> > "%s\" does not exist" filename)) (or modifier remote-filename
> > (file-readable-p filename) (error "(hpath:find): \"%s\" is not
> > readable" filename)) (if (and remote-filename (not
> > (file-directory-p remote-filename))) (progn (copy-file
> > remote-filename (setq path (concat hpath:tmp-prefix
> > (file-name-nondirectory remote-filename))) t t) (setq filename
> > (cond (anchor (concat remote-filename "#" anchor)) (hash (concat
> > remote-filename "#")) (t path)))))) (cond (modifier (cond ((eq
> > modifier 33) (funcall hrule:action (quote exec-shell-cmd)
> > filename)) ((eq modifier 38) (funcall hrule:action (quote
> > exec-window-cmd) filename)) ((eq modifier 45) (load filename)))
> > nil) (t (let ((display-executables (hpath:find-program path))
> > executable) (cond ((stringp display-executables) (funcall
> > hrule:action (quote exec-window-cmd) (hpath:command-string
> > display-executables filename)) nil) ((hypb:functionp
> > display-executables) (funcall display-executables filename) t)
> > ((and (listp display-executables) display-executables) (setq
> > executable (hpath:find-executable display-executables)) (if
> > executable (funcall hrule:action ... ...) (error "(hpath:find):
> > No available executable from: %s" display-executables))) (t (setq
> > path (hpath:validate path)) (if (null display-where) (setq
> > display-where hpath:display-where)) (funcall (car ...) path) (if
> > (or hash anchor) (hpath:to-markup-anchor hash anchor)) t))))))
> > hpath:find("../Org/Notes.org")
> > #f(compiled-function (path &optional point) (interactive #f
> > (compiled-function () #<bytecode 0x1ff0aed>)) #<bytecode
> > 0x1ee53dd>)("../Org/Notes.org")
> > apply(#f(compiled-function (path &optional point) (interactive
> > #f(compiled-function () #<bytecode 0x23136a5>)) #<bytecode
> > 0x1ee53dd>) "../Org/Notes.org")
> > eval((apply action args))
> > actype:act(actypes::link-to-file "../Org/Notes.org")
> > apply(actype:act actypes::link-to-file "../Org/Notes.org")
> > hbut:act(hbut:current)
> > gbut:act("Notes")
> > funcall-interactively(gbut:act "Notes")
> > call-interactively(gbut:act)
> > hui:menu-act(hyperbole nil nil nil)
> > hyperbole(nil nil nil nil)
> > funcall-interactively(hyperbole nil nil nil nil)
> > call-interactively(hyperbole nil nil)
> > command-execute(hyperbole)
> >
> >
> >
>
> --
>
> Eric Bemiller, MLIS | Regional Librarian
>
> P 980-939-7159 | E ebemiller <at> chamberlain.edu
>
> 2015 Ayrsley Town Blvd., Ste. 204, Charlotte, NC 28273
>
[Message part 2 (text/html, inline)]
Information forwarded
to
bug-hyperbole <at> gnu.org
:
bug#36107
; Package
hyperbole
.
(Thu, 06 Jun 2019 21:27:01 GMT)
Full text and
rfc822 format available.
Message #26 received at 36107 <at> debbugs.gnu.org (full text, mbox):
Boy is this weird -- okay.
So, the version I'm getting from the package manager in Emacs doesn't
have 'hypb:functionp` defined in `hypb.el`.
I went and downloaded the archive version of 7.0.3 from the FTP
(ftp://ftp.gnu.org/gnu/hyperbole/), and looked in that version of
`hypb.el` -- and, what do you know, the function is there, and set to
autoload as you described.
I then deleted the version of Hyperbole in my site lisp, and reinstalled
it using the install instructions on the Hyperbole site. Checked the
newly installed version, and `hypb:functionp` still wasn't there.
So, I then loaded hyperbole using the code from the Archive version
rather than from the package manager (just unzipped it to a directory
and set the load path there), and eval'd the original patch you sent:
everything works correctly -- and the button problem appears to be
fixed?
Robert Weiner <rsw <at> gnu.org> writes:
> hypb:functionp is defined in the hypb.el file in the Hyperbole
> directory or:
>
> "${hyperb:dir}/hypb.el"
>
> Bob
>
>
> On Thu, Jun 6, 2019 at 9:29 AM Eric Bemiller <d40547914 <at> dvuadmin.net>
> wrote:
>
>
> Hmm. I followed the instructions, and still have the error.
>
> I went looking for `hypb:functionp` and didn't find anything
> either --
> though, obvs, I don't know the codebase, so it could be defined
> somewhere non-obvious, or I may be totally missing something.
> Doesn't
> come up in {M-x describe-function}, wasn't listed in
> `hyperbole-autoloads.el`, and didn't turn up when I searched in
> the code
> directory with `ag`.
>
> I've been doing this testing on my normal init, but it doesn't
> come up
> in a vanilla Emacs with just Hyperbole loaded either.
>
> Robert Weiner <rsw <at> gnu.org> writes:
>
> > Strange as hypb:functionp is marked to be autoloaded and should
> be in
> > hyperbole-autoloads.el. Check if it is or not. Load it
> manually and
> > then test:
> >
> > {M-x load-lib RET hypb RET}
> >
> > On Thu, Jun 6, 2019 at 7:58 AM <d40547914 <at> dvuadmin.net> wrote:
> >
> >
> > Thanks for looking at it!
> >
> > Got an error with that code, though -- here's what I did:
> >
> > 1. Loaded Emacs. Hyperbole auto-loaded.
> >
> > 2. Invoked the "Notes" global button -- just to make sure
> > Hyperbole was
> > running and good to go.
> >
> > 3. Evaluated provided code
> >
> > 4. Invoked "Notes" global button again and this is what the
> > debugger
> > gave me:
> >
> > Debugger entered--Lisp error: (void-function
> hypb:functionp)
> > (hypb:functionp display-executables)
> > (cond ((stringp display-executables) (funcall
> hrule:action
> > (quote exec-window-cmd) (hpath:command-string
> display-executables
> > filename)) nil) ((hypb:functionp display-executables)
> (funcall
> > display-executables filename) t) ((and (listp
> > display-executables) display-executables) (setq executable
> > (hpath:find-executable display-executables)) (if executable
> > (funcall hrule:action (quote exec-window-cmd)
> > (hpath:command-string executable filename)) (error "
> (hpath:find):
> > No available executable from: %s" display-executables))) (t
> (setq
> > path (hpath:validate path)) (if (null display-where) (setq
> > display-where hpath:display-where)) (funcall (car (cdr (or
> (assq
> > display-where hpath:display-where-alist) (assq (quote
> > other-window) hpath:display-where-alist)))) path) (if (or
> hash
> > anchor) (hpath:to-markup-anchor hash anchor)) t))
> > (let ((display-executables (hpath:find-program path))
> > executable) (cond ((stringp display-executables) (funcall
> > hrule:action (quote exec-window-cmd) (hpath:command-string
> > display-executables filename)) nil) ((hypb:functionp
> > display-executables) (funcall display-executables filename)
> t)
> > ((and (listp display-executables) display-executables)
> (setq
> > executable (hpath:find-executable display-executables)) (if
> > executable (funcall hrule:action (quote exec-window-cmd)
> > (hpath:command-string executable filename)) (error "
> (hpath:find):
> > No available executable from: %s" display-executables))) (t
> (setq
> > path (hpath:validate path)) (if (null display-where) (setq
> > display-where hpath:display-where)) (funcall (car (cdr (or
> (assq
> > display-where hpath:display-where-alist) (assq ...
> > hpath:display-where-alist)))) path) (if (or hash anchor)
> > (hpath:to-markup-anchor hash anchor)) t)))
> > (cond (modifier (cond ((eq modifier 33) (funcall
> hrule:action
> > (quote exec-shell-cmd) filename)) ((eq modifier 38)
> (funcall
> > hrule:action (quote exec-window-cmd) filename)) ((eq
> modifier 45)
> > (load filename))) nil) (t (let ((display-executables
> > (hpath:find-program path)) executable) (cond ((stringp
> > display-executables) (funcall hrule:action (quote
> > exec-window-cmd) (hpath:command-string display-executables
> > filename)) nil) ((hypb:functionp display-executables)
> (funcall
> > display-executables filename) t) ((and (listp
> > display-executables) display-executables) (setq executable
> > (hpath:find-executable display-executables)) (if executable
> > (funcall hrule:action (quote exec-window-cmd)
> > (hpath:command-string executable filename)) (error "
> (hpath:find):
> > No available executable from: %s" display-executables))) (t
> (setq
> > path (hpath:validate path)) (if (null display-where) (setq
> > display-where hpath:display-where)) (funcall (car (cdr
> ...))
> > path) (if (or hash anchor) (hpath:to-markup-anchor hash
> anchor))
> > t)))))
> > (let ((case-fold-search t) modifier loc default-directory
> > anchor hash path) (if (string-match hpath:prefix-regexp
> filename)
> > (setq modifier (aref filename 0) filename (substring
> filename
> > (match-end 0)))) (setq path (hpath:substitute-value (if
> > (string-match hpath:markup-link-anchor-regexp filename)
> (progn
> > (setq hash t anchor (match-string 3 filename)) (substring
> > filename 0 (match-end 1))) filename)) loc (hattr:get (quote
> > hbut:current) (quote loc)) default-directory
> (file-name-directory
> > (if (stringp loc) loc default-directory)) filename
> > (hpath:absolute-to path default-directory)) (let
> > ((remote-filename (hpath:remote-p path))) (or modifier
> > remote-filename (file-exists-p filename) (error "
> (hpath:find): \
> > "%s\" does not exist" filename)) (or modifier
> remote-filename
> > (file-readable-p filename) (error "(hpath:find): \"%s\" is
> not
> > readable" filename)) (if (and remote-filename (not
> > (file-directory-p remote-filename))) (progn (copy-file
> > remote-filename (setq path (concat hpath:tmp-prefix
> > (file-name-nondirectory remote-filename))) t t) (setq
> filename
> > (cond (anchor (concat remote-filename "#" anchor)) (hash
> (concat
> > remote-filename "#")) (t path)))))) (cond (modifier (cond
> ((eq
> > modifier 33) (funcall hrule:action (quote exec-shell-cmd)
> > filename)) ((eq modifier 38) (funcall hrule:action (quote
> > exec-window-cmd) filename)) ((eq modifier 45) (load
> filename)))
> > nil) (t (let ((display-executables (hpath:find-program
> path))
> > executable) (cond ((stringp display-executables) (funcall
> > hrule:action (quote exec-window-cmd) (hpath:command-string
> > display-executables filename)) nil) ((hypb:functionp
> > display-executables) (funcall display-executables filename)
> t)
> > ((and (listp display-executables) display-executables)
> (setq
> > executable (hpath:find-executable display-executables)) (if
> > executable (funcall hrule:action ... ...) (error "
> (hpath:find):
> > No available executable from: %s" display-executables))) (t
> (setq
> > path (hpath:validate path)) (if (null display-where) (setq
> > display-where hpath:display-where)) (funcall (car ...)
> path) (if
> > (or hash anchor) (hpath:to-markup-anchor hash anchor))
> t))))))
> > hpath:find("../Org/Notes.org")
> > #f(compiled-function (path &optional point) (interactive
> #f
> > (compiled-function () #<bytecode 0x1ff0aed>)) #<bytecode
> > 0x1ee53dd>)("../Org/Notes.org")
> > apply(#f(compiled-function (path &optional point)
> (interactive
> > #f(compiled-function () #<bytecode 0x23136a5>)) #<bytecode
> > 0x1ee53dd>) "../Org/Notes.org")
> > eval((apply action args))
> > actype:act(actypes::link-to-file "../Org/Notes.org")
> > apply(actype:act actypes::link-to-file "../Org/
> Notes.org")
> > hbut:act(hbut:current)
> > gbut:act("Notes")
> > funcall-interactively(gbut:act "Notes")
> > call-interactively(gbut:act)
> > hui:menu-act(hyperbole nil nil nil)
> > hyperbole(nil nil nil nil)
> > funcall-interactively(hyperbole nil nil nil nil)
> > call-interactively(hyperbole nil nil)
> > command-execute(hyperbole)
> >
> >
> >
Information forwarded
to
bug-hyperbole <at> gnu.org
:
bug#36107
; Package
hyperbole
.
(Thu, 06 Jun 2019 23:01:02 GMT)
Full text and
rfc822 format available.
Message #29 received at 36107 <at> debbugs.gnu.org (full text, mbox):
-- Bob
> On Jun 6, 2019, at 5:26 PM, Eric Bemiller <d40547914 <at> dvuadmin.net> wrote:
>
> I then deleted the version of Hyperbole in my site lisp, and reinstalled
> it using the install instructions on the Hyperbole site. Checked the
> newly installed version, and `hypb:functionp` still wasn't there.
Could you send the hyperbole.el and hypb.el files from this bad version so we can see how they are different?
Glad you got a working version too.
Information forwarded
to
bug-hyperbole <at> gnu.org
:
bug#36107
; Package
hyperbole
.
(Thu, 06 Jun 2019 23:46:02 GMT)
Full text and
rfc822 format available.
Message #32 received at 36107 <at> debbugs.gnu.org (full text, mbox):
[Message part 1 (text/plain, inline)]
Sure thing -- hopefully they're attached. These are a fresh download
from elpa.gnu.org
Robert Weiner <rswgnu <at> gmail.com> writes:
> -- Bob
>
>> On Jun 6, 2019, at 5:26 PM, Eric Bemiller <d40547914 <at> dvuadmin.net> wrote:
>>
>> I then deleted the version of Hyperbole in my site lisp, and reinstalled
>> it using the install instructions on the Hyperbole site. Checked the
>> newly installed version, and `hypb:functionp` still wasn't there.
>
> Could you send the hyperbole.el and hypb.el files from this bad version so we can see how they are different?
>
> Glad you got a working version too.
[hypb.el (application/emacs-lisp, attachment)]
[hyperbole.el (application/emacs-lisp, attachment)]
Information forwarded
to
bug-hyperbole <at> gnu.org
:
bug#36107
; Package
hyperbole
.
(Fri, 07 Jun 2019 03:39:01 GMT)
Full text and
rfc822 format available.
Message #35 received at 36107 <at> debbugs.gnu.org (full text, mbox):
[Message part 1 (text/plain, inline)]
On Thu, Jun 6, 2019 at 7:45 PM Eric Bemiller <d40547914 <at> dvuadmin.net> wrote:
>
> Sure thing -- hopefully they're attached. These are a fresh download
> from elpa.gnu.org
Ok, that helped show what is going on. You apparently are not downloading
release 7.0.3 but the head of the elpa git tree which includes a bunch of
additional changes that Stefan M. made for potential future use, as you can
see here:
http://git.savannah.gnu.org/gitweb/?p=emacs/elpa.git;a=shortlog;h=refs/heads/externals/hyperbole
So instead, don't use any form of git, just install Hyperbole from the
package manager after getting rid of all other versions and you will get
version 7.0.3 (confirmed today). Then apply that one patch I sent you.
Bob
[Message part 2 (text/html, inline)]
Information forwarded
to
bug-hyperbole <at> gnu.org
:
bug#36107
; Package
hyperbole
.
(Fri, 07 Jun 2019 14:28:01 GMT)
Full text and
rfc822 format available.
Message #38 received at 36107 <at> debbugs.gnu.org (full text, mbox):
I didn't reply all on the below -- whoops!
I'm laughing here, because I've been on your side of conversations like this a dozen times.
Unfortunately, I don't use git. The two files I sent over come from the code that's installed by the package manager directly. To get them, I moved my actual `.emacs.d` folder somewhere else, created a new `.emacs.d` folder containing an init that had only this in it:
(require 'package)
(setq package-enable-at-startup nil) ;; Prevent double loading of libraries
(package-initialize)
(unless (package-installed-p 'hyperbole)
(package-refresh-contents)
(package-install 'hyperbole))
(require 'hyperbole)
And then started Emacs as normal.
I tested this exact procedure again this morning, and although for whatever reason I got a couple of bad signature errors from elpa.gnu.org, the same set of files with the same missing stuff came down.
I swear I'm not *trying* to be frustrating! Sorry!
Addition: I checked the savannah link that's on the Hyperbole page (https://git.savannah.gnu.org/cgit/hyperbole.git/tree/, linked from the "ftp and git" section) and the `hypb.el` in there seems to be the same incomplete one I'm getting from the package manager:
https://git.savannah.gnu.org/cgit/hyperbole.git/tree/hbut.el
Thanks again for looking into all this stuff!
________________________________________
From: Robert Weiner <rsw <at> gnu.org>
Sent: Thursday, June 6, 2019 11:37 PM
To: Bemiller, Eric Timothy
Cc: 36107 <at> debbugs.gnu.org; Stefan Monnier; Lidell Mats
Subject: Re: bug#36107: Global Buttons Stop Functioning When Current Working Directory Changes (Forgot the Subject!)
On Thu, Jun 6, 2019 at 7:45 PM Eric Bemiller <d40547914 <at> dvuadmin.net<mailto:d40547914 <at> dvuadmin.net>> wrote:
Sure thing -- hopefully they're attached. These are a fresh download from elpa.gnu.org<http://elpa.gnu.org>
Ok, that helped show what is going on. You apparently are not downloading release 7.0.3 but the head of the elpa git tree which includes a bunch of additional changes that Stefan M. made for potential future use, as you can see here:
http://git.savannah.gnu.org/gitweb/?p=emacs/elpa.git;a=shortlog;h=refs/heads/externals/hyperbole
So instead, don't use any form of git, just install Hyperbole from the package manager after getting rid of all other versions and you will get version 7.0.3 (confirmed today). Then apply that one patch I sent you.
Bob
Information forwarded
to
bug-hyperbole <at> gnu.org
:
bug#36107
; Package
hyperbole
.
(Fri, 07 Jun 2019 16:59:02 GMT)
Full text and
rfc822 format available.
Message #41 received at 36107 <at> debbugs.gnu.org (full text, mbox):
[Message part 1 (text/plain, inline)]
On Fri, Jun 7, 2019 at 9:20 AM Bemiller, Eric Timothy <
EBemiller <at> chamberlain.edu> wrote:
> I didn't reply all on the below -- whoops!
>
> I'm laughing here, because I've been on your side of conversations like
> this a dozen times.
>
> Unfortunately, I don't use git. The two files I sent over come from the
> code that's installed by the package manager directly.
You are not getting Hyperbole V7.0.3 even though the version says that.
You must have something in your initializations that is pointing somewhere
that says, "Give me the latest code from Elpa" rather than "give me the
code published with the latest release number". Please send the value of
the 'package-archives' variable, so we can see from where your packages are
coming.
Mine that gets me the right code looks like:
package-archives is a variable defined in ‘package.el’.
Its value is
(("gnu" . "https://elpa.gnu.org/packages/")
("melpa" . "https://melpa.org/packages/"))
Original value was
(("gnu" . "https://elpa.gnu.org/packages/"))
Bob
To get them, I moved my actual `.emacs.d` folder somewhere else, created a
> new `.emacs.d` folder containing an init that had only this in it:
>
> (require 'package)
> (setq package-enable-at-startup nil) ;; Prevent double loading of
> libraries
> (package-initialize)
> (unless (package-installed-p 'hyperbole)
> (package-refresh-contents)
> (package-install 'hyperbole))
> (require 'hyperbole)
>
> And then started Emacs as normal.
>
> I tested this exact procedure again this morning, and although for
> whatever reason I got a couple of bad signature errors from elpa.gnu.org,
> the same set of files with the same missing stuff came down.
>
> I swear I'm not *trying* to be frustrating! Sorry!
>
> Addition: I checked the savannah link that's on the Hyperbole page (
> https://git.savannah.gnu.org/cgit/hyperbole.git/tree/, linked from the
> "ftp and git" section) and the `hypb.el` in there seems to be the same
> incomplete one I'm getting from the package manager:
>
> https://git.savannah.gnu.org/cgit/hyperbole.git/tree/hbut.el
>
> Thanks again for looking into all this stuff!
> ________________________________________
> From: Robert Weiner <rsw <at> gnu.org>
> Sent: Thursday, June 6, 2019 11:37 PM
> To: Bemiller, Eric Timothy
> Cc: 36107 <at> debbugs.gnu.org; Stefan Monnier; Lidell Mats
> Subject: Re: bug#36107: Global Buttons Stop Functioning When Current
> Working Directory Changes (Forgot the Subject!)
>
> On Thu, Jun 6, 2019 at 7:45 PM Eric Bemiller <d40547914 <at> dvuadmin.net
> <mailto:d40547914 <at> dvuadmin.net>> wrote:
>
> Sure thing -- hopefully they're attached. These are a fresh download from
> elpa.gnu.org<http://elpa.gnu.org>
>
> Ok, that helped show what is going on. You apparently are not downloading
> release 7.0.3 but the head of the elpa git tree which includes a bunch of
> additional changes that Stefan M. made for potential future use, as you can
> see here:
>
>
> http://git.savannah.gnu.org/gitweb/?p=emacs/elpa.git;a=shortlog;h=refs/heads/externals/hyperbole
>
> So instead, don't use any form of git, just install Hyperbole from the
> package manager after getting rid of all other versions and you will get
> version 7.0.3 (confirmed today). Then apply that one patch I sent you.
>
> Bob
>
>
[Message part 2 (text/html, inline)]
Information forwarded
to
bug-hyperbole <at> gnu.org
:
bug#36107
; Package
hyperbole
.
(Fri, 07 Jun 2019 17:23:02 GMT)
Full text and
rfc822 format available.
Message #44 received at 36107 <at> debbugs.gnu.org (full text, mbox):
[Message part 1 (text/plain, inline)]
Sure! Using only the attached init – which literally just loads Hyperbole -- I pull the incomplete versions of those files from elpa.gnu.org
And here’s the value of my `package-archives` when running that init:
package-archives is a variable defined in ‘package.el’.
Its value is (("gnu" . "https://elpa.gnu.org/packages/"))
I’m on a stock version of Emacs installed from the Emacs site, running regular Windows 10.
From: Robert Weiner <rsw <at> gnu.org>
Sent: Friday, June 7, 2019 12:58 PM
To: Bemiller, Eric Timothy <EBemiller <at> chamberlain.edu>
Cc: 36107 <at> debbugs.gnu.org; Stefan Monnier <monnier <at> iro.umontreal.ca>; Lidell Mats <matsl <at> gnu.org>
Subject: Re: bug#36107: Global Buttons Stop Functioning When Current Working Directory Changes (Forgot the Subject!)
On Fri, Jun 7, 2019 at 9:20 AM Bemiller, Eric Timothy <EBemiller <at> chamberlain.edu<mailto:EBemiller <at> chamberlain.edu>> wrote:
I didn't reply all on the below -- whoops!
I'm laughing here, because I've been on your side of conversations like this a dozen times.
Unfortunately, I don't use git. The two files I sent over come from the code that's installed by the package manager directly.
You are not getting Hyperbole V7.0.3 even though the version says that. You must have something in your initializations that is pointing somewhere that says, "Give me the latest code from Elpa" rather than "give me the code published with the latest release number". Please send the value of
the 'package-archives' variable, so we can see from where your packages are coming.
Mine that gets me the right code looks like:
package-archives is a variable defined in ‘package.el’.
Its value is
(("gnu" . "https://elpa.gnu.org/packages/")
("melpa" . "https://melpa.org/packages/"))
Original value was
(("gnu" . "https://elpa.gnu.org/packages/"))
Bob
To get them, I moved my actual `.emacs.d` folder somewhere else, created a new `.emacs.d` folder containing an init that had only this in it:
(require 'package)
(setq package-enable-at-startup nil) ;; Prevent double loading of libraries
(package-initialize)
(unless (package-installed-p 'hyperbole)
(package-refresh-contents)
(package-install 'hyperbole))
(require 'hyperbole)
And then started Emacs as normal.
I tested this exact procedure again this morning, and although for whatever reason I got a couple of bad signature errors from elpa.gnu.org<http://elpa.gnu.org>, the same set of files with the same missing stuff came down.
I swear I'm not *trying* to be frustrating! Sorry!
Addition: I checked the savannah link that's on the Hyperbole page (https://git.savannah.gnu.org/cgit/hyperbole.git/tree/, linked from the "ftp and git" section) and the `hypb.el` in there seems to be the same incomplete one I'm getting from the package manager:
https://git.savannah.gnu.org/cgit/hyperbole.git/tree/hbut.el
Thanks again for looking into all this stuff!
________________________________________
From: Robert Weiner <rsw <at> gnu.org<mailto:rsw <at> gnu.org>>
Sent: Thursday, June 6, 2019 11:37 PM
To: Bemiller, Eric Timothy
Cc: 36107 <at> debbugs.gnu.org<mailto:36107 <at> debbugs.gnu.org>; Stefan Monnier; Lidell Mats
Subject: Re: bug#36107: Global Buttons Stop Functioning When Current Working Directory Changes (Forgot the Subject!)
On Thu, Jun 6, 2019 at 7:45 PM Eric Bemiller <d40547914 <at> dvuadmin.net<mailto:d40547914 <at> dvuadmin.net><mailto:d40547914 <at> dvuadmin.net<mailto:d40547914 <at> dvuadmin.net>>> wrote:
Sure thing -- hopefully they're attached. These are a fresh download from elpa.gnu.org<http://elpa.gnu.org><http://elpa.gnu.org>
Ok, that helped show what is going on. You apparently are not downloading release 7.0.3 but the head of the elpa git tree which includes a bunch of additional changes that Stefan M. made for potential future use, as you can see here:
http://git.savannah.gnu.org/gitweb/?p=emacs/elpa.git;a=shortlog;h=refs/heads/externals/hyperbole
So instead, don't use any form of git, just install Hyperbole from the package manager after getting rid of all other versions and you will get version 7.0.3 (confirmed today). Then apply that one patch I sent you.
Bob
[Message part 2 (text/html, inline)]
[init.el (application/octet-stream, attachment)]
Information forwarded
to
bug-hyperbole <at> gnu.org
:
bug#36107
; Package
hyperbole
.
(Fri, 07 Jun 2019 19:17:02 GMT)
Full text and
rfc822 format available.
Message #47 received at 36107 <at> debbugs.gnu.org (full text, mbox):
[Message part 1 (text/plain, inline)]
On Fri, Jun 7, 2019 at 1:12 PM Bemiller, Eric Timothy <
EBemiller <at> chamberlain.edu> wrote:
> Sure! Using only the attached init – which literally just loads Hyperbole
> -- I pull the incomplete versions of those files from elpa.gnu.org
>
>
>
> And here’s the value of my `package-archives` when running that init:
>
>
>
> package-archives is a variable defined in ‘package.el’.
>
> Its value is (("gnu" . "https://elpa.gnu.org/packages/"))
>
Well, that is correct, so I have no more thoughts on this. Maybe others
will weigh in.
You have a working copy by downloading if from the ftp site, so I would use
that and we'll see how the next release, 7.0.4 goes for you.
Bob
[Message part 2 (text/html, inline)]
Information forwarded
to
bug-hyperbole <at> gnu.org
:
bug#36107
; Package
hyperbole
.
(Fri, 07 Jun 2019 19:25:01 GMT)
Full text and
rfc822 format available.
Message #50 received at 36107 <at> debbugs.gnu.org (full text, mbox):
Yeah -- I'm stumped!
But, seriously, thank you for trying to troubleshoot this -- and thanks for that initial patch, since it did the trick to fix my initial bug.
-----Original Message-----
From: Robert Weiner <rsw <at> gnu.org>
Sent: Friday, June 7, 2019 3:16 PM
To: Bemiller, Eric Timothy <EBemiller <at> chamberlain.edu>
Cc: 36107 <at> debbugs.gnu.org; Stefan Monnier <monnier <at> iro.umontreal.ca>; Lidell Mats <matsl <at> gnu.org>
Subject: Re: bug#36107: Global Buttons Stop Functioning When Current Working Directory Changes (Forgot the Subject!)
On Fri, Jun 7, 2019 at 1:12 PM Bemiller, Eric Timothy <EBemiller <at> chamberlain.edu <mailto:EBemiller <at> chamberlain.edu> > wrote:
Sure! Using only the attached init – which literally just loads Hyperbole -- I pull the incomplete versions of those files from elpa.gnu.org <http://elpa.gnu.org>
And here’s the value of my `package-archives` when running that init:
package-archives is a variable defined in ‘package.el’.
Its value is (("gnu" . "https://elpa.gnu.org/packages/"))
Well, that is correct, so I have no more thoughts on this. Maybe others will weigh in.
You have a working copy by downloading if from the ftp site, so I would use that and we'll see how the next release, 7.0.4 goes for you.
Bob
Information forwarded
to
bug-hyperbole <at> gnu.org
:
bug#36107
; Package
hyperbole
.
(Fri, 07 Jun 2019 19:38:01 GMT)
Full text and
rfc822 format available.
Message #53 received at 36107 <at> debbugs.gnu.org (full text, mbox):
> Strange as hypb:functionp
hypb:functionp is removed in the elpa.git branch (which uses functionp
instead since it has the advantage not only of being built-in but of
correctly returning t for non-byte-compiled closures).
Stefan
Information forwarded
to
bug-hyperbole <at> gnu.org
:
bug#36107
; Package
hyperbole
.
(Fri, 07 Jun 2019 20:52:01 GMT)
Full text and
rfc822 format available.
Message #56 received at 36107 <at> debbugs.gnu.org (full text, mbox):
[Message part 1 (text/plain, inline)]
The question we are trying to answer though is why is Eric getting the HEAD
of the elpa branch when he is using the Emacs package manager to download
release 7.0.3? Everyone else seems to get the right version but not him.
On Fri, Jun 7, 2019 at 3:37 PM Stefan Monnier <monnier <at> iro.umontreal.ca>
wrote:
> > Strange as hypb:functionp
>
> hypb:functionp is removed in the elpa.git branch (which uses functionp
> instead since it has the advantage not only of being built-in but of
> correctly returning t for non-byte-compiled closures).
>
>
> Stefan
>
>
[Message part 2 (text/html, inline)]
Information forwarded
to
bug-hyperbole <at> gnu.org
:
bug#36107
; Package
hyperbole
.
(Sat, 08 Jun 2019 20:40:01 GMT)
Full text and
rfc822 format available.
Message #59 received at 36107 <at> debbugs.gnu.org (full text, mbox):
> The question we are trying to answer though is why is Eric getting the HEAD
> of the elpa branch when he is using the Emacs package manager to download
> release 7.0.3? Everyone else seems to get the right version but not him.
AFAIK there's been no commit on the elpa.git branch since the 7.0.3
merge, so the HEAD *is* the 7.0.3 GNU ELPA release (which is slightly
different from your 7.0.3, e.g. it doesn't have hypb:functionp).
I merged your branch into the elpa.git one but AFAIK you haven't merged
the elpa.git one into yours so they're still not quite in-sync.
Stefan
Information forwarded
to
bug-hyperbole <at> gnu.org
:
bug#36107
; Package
hyperbole
.
(Sat, 08 Jun 2019 23:06:01 GMT)
Full text and
rfc822 format available.
Message #62 received at 36107 <at> debbugs.gnu.org (full text, mbox):
We need to chat about this as there are a number of inconsistencies as a result and of course wr should have only one version with a version number. I also produce signed releases and tag the git commit with the version number, so we need to agree to any merges beforehand.
When I download 7.0.3 via the package manager, I still see hypb:functionp defined without your merges. What do you see? — Bob
On Jun 8, 2019, at 4:39 PM, Stefan Monnier <monnier <at> iro.umontreal.ca> wrote:
>> The question we are trying to answer though is why is Eric getting the HEAD
>> of the elpa branch when he is using the Emacs package manager to download
>> release 7.0.3? Everyone else seems to get the right version but not him.
>
> AFAIK there's been no commit on the elpa.git branch since the 7.0.3
> merge, so the HEAD *is* the 7.0.3 GNU ELPA release (which is slightly
> different from your 7.0.3, e.g. it doesn't have hypb:functionp).
>
> I merged your branch into the elpa.git one but AFAIK you haven't merged
> the elpa.git one into yours so they're still not quite in-sync.
>
>
> Stefan
>
Information forwarded
to
bug-hyperbole <at> gnu.org
:
bug#36107
; Package
hyperbole
.
(Sun, 09 Jun 2019 00:04:01 GMT)
Full text and
rfc822 format available.
Message #65 received at 36107 <at> debbugs.gnu.org (full text, mbox):
> When I download 7.0.3 via the package manager, I still see hypb:functionp
> defined without your merges. What do you see? — Bob
% wget 'http://elpa.gnu.org/packages/hyperbole-7.0.3.tar'
--2019-06-08 19:54:42-- http://elpa.gnu.org/packages/hyperbole-7.0.3.tar
Résolution de elpa.gnu.org (elpa.gnu.org)… 209.51.188.89
Connexion à elpa.gnu.org (elpa.gnu.org)|209.51.188.89|:80… connecté.
requête HTTP transmise, en attente de la réponse… 200 OK
Taille : 19712000 (19M) [application/x-tar]
Sauvegarde en : « hyperbole-7.0.3.tar »
hyperbole-7.0.3.tar 100%[===================>] 18.80M 23.6MB/s in 0.8s
2019-06-08 19:54:43 (23.6 MB/s) — « hyperbole-7.0.3.tar » sauvegardé [19712000/19712000]
% grep --text functionp hyperbole-7.0.3.tar
(doc-str (if help-str nil (and (functionp cmd) (documentation cmd)))))
(if (functionp action)
(unless (or (stringp newtext) (functionp newtext))
(cond ((functionp newtext)
((functionp pred-value)
(if (not (functionp cmd))
(if (functionp type-help-func)
((functionp display-executables)
(if (functionp hycontrol--quit-function)
(if (functionp expr)
(cond ((functionp predicate)
(if (or (functionp browse-url-browser-function)
%
No hypb:functionp in sight. You're likely installing it from some other
ELPA archive rather than GNU ELPA.
> We need to chat about this as there are a number of inconsistencies as
> a result and of course wr should have only one version with a version
> number. I also produce signed releases and tag the git commit with the
> version number, so we need to agree to any merges beforehand.
Not sure what there is to chat: you need to `git pull` from elpa.git
into your branch; then undo/adjust the parts you dislike (I believe
these should mostly be replacing a few (not (featurep 'xemacs)) with
(featurep 'emacs)); then push the result, so that next time I pull from
your branch, things will finally be in-sync.
BTW I still have more cleanup to push to you, waiting for the two
branches to be in sync [ tho by now, I'm not quite sure where I have it
`git stashed` ;-) ]
Stefan
Information forwarded
to
bug-hyperbole <at> gnu.org
:
bug#36107
; Package
hyperbole
.
(Sun, 09 Jun 2019 15:30:04 GMT)
Full text and
rfc822 format available.
Message #68 received at 36107 <at> debbugs.gnu.org (full text, mbox):
Hi Stefan and Bob,
[...]
> you need to `git pull` from elpa.git into your branch; then undo/adjust the parts you dislike (I believe these should mostly be replacing a few (not (featurep 'xemacs)) with (featurep 'emacs)); then push the result, so that next time I pull from your branch, things will finally be in-sync.
@Bob: I'm back from a short vacation now and will have some time to look at this. I think my last PR covered most of this but this time it ought to be even fewer changes. So the PR will be easier to review.
Yours
--
%% Mats
Information forwarded
to
bug-hyperbole <at> gnu.org
:
bug#36107
; Package
hyperbole
.
(Sun, 09 Jun 2019 15:56:02 GMT)
Full text and
rfc822 format available.
Message #71 received at 36107 <at> debbugs.gnu.org (full text, mbox):
[Message part 1 (text/plain, inline)]
Welcome back! Let's get in sync for the next release and just agree that
what I push is the final release and any changes have to be added to that
before a commit with the release goes out or they don't make that release.
Plus, I'd like to automate the elpa integration as part of the release
Makefile.
Thanks,
Bob
On Sun, Jun 9, 2019 at 4:03 AM Mats Lidell <mats.lidell <at> lidells.se> wrote:
> Hi Stefan and Bob,
>
> [...]
> > you need to `git pull` from elpa.git into your branch; then undo/adjust
> the parts you dislike (I believe these should mostly be replacing a few
> (not (featurep 'xemacs)) with (featurep 'emacs)); then push the result, so
> that next time I pull from your branch, things will finally be in-sync.
>
> @Bob: I'm back from a short vacation now and will have some time to look
> at this. I think my last PR covered most of this but this time it ought to
> be even fewer changes. So the PR will be easier to review.
>
> Yours
> --
> %% Mats
>
[Message part 2 (text/html, inline)]
bug closed, send any further explanations to
36107 <at> debbugs.gnu.org and <d40547914 <at> dvuadmin.net>
Request was from
Mats Lidell <matsl <at> gillsatra.se>
to
control <at> debbugs.gnu.org
.
(Fri, 09 Oct 2020 23:26:04 GMT)
Full text and
rfc822 format available.
bug archived.
Request was from
Debbugs Internal Request <help-debbugs <at> gnu.org>
to
internal_control <at> debbugs.gnu.org
.
(Sat, 07 Nov 2020 12:24:04 GMT)
Full text and
rfc822 format available.
This bug report was last modified 4 years and 223 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.