* bug with `apropos-value' in Emacs 29.0?
@ 2022-05-21 18:34 Emanuel Berg
2022-05-21 18:41 ` Marcin Borkowski
2022-05-21 18:49 ` Eli Zaretskii
0 siblings, 2 replies; 25+ messages in thread
From: Emanuel Berg @ 2022-05-21 18:34 UTC (permalink / raw)
To: help-gnu-emacs
GNU Emacs 29.0.50 (build 1, x86_64-pc-linux-gnu, cairo version
1.16.0) of 2021-12-31
$ emacs -Q
fill-column ; 70
(apropos-value "70")
substitute-command-keys: Invalid key sequence in substitution:
‘ \,@ \,\.) princ #s(hash-table size 2 test eq rehash-size 1.5
rehash-threshold 0.8125 purecopy t data (quote 56 function
60)) \’
--
underground experts united
https://dataswamp.org/~incal
^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: bug with `apropos-value' in Emacs 29.0?
2022-05-21 18:34 bug with `apropos-value' in Emacs 29.0? Emanuel Berg
@ 2022-05-21 18:41 ` Marcin Borkowski
2022-05-21 19:10 ` Emanuel Berg
2022-05-21 18:49 ` Eli Zaretskii
1 sibling, 1 reply; 25+ messages in thread
From: Marcin Borkowski @ 2022-05-21 18:41 UTC (permalink / raw)
To: Emanuel Berg; +Cc: help-gnu-emacs
Wroks for me in a fairly recent master:
GNU Emacs 29.0.50 (commit 7f2fb9921).
On 2022-05-21, at 20:34, Emanuel Berg <incal@dataswamp.org> wrote:
> GNU Emacs 29.0.50 (build 1, x86_64-pc-linux-gnu, cairo version
> 1.16.0) of 2021-12-31
>
> $ emacs -Q
>
> fill-column ; 70
>
> (apropos-value "70")
>
> substitute-command-keys: Invalid key sequence in substitution:
> ‘ \,@ \,\.) princ #s(hash-table size 2 test eq rehash-size 1.5
> rehash-threshold 0.8125 purecopy t data (quote 56 function
> 60)) \’
--
Marcin Borkowski
http://mbork.pl
^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: bug with `apropos-value' in Emacs 29.0?
2022-05-21 18:41 ` Marcin Borkowski
@ 2022-05-21 19:10 ` Emanuel Berg
2022-05-21 19:13 ` Emanuel Berg
` (2 more replies)
0 siblings, 3 replies; 25+ messages in thread
From: Emanuel Berg @ 2022-05-21 19:10 UTC (permalink / raw)
To: help-gnu-emacs
Marcin Borkowski wrote:
> Wroks for me in a fairly recent master:
> GNU Emacs 29.0.50 (commit 7f2fb9921).
OK, how do you now what commit you have then?
I did 'git fetch' and after the install [1] it is
GNU Emacs 29.0.50 (build 2, x86_64-pc-linux-gnu, cairo version
1.16.0) of 2022-05-21
and yes, (apropos-value "70") still fails:
Debugger entered--Lisp error: (error "Invalid key sequence in substitution: ‘root\\\\’")
error("Invalid key sequence in substitution: `%s'" "root\\\\")
substitute-command-keys(#("(#[0 \"\\300\\301\\302\\303#\\207\" [tramp-register-forei..." 1322 1324 (face match)))
apropos-print-doc(3 apropos-variable t)
apropos-print(nil "\n----------------\n")
apropos-value("70")
elisp--eval-last-sexp(nil)
eval-last-sexp(nil)
funcall-interactively(eval-last-sexp nil)
command-execute(eval-last-sexp)
[1] https://dataswamp.org/~incal/conf/.zsh/install-emacs
--
underground experts united
https://dataswamp.org/~incal
^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: bug with `apropos-value' in Emacs 29.0?
2022-05-21 19:10 ` Emanuel Berg
@ 2022-05-21 19:13 ` Emanuel Berg
2022-05-21 22:45 ` Emanuel Berg
2022-05-22 7:09 ` bug with `apropos-value' in Emacs 29.0? Marcin Borkowski
2022-05-22 7:37 ` bug with `apropos-value' in Emacs 29.0? Kévin Le Gouguec
2 siblings, 1 reply; 25+ messages in thread
From: Emanuel Berg @ 2022-05-21 19:13 UTC (permalink / raw)
To: help-gnu-emacs
> and yes, (apropos-value "70") still fails
But now it works with 'emacs -Q'. No idea what's going on ...
--
underground experts united
https://dataswamp.org/~incal
^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: bug with `apropos-value' in Emacs 29.0?
2022-05-21 19:13 ` Emanuel Berg
@ 2022-05-21 22:45 ` Emanuel Berg
2022-05-21 22:52 ` Emanuel Berg
0 siblings, 1 reply; 25+ messages in thread
From: Emanuel Berg @ 2022-05-21 22:45 UTC (permalink / raw)
To: help-gnu-emacs
>> and yes, (apropos-value "70") still fails
>
> But now it works with 'emacs -Q'. No idea what's going
> on ...
Found it, this works
(apropos-value "70")
until I do either
(require 'tramp-sh)
or, for example
(find-file "/-:incal@srv.dataswamp.org:public_html/sth/sth.py")
after that it doesn't work.
Here is what I did with Tramp. It isn't a lot. The part with
tramp-sh has been commented out because of the bug.
;;; -*- lexical-binding: t -*-
;;
;; this file:
;; https://dataswamp.org/~incal/emacs-init/tramp-incal.el
(require 'tramp)
(when nil
(require 'tramp-sh) ;; (apropos-value "70") bug here
(setq tramp-histfile-override nil)
)
(add-to-list 'tramp-methods
'("sunos-ssh"
(tramp-login-program "ssh")
(tramp-login-args (("-l" "%u")
("-p" "%p")
("%c")
("-e" "none")
("-t" "-t")
("%h")
("\"/bin/sh -i\"") ))
(tramp-async-args (("-q")))
(tramp-remote-shell "/bin/sh")
(tramp-remote-shell-login ("-l"))
(tramp-remote-shell-args ("-c")) ))
;; SunOS system:
;; (find-file "/sunos-ssh:embe8573@polhem.it.uu.se:public_html/darn.txt")
;;
;; OpenBSD system:
;; (find-file "/-:incal@srv.dataswamp.org:public_html/sth/sth.py")
--
underground experts united
https://dataswamp.org/~incal
^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: bug with `apropos-value' in Emacs 29.0?
2022-05-21 22:45 ` Emanuel Berg
@ 2022-05-21 22:52 ` Emanuel Berg
2022-05-21 23:29 ` Michael Heerdegen
0 siblings, 1 reply; 25+ messages in thread
From: Emanuel Berg @ 2022-05-21 22:52 UTC (permalink / raw)
To: help-gnu-emacs
> Found it, this works
>
> (apropos-value "70")
>
> until I do [...]
>
> (require 'tramp-sh)
Indeed, try this
$ emacs -Q
(require 'tramp-sh)
(apropos-value "70")
DNC!
--
underground experts united
https://dataswamp.org/~incal
^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: bug with `apropos-value' in Emacs 29.0?
2022-05-21 22:52 ` Emanuel Berg
@ 2022-05-21 23:29 ` Michael Heerdegen
2022-05-21 23:33 ` Emanuel Berg
2022-05-21 23:36 ` Emanuel Berg
0 siblings, 2 replies; 25+ messages in thread
From: Michael Heerdegen @ 2022-05-21 23:29 UTC (permalink / raw)
To: help-gnu-emacs
Emanuel Berg <incal@dataswamp.org> writes:
> Indeed, try this
>
> $ emacs -Q
> (require 'tramp-sh)
> (apropos-value "70")
You didn't accidentally enable `debug-on-signal'? Because you got this:
Debugger entered--Lisp error: (error "Invalid key sequence in substitution: ‘root\\\\’")
error("Invalid key sequence in substitution: `%s'" "root\\\\")
substitute-command-keys(#("(#[0 \"\\300\\301\\302\\303#\\207\" [tramp-register-forei..." 1322 1324 (face match)))
apropos-print-doc(3 apropos-variable t)
and the only call of `substitute-command-keys' in `apropos-print-doc' is
wrapped in `ignore-errors', so it's impossible for an error signal to
get through unless you enable `debug-on-signal'.
Michael.
^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: bug with `apropos-value' in Emacs 29.0?
2022-05-21 23:29 ` Michael Heerdegen
@ 2022-05-21 23:33 ` Emanuel Berg
2022-05-21 23:51 ` Michael Heerdegen
2022-05-21 23:36 ` Emanuel Berg
1 sibling, 1 reply; 25+ messages in thread
From: Emanuel Berg @ 2022-05-21 23:33 UTC (permalink / raw)
To: help-gnu-emacs
Michael Heerdegen wrote:
>> Indeed, try this
>>
>> $ emacs -Q
>> (require 'tramp-sh)
>> (apropos-value "70")
>
> You didn't accidentally enable `debug-on-signal'?
... _I_ did?
I already told you what I did :) 3 things.
$ emacs -Q
(require 'tramp-sh)
(apropos-value "70")
Did you try it?
--
underground experts united
https://dataswamp.org/~incal
^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: bug with `apropos-value' in Emacs 29.0?
2022-05-21 23:29 ` Michael Heerdegen
2022-05-21 23:33 ` Emanuel Berg
@ 2022-05-21 23:36 ` Emanuel Berg
2022-05-22 0:00 ` Michael Heerdegen
1 sibling, 1 reply; 25+ messages in thread
From: Emanuel Berg @ 2022-05-21 23:36 UTC (permalink / raw)
To: help-gnu-emacs
Michael Heerdegen wrote:
> Emanuel Berg <incal@dataswamp.org> writes:
>
>> Indeed, try this
>>
>> $ emacs -Q
>> (require 'tramp-sh)
>> (apropos-value "70")
>
> You didn't accidentally enable `debug-on-signal'?
$ emacs -Q --batch --eval "(progn (require 'tramp-sh) (apropos-value \"70\"))"
Debugger entered--Lisp error: (error "Invalid key sequence in substitution: ‘root\\\\’")
error("Invalid key sequence in substitution: `%s'" "root\\\\")
substitute-command-keys(#("(#[0 \"\\300\\301\\302\\303#\\207\" [tramp-register-forei..." 1322 1324 (face match)))
apropos-print-doc(3 apropos-variable t)
apropos-print(nil "\n----------------\n")
apropos-value("70")
(progn (require 'tramp-sh) (apropos-value "70"))
command-line-1(("--eval" "(progn (require 'tramp-sh) (apropos-value \"70\"))"))
command-line()
normal-top-level()
--
underground experts united
https://dataswamp.org/~incal
^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: bug with `apropos-value' in Emacs 29.0?
2022-05-21 23:36 ` Emanuel Berg
@ 2022-05-22 0:00 ` Michael Heerdegen
2022-05-22 0:05 ` Emanuel Berg
0 siblings, 1 reply; 25+ messages in thread
From: Michael Heerdegen @ 2022-05-22 0:00 UTC (permalink / raw)
To: help-gnu-emacs
Emanuel Berg <incal@dataswamp.org> writes:
> $ emacs -Q --batch --eval "(progn (require 'tramp-sh) (apropos-value
> \"70\"))"
I'm sorry, that succeeds without error here.
> Debugger entered--Lisp error: (error "Invalid key sequence in
> substitution: ‘root\\\\’")
> error("Invalid key sequence in substitution: `%s'" "root\\\\")
> substitute-command-keys(#("(#[0 \"\\300\\301\\302\\303#\\207\"
> [tramp-register-forei..." 1322 1324 (face match)))
> apropos-print-doc(3 apropos-variable t)
> apropos-print(nil "\n----------------\n")
> apropos-value("70")
> (progn (require 'tramp-sh) (apropos-value "70"))
> command-line-1(("--eval" "(progn (require 'tramp-sh) (apropos-value
> \"70\"))"))
> command-line()
> normal-top-level()
Nevertheless, could you please check the value of `debug-on-signal'? I
don't say you did something, I just don't understand the behavior you
see. When I turn debug-on-signal on, then I do get a similar backtrace.
Thanks,
Michael.
^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: bug with `apropos-value' in Emacs 29.0?
2022-05-22 0:00 ` Michael Heerdegen
@ 2022-05-22 0:05 ` Emanuel Berg
2022-05-22 0:32 ` Michael Heerdegen
0 siblings, 1 reply; 25+ messages in thread
From: Emanuel Berg @ 2022-05-22 0:05 UTC (permalink / raw)
To: help-gnu-emacs
Michael Heerdegen wrote:
>> $ emacs -Q --batch --eval "(progn (require 'tramp-sh) (apropos-value
>> \"70\"))"
>
> I'm sorry, that succeeds without error here.
On Emacs 29.0? Weird!
> Nevertheless, could you please check the value of
> `debug-on-signal'? I don't say you did something, I just
> don't understand the behavior you see. When I turn
> debug-on-signal on, then I do get a similar backtrace.
`debug-on-signal' is nil.
--
underground experts united
https://dataswamp.org/~incal
^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: bug with `apropos-value' in Emacs 29.0?
2022-05-22 0:05 ` Emanuel Berg
@ 2022-05-22 0:32 ` Michael Heerdegen
2022-05-22 0:38 ` Emanuel Berg
0 siblings, 1 reply; 25+ messages in thread
From: Michael Heerdegen @ 2022-05-22 0:32 UTC (permalink / raw)
To: help-gnu-emacs
Emanuel Berg <incal@dataswamp.org> writes:
> >> $ emacs -Q --batch --eval "(progn (require 'tramp-sh) (apropos-value
> >> \"70\"))"
> >
> > I'm sorry, that succeeds without error here.
>
> On Emacs 29.0? Weird!
Yes. And: yes, indeed.
> `debug-on-signal' is nil.
Hmm. Does loading the .el source of apropos.el make a difference?
Could be related to using native compilation.
Anyway - M-x report-emacs-bug sounds like the right thing to do.
Michael.
^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: bug with `apropos-value' in Emacs 29.0?
2022-05-22 0:32 ` Michael Heerdegen
@ 2022-05-22 0:38 ` Emanuel Berg
2022-05-22 1:07 ` Michael Heerdegen
0 siblings, 1 reply; 25+ messages in thread
From: Emanuel Berg @ 2022-05-22 0:38 UTC (permalink / raw)
To: help-gnu-emacs
Michael Heerdegen wrote:
>> `debug-on-signal' is nil.
>
> Hmm. Does loading the .el source of apropos.el make
> a difference? Could be related to using native compilation.
Yes, then it immediatly doesn't work, without the help from
tramp-sh:
Debugger entered--Lisp error: (error "Invalid key sequence in substitution: ‘--pcase-mac...")
error("Invalid key sequence in substitution: `%s'" "--pcase-macroexpander) (define-symbol-props (pcase...")
substitute-command-keys(#("((\"/home/incal/src/emacs/lisp/apropos.el\" apropos-..." 1126786 1126788 (face match)))
(setq doc (substitute-command-keys doc))
(cond ((equal doc "") (setq doc "(not documented)")) (do-keys (setq doc (substitute-command-keys doc))))
(let ((opoint (point)) (ocol (current-column))) (cond ((equal doc "") (setq doc "(not documented)")) (do-keys (setq doc (substitute-command-keys doc)))) (insert doc) (if (equal doc "(not documented)") (put-text-property opoint (point) 'font-lock-face 'shadow)) (let ((fill-column (+ 5 (if (integerp emacs-lisp-docstring-fill-column) emacs-lisp-docstring-fill-column fill-column))) (fill-prefix (make-string ocol 32))) (fill-region opoint (point) nil t)))
(progn (if apropos-compact-layout (insert (propertize "\11" 'display '(space :align-to 32)) " ") (insert " ")) (if apropos-multi-type (let ((button-face (button-type-get type 'face))) (if (consp button-face) nil (setq button-face (list button-face))) (insert-text-button (if apropos-compact-layout (format "<%s>" (button-type-get type 'apropos-short-label)) (button-type-get type 'apropos-label)) 'type type 'apropos-symbol (car apropos-item)) (insert (if apropos-compact-layout " " ": "))) (insert-text-button " " 'type type 'skip t 'face 'default 'apropos-symbol (car apropos-item))) (let ((opoint (point)) (ocol (current-column))) (cond ((equal doc "") (setq doc "(not documented)")) (do-keys (setq doc (substitute-command-keys doc)))) (insert doc) (if (equal doc "(not documented)") (put-text-
property opoint (point) 'font-lock-face 'shadow)) (let ((fill-column (+ 5 (if (integerp emacs-lisp-docstring-fill-column) emacs-lisp-docstring-fill-column fill-column))) (fill-prefix (make-string ocol 32))) (fill-region opoint (point) nil t))) (or (bolp) (terpri)))
(if (stringp doc) (progn (if apropos-compact-layout (insert (propertize "\11" 'display '(space :align-to 32)) " ") (insert " ")) (if apropos-multi-type (let ((button-face (button-type-get type 'face))) (if (consp button-face) nil (setq button-face (list button-face))) (insert-text-button (if apropos-compact-layout (format "<%s>" (button-type-get type ...)) (button-type-get type 'apropos-label)) 'type type 'apropos-symbol (car apropos-item)) (insert (if apropos-compact-layout " " ": "))) (insert-text-button " " 'type type 'skip t 'face 'default 'apropos-symbol (car apropos-item))) (let ((opoint (point)) (ocol (current-column))) (cond ((equal doc "") (setq doc "(not documented)")) (do-keys (setq doc (substitute-command-keys doc)))) (insert doc) (if (equal doc "(not documented)") (put-text
-property opoint (point) 'font-lock-face 'shadow)) (let ((fill-column (+ 5 (if ... emacs-lisp-docstring-fill-column fill-column))) (fill-prefix (make-string ocol 32))) (fill-region opoint (point) nil t))) (or (bolp) (terpri))))
(let ((doc (nth i apropos-item))) (if (stringp doc) (progn (if apropos-compact-layout (insert (propertize "\11" 'display '(space :align-to 32)) " ") (insert " ")) (if apropos-multi-type (let ((button-face (button-type-get type ...))) (if (consp button-face) nil (setq button-face (list button-face))) (insert-text-button (if apropos-compact-layout (format "<%s>" ...) (button-type-get type ...)) 'type type 'apropos-symbol (car apropos-item)) (insert (if apropos-compact-layout " " ": "))) (insert-text-button " " 'type type 'skip t 'face 'default 'apropos-symbol (car apropos-item))) (let ((opoint (point)) (ocol (current-column))) (cond ((equal doc "") (setq doc "(not documented)")) (do-keys (setq doc (substitute-command-keys doc)))) (insert doc) (if (equal doc "(not documented)") (put-text-p
roperty opoint (point) 'font-lock-face 'shadow)) (let ((fill-column (+ 5 ...)) (fill-prefix (make-string ocol 32))) (fill-region opoint (point) nil t))) (or (bolp) (terpri)))))
apropos-print-doc(3 apropos-variable t)
(let ((apropos-item (car --dolist-tail--))) (if (and spacing (not (bobp))) (progn (princ spacing))) (setq symbol (car apropos-item)) (if (not (numberp (car (cdr apropos-item)))) (setq apropos-item (cons (car apropos-item) (cons nil (cdr apropos-item))))) (if (= (point) button-end) (progn (terpri))) (insert-text-button (symbol-name symbol) 'type 'apropos-symbol 'skip apropos-multi-type 'face 'apropos-symbol) (setq button-end (point)) (if (and (eq apropos-sort-by-scores 'verbose) (car (cdr apropos-item))) (insert " (" (number-to-string (car (cdr apropos-item))) ") ")) (if apropos-compact-layout nil (and do-keys (commandp symbol) (not (eq symbol 'self-insert-command)) (indent-to 30 1) (if (let ((keys (save-current-buffer ... ...)) filtered) (let ((--dolist-tail-- keys)) (while --dolist-tail
-- (let ... ... ...))) (setq item filtered)) (insert (mapconcat #'(lambda ... ... ... key) item ", ")) (insert "M-x ... RET") (put-text-property (- (point) 11) (- (point) 8) 'face 'apropos-keybinding) (put-text-property (- (point) 3) (point) 'face 'apropos-keybinding))) (terpri)) (apropos-print-doc 2 (if (commandp symbol) 'apropos-command (if (macrop symbol) 'apropos-macro 'apropos-function)) (not nosubst)) (apropos-print-doc 3 (if (custom-variable-p symbol) 'apropos-user-option 'apropos-variable) (not nosubst)) (apropos-print-doc 7 'apropos-group t) (apropos-print-doc 6 'apropos-face t) (apropos-print-doc 5 'apropos-widget t) (apropos-print-doc 4 'apropos-plist nil) (setq --dolist-tail-- (cdr --dolist-tail--)))
(while --dolist-tail-- (let ((apropos-item (car --dolist-tail--))) (if (and spacing (not (bobp))) (progn (princ spacing))) (setq symbol (car apropos-item)) (if (not (numberp (car (cdr apropos-item)))) (setq apropos-item (cons (car apropos-item) (cons nil (cdr apropos-item))))) (if (= (point) button-end) (progn (terpri))) (insert-text-button (symbol-name symbol) 'type 'apropos-symbol 'skip apropos-multi-type 'face 'apropos-symbol) (setq button-end (point)) (if (and (eq apropos-sort-by-scores 'verbose) (car (cdr apropos-item))) (insert " (" (number-to-string (car (cdr apropos-item))) ") ")) (if apropos-compact-layout nil (and do-keys (commandp symbol) (not (eq symbol 'self-insert-command)) (indent-to 30 1) (if (let ((keys ...) filtered) (let (...) (while --dolist-tail-- ...)) (setq item fi
ltered)) (insert (mapconcat #'... item ", ")) (insert "M-x ... RET") (put-text-property (- (point) 11) (- (point) 8) 'face 'apropos-keybinding) (put-text-property (- (point) 3) (point) 'face 'apropos-keybinding))) (terpri)) (apropos-print-doc 2 (if (commandp symbol) 'apropos-command (if (macrop symbol) 'apropos-macro 'apropos-function)) (not nosubst)) (apropos-print-doc 3 (if (custom-variable-p symbol) 'apropos-user-option 'apropos-variable) (not nosubst)) (apropos-print-doc 7 'apropos-group t) (apropos-print-doc 6 'apropos-face t) (apropos-print-doc 5 'apropos-widget t) (apropos-print-doc 4 'apropos-plist nil) (setq --dolist-tail-- (cdr --dolist-tail--))))
(let ((--dolist-tail-- p)) (while --dolist-tail-- (let ((apropos-item (car --dolist-tail--))) (if (and spacing (not (bobp))) (progn (princ spacing))) (setq symbol (car apropos-item)) (if (not (numberp (car (cdr apropos-item)))) (setq apropos-item (cons (car apropos-item) (cons nil (cdr apropos-item))))) (if (= (point) button-end) (progn (terpri))) (insert-text-button (symbol-name symbol) 'type 'apropos-symbol 'skip apropos-multi-type 'face 'apropos-symbol) (setq button-end (point)) (if (and (eq apropos-sort-by-scores 'verbose) (car (cdr apropos-item))) (insert " (" (number-to-string (car (cdr apropos-item))) ") ")) (if apropos-compact-layout nil (and do-keys (commandp symbol) (not (eq symbol 'self-insert-command)) (indent-to 30 1) (if (let (... filtered) (let ... ...) (setq item filtered
)) (insert (mapconcat ... item ", ")) (insert "M-x ... RET") (put-text-property (- ... 11) (- ... 8) 'face 'apropos-keybinding) (put-text-property (- ... 3) (point) 'face 'apropos-keybinding))) (terpri)) (apropos-print-doc 2 (if (commandp symbol) 'apropos-command (if (macrop symbol) 'apropos-macro 'apropos-function)) (not nosubst)) (apropos-print-doc 3 (if (custom-variable-p symbol) 'apropos-user-option 'apropos-variable) (not nosubst)) (apropos-print-doc 7 'apropos-group t) (apropos-print-doc 6 'apropos-face t) (apropos-print-doc 5 'apropos-widget t) (apropos-print-doc 4 'apropos-plist nil) (setq --dolist-tail-- (cdr --dolist-tail--)))))
(let ((p apropos-accumulator) (old-buffer (current-buffer)) (inhibit-read-only t) (button-end 0) symbol item) (set-buffer standard-output) (apropos-mode) (apropos--preamble text) (let ((--dolist-tail-- p)) (while --dolist-tail-- (let ((apropos-item (car --dolist-tail--))) (if (and spacing (not (bobp))) (progn (princ spacing))) (setq symbol (car apropos-item)) (if (not (numberp (car ...))) (setq apropos-item (cons (car apropos-item) (cons nil ...)))) (if (= (point) button-end) (progn (terpri))) (insert-text-button (symbol-name symbol) 'type 'apropos-symbol 'skip apropos-multi-type 'face 'apropos-symbol) (setq button-end (point)) (if (and (eq apropos-sort-by-scores 'verbose) (car (cdr apropos-item))) (insert " (" (number-to-string (car ...)) ") ")) (if apropos-compact-layout nil (and do-ke
ys (commandp symbol) (not (eq symbol ...)) (indent-to 30 1) (if (let ... ... ...) (insert ...) (insert "M-x ... RET") (put-text-property ... ... ... ...) (put-text-property ... ... ... ...))) (terpri)) (apropos-print-doc 2 (if (commandp symbol) 'apropos-command (if (macrop symbol) 'apropos-macro 'apropos-function)) (not nosubst)) (apropos-print-doc 3 (if (custom-variable-p symbol) 'apropos-user-option 'apropos-variable) (not nosubst)) (apropos-print-doc 7 'apropos-group t) (apropos-print-doc 6 'apropos-face t) (apropos-print-doc 5 'apropos-widget t) (apropos-print-doc 4 'apropos-plist nil) (setq --dolist-tail-- (cdr --dolist-tail--))))) (set (make-local-variable 'truncate-partial-width-windows) t) (set (make-local-variable 'truncate-lines) t))
(progn (let ((p apropos-accumulator) (old-buffer (current-buffer)) (inhibit-read-only t) (button-end 0) symbol item) (set-buffer standard-output) (apropos-mode) (apropos--preamble text) (let ((--dolist-tail-- p)) (while --dolist-tail-- (let ((apropos-item (car --dolist-tail--))) (if (and spacing (not ...)) (progn (princ spacing))) (setq symbol (car apropos-item)) (if (not (numberp ...)) (setq apropos-item (cons ... ...))) (if (= (point) button-end) (progn (terpri))) (insert-text-button (symbol-name symbol) 'type 'apropos-symbol 'skip apropos-multi-type 'face 'apropos-symbol) (setq button-end (point)) (if (and (eq apropos-sort-by-scores ...) (car ...)) (insert " (" (number-to-string ...) ") ")) (if apropos-compact-layout nil (and do-keys (commandp symbol) (not ...) (indent-to 30 1) (if ..
. ... ... ... ...)) (terpri)) (apropos-print-doc 2 (if (commandp symbol) 'apropos-command (if ... ... ...)) (not nosubst)) (apropos-print-doc 3 (if (custom-variable-p symbol) 'apropos-user-option 'apropos-variable) (not nosubst)) (apropos-print-doc 7 'apropos-group t) (apropos-print-doc 6 'apropos-face t) (apropos-print-doc 5 'apropos-widget t) (apropos-print-doc 4 'apropos-plist nil) (setq --dolist-tail-- (cdr --dolist-tail--))))) (set (make-local-variable 'truncate-partial-width-windows) t) (set (make-local-variable 'truncate-lines) t)))
(prog1 (progn (let ((p apropos-accumulator) (old-buffer (current-buffer)) (inhibit-read-only t) (button-end 0) symbol item) (set-buffer standard-output) (apropos-mode) (apropos--preamble text) (let ((--dolist-tail-- p)) (while --dolist-tail-- (let ((apropos-item ...)) (if (and spacing ...) (progn ...)) (setq symbol (car apropos-item)) (if (not ...) (setq apropos-item ...)) (if (= ... button-end) (progn ...)) (insert-text-button (symbol-name symbol) 'type 'apropos-symbol 'skip apropos-multi-type 'face 'apropos-symbol) (setq button-end (point)) (if (and ... ...) (insert " (" ... ") ")) (if apropos-compact-layout nil (and do-keys ... ... ... ...) (terpri)) (apropos-print-doc 2 (if ... ... ...) (not nosubst)) (apropos-print-doc 3 (if ... ... ...) (not nosubst)) (apropos-print-doc 7 'apropos-
group t) (apropos-print-doc 6 'apropos-face t) (apropos-print-doc 5 'apropos-widget t) (apropos-print-doc 4 'apropos-plist nil) (setq --dolist-tail-- (cdr --dolist-tail--))))) (set (make-local-variable 'truncate-partial-width-windows) t) (set (make-local-variable 'truncate-lines) t))) (internal-temp-output-buffer-show buf))
(let* ((old-dir default-directory) (buf (save-current-buffer (set-buffer (get-buffer-create "*Apropos*")) (prog1 (current-buffer) (kill-all-local-variables) (setq default-directory old-dir) (setq buffer-read-only nil) (setq buffer-file-name nil) (setq buffer-undo-list t) (let ((inhibit-read-only t) (inhibit-modification-hooks t)) (erase-buffer) (run-hooks 'temp-buffer-setup-hook))))) (standard-output buf)) (prog1 (progn (let ((p apropos-accumulator) (old-buffer (current-buffer)) (inhibit-read-only t) (button-end 0) symbol item) (set-buffer standard-output) (apropos-mode) (apropos--preamble text) (let ((--dolist-tail-- p)) (while --dolist-tail-- (let (...) (if ... ...) (setq symbol ...) (if ... ...) (if ... ...) (insert-text-button ... ... ... ... apropos-multi-type ... ...) (setq button-
end ...) (if ... ...) (if apropos-compact-layout nil ... ...) (apropos-print-doc 2 ... ...) (apropos-print-doc 3 ... ...) (apropos-print-doc 7 ... t) (apropos-print-doc 6 ... t) (apropos-print-doc 5 ... t) (apropos-print-doc 4 ... nil) (setq --dolist-tail-- ...)))) (set (make-local-variable 'truncate-partial-width-windows) t) (set (make-local-variable 'truncate-lines) t))) (internal-temp-output-buffer-show buf)))
(if (null apropos-accumulator) (message "No apropos matches for `%s'" apropos-pattern) (setq apropos-accumulator (sort apropos-accumulator #'(lambda (a b) (if apropos-sort-by-scores (or (> ... ...) (and ... ...)) (string-lessp (car a) (car b)))))) (let* ((old-dir default-directory) (buf (save-current-buffer (set-buffer (get-buffer-create "*Apropos*")) (prog1 (current-buffer) (kill-all-local-variables) (setq default-directory old-dir) (setq buffer-read-only nil) (setq buffer-file-name nil) (setq buffer-undo-list t) (let (... ...) (erase-buffer) (run-hooks ...))))) (standard-output buf)) (prog1 (progn (let ((p apropos-accumulator) (old-buffer (current-buffer)) (inhibit-read-only t) (button-end 0) symbol item) (set-buffer standard-output) (apropos-mode) (apropos--preamble text) (let ((--dol
ist-tail-- p)) (while --dolist-tail-- (let ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...))) (set (make-local-variable 'truncate-partial-width-windows) t) (set (make-local-variable 'truncate-lines) t))) (internal-temp-output-buffer-show buf))))
apropos-print(nil "\n----------------\n")
(let ((apropos-multi-type do-all)) (apropos-print nil "\n----------------\n"))
apropos-value("70")
(progn (apropos-value "70"))
elisp--eval-last-sexp(nil)
eval-last-sexp(nil)
funcall-interactively(eval-last-sexp nil)
command-execute(eval-last-sexp)
--
underground experts united
https://dataswamp.org/~incal
^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: bug with `apropos-value' in Emacs 29.0?
2022-05-22 0:38 ` Emanuel Berg
@ 2022-05-22 1:07 ` Michael Heerdegen
2022-05-22 4:51 ` Emanuel Berg
0 siblings, 1 reply; 25+ messages in thread
From: Michael Heerdegen @ 2022-05-22 1:07 UTC (permalink / raw)
To: help-gnu-emacs
Emanuel Berg <incal@dataswamp.org> writes:
> (cond ((equal doc "") (setq doc "(not documented)")) (do-keys (setq doc (substitute-command-keys doc))))
This is around line 1311 in apropos.el. For me that code looks like
(cond ((equal doc "")
(setq doc "(not documented)"))
(do-keys
(setq doc (or (ignore-errors
(substitute-command-keys doc))
doc))))
with an `ignore-errors' wrapper. That wrapper seems not to be present
in your code. It had been added with this commit:
| a37da91a09 Make apropos-print-doc more resilient
| Lars Ingebrigtsen <larsi@gnus.org> 2022-01-23
So it seems you are seeing a bug that had not yet been fixed in the
version where you had tried first (Dec 21) - but now you should have
that fix. Did your git-pull maybe partly fail or so? Or could you
please check if you have that `ignore-errors' wrapper?
TIA,
Michael.
^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: bug with `apropos-value' in Emacs 29.0?
2022-05-21 19:10 ` Emanuel Berg
2022-05-21 19:13 ` Emanuel Berg
@ 2022-05-22 7:09 ` Marcin Borkowski
2022-05-23 21:22 ` output Emacs version (was: Re: bug with `apropos-value' in Emacs 29.0?) Emanuel Berg
2022-05-22 7:37 ` bug with `apropos-value' in Emacs 29.0? Kévin Le Gouguec
2 siblings, 1 reply; 25+ messages in thread
From: Marcin Borkowski @ 2022-05-22 7:09 UTC (permalink / raw)
To: Emanuel Berg; +Cc: help-gnu-emacs
On 2022-05-21, at 21:10, Emanuel Berg <incal@dataswamp.org> wrote:
> Marcin Borkowski wrote:
>
>> Wroks for me in a fairly recent master:
>> GNU Emacs 29.0.50 (commit 7f2fb9921).
>
> OK, how do you now what commit you have then?
http://mbork.pl/2017-01-30_Current_Emacs_version
(defun insert-debug-version-info ()
"Insert version of Emacs and 7 characters of the commit hash."
(interactive)
(insert
(format "GNU Emacs %s (commit %s)"
emacs-version
(substring (emacs-repository-get-version) 0 7))))
I should probably increase the "7", btw. - as of now, Git shows 10
characters of every commit hash, and it is not surprising given the
sheer amount of commits in the Emacs repo. Now I wonder what does Git
do to determine the character count here -- does it mean that there do
exist two (or more) commits with exactly the same first 9 characters...?
(Answer: apparently it is the case, see the answers here:
https://stackoverflow.com/q/34764195/1181665)
Best,
mb
>
> I did 'git fetch' and after the install [1] it is
>
> GNU Emacs 29.0.50 (build 2, x86_64-pc-linux-gnu, cairo version
> 1.16.0) of 2022-05-21
>
> and yes, (apropos-value "70") still fails:
>
> Debugger entered--Lisp error: (error "Invalid key sequence in substitution: ‘root\\\\’")
> error("Invalid key sequence in substitution: `%s'" "root\\\\")
> substitute-command-keys(#("(#[0 \"\\300\\301\\302\\303#\\207\" [tramp-register-forei..." 1322 1324 (face match)))
> apropos-print-doc(3 apropos-variable t)
> apropos-print(nil "\n----------------\n")
> apropos-value("70")
> elisp--eval-last-sexp(nil)
> eval-last-sexp(nil)
> funcall-interactively(eval-last-sexp nil)
> command-execute(eval-last-sexp)
>
> [1] https://dataswamp.org/~incal/conf/.zsh/install-emacs
--
Marcin Borkowski
http://mbork.pl
^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: bug with `apropos-value' in Emacs 29.0?
2022-05-21 19:10 ` Emanuel Berg
2022-05-21 19:13 ` Emanuel Berg
2022-05-22 7:09 ` bug with `apropos-value' in Emacs 29.0? Marcin Borkowski
@ 2022-05-22 7:37 ` Kévin Le Gouguec
2 siblings, 0 replies; 25+ messages in thread
From: Kévin Le Gouguec @ 2022-05-22 7:37 UTC (permalink / raw)
To: help-gnu-emacs
Emanuel Berg <incal@dataswamp.org> writes:
> Marcin Borkowski wrote:
>
>> Wroks for me in a fairly recent master:
>> GNU Emacs 29.0.50 (commit 7f2fb9921).
>
> OK, how do you now what commit you have then?
>
> I did 'git fetch' and after the install [1] it is
>
> GNU Emacs 29.0.50 (build 2, x86_64-pc-linux-gnu, cairo version
> 1.16.0) of 2022-05-21
'C-h v emacs-repository-version' will let you know which commit your
Emacs was compiled from; running 'git show $commit' inside the
repository would then allow you to check how old that commit is.
"x.0.50" does not carry a lot of information; it's a moving target that
spans months of development. See how 'M-x report-emacs-bug' appends the
commit to give readers more context:
> In GNU Emacs 29.0.50 (<BUILD-CONFIG>)
> of <BUILD-DATE> built on <BUILD-HOST>
> Repository revision: <COMMIT>
^^^^^^^^
^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: bug with `apropos-value' in Emacs 29.0?
2022-05-21 18:34 bug with `apropos-value' in Emacs 29.0? Emanuel Berg
2022-05-21 18:41 ` Marcin Borkowski
@ 2022-05-21 18:49 ` Eli Zaretskii
1 sibling, 0 replies; 25+ messages in thread
From: Eli Zaretskii @ 2022-05-21 18:49 UTC (permalink / raw)
To: help-gnu-emacs
> From: Emanuel Berg <incal@dataswamp.org>
> Date: Sat, 21 May 2022 20:34:02 +0200
>
> GNU Emacs 29.0.50 (build 1, x86_64-pc-linux-gnu, cairo version
> 1.16.0) of 2021-12-31
>
> $ emacs -Q
>
> fill-column ; 70
>
> (apropos-value "70")
>
> substitute-command-keys: Invalid key sequence in substitution:
> ‘ \,@ \,\.) princ #s(hash-table size 2 test eq rehash-size 1.5
> rehash-threshold 0.8125 purecopy t data (quote 56 function
> 60)) \’
With today's master branch, I cannot reproduce this. But if it's
reproducible on your system after you update from master (yours is a
very old build), please report this as a bug, preferably with a
backtrace.
^ permalink raw reply [flat|nested] 25+ messages in thread
end of thread, other threads:[~2022-05-23 21:22 UTC | newest]
Thread overview: 25+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-05-21 18:34 bug with `apropos-value' in Emacs 29.0? Emanuel Berg
2022-05-21 18:41 ` Marcin Borkowski
2022-05-21 19:10 ` Emanuel Berg
2022-05-21 19:13 ` Emanuel Berg
2022-05-21 22:45 ` Emanuel Berg
2022-05-21 22:52 ` Emanuel Berg
2022-05-21 23:29 ` Michael Heerdegen
2022-05-21 23:33 ` Emanuel Berg
2022-05-21 23:51 ` Michael Heerdegen
2022-05-21 23:36 ` Emanuel Berg
2022-05-22 0:00 ` Michael Heerdegen
2022-05-22 0:05 ` Emanuel Berg
2022-05-22 0:32 ` Michael Heerdegen
2022-05-22 0:38 ` Emanuel Berg
2022-05-22 1:07 ` Michael Heerdegen
2022-05-22 4:51 ` Emanuel Berg
2022-05-22 5:27 ` Michael Heerdegen
2022-05-22 13:54 ` Stefan Monnier via Users list for the GNU Emacs text editor
2022-05-22 17:43 ` Emanuel Berg
2022-05-23 5:19 ` Marcin Borkowski
2022-05-23 21:07 ` get Emacs soruce (was: Re: bug with `apropos-value' in Emacs 29.0?) Emanuel Berg
2022-05-22 7:09 ` bug with `apropos-value' in Emacs 29.0? Marcin Borkowski
2022-05-23 21:22 ` output Emacs version (was: Re: bug with `apropos-value' in Emacs 29.0?) Emanuel Berg
2022-05-22 7:37 ` bug with `apropos-value' in Emacs 29.0? Kévin Le Gouguec
2022-05-21 18:49 ` Eli Zaretskii
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).