emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Gnus using lexical-binding


From: Andy Moreton
Subject: Re: Gnus using lexical-binding
Date: Sat, 30 Jan 2021 23:23:18 +0000
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (windows-nt)

On Sat 30 Jan 2021, Stefan Monnier wrote:

>> Debugger entered--Lisp error: (void-variable number)
>>   (eq number t)
>
> Aha!
>
>>   (cond ((eq number t) "*") ((numberp number) (int-to-string (+ number
>
> That seems to be coming from `gnus-group-line-format-alist` where "all"
> the vars it refers have names that start with `gnus-tmp-` except for
> `number`, apparently.
>
> I added a patch to accommodate for that.
> I hope there aren't many more of those: they're hard to find.

Thats gets a little further, but...

Debugger entered--Lisp error: (void-variable gnus-tmp-number-total)
  (format "%c%c%d%c %6s %7d %s%c" gnus-tmp-marked-mark gnus-tmp-subscribed 
gnus-tmp-level gnus-tmp-process-marked (cond ((eq number t) "*") ((numberp 
number) (int-to-string (+ number (gnus-range-length (cdr (assq ... 
gnus-tmp-marked))) (gnus-range-length (cdr (assq ... gnus-tmp-marked)))))) (t 
number)) gnus-tmp-number-total gnus-group-indentation gnus-tmp-summary-live)
  (insert (format "%c%c%d%c %6s %7d %s%c" gnus-tmp-marked-mark 
gnus-tmp-subscribed gnus-tmp-level gnus-tmp-process-marked (cond ((eq number t) 
"*") ((numberp number) (int-to-string (+ number (gnus-range-length (cdr ...)) 
(gnus-range-length (cdr ...))))) (t number)) gnus-tmp-number-total 
gnus-group-indentation gnus-tmp-summary-live))
  (let (gnus-position) (insert (format "%c%c%d%c %6s %7d %s%c" 
gnus-tmp-marked-mark gnus-tmp-subscribed gnus-tmp-level gnus-tmp-process-marked 
(cond ((eq number t) "*") ((numberp number) (int-to-string (+ number 
(gnus-range-length ...) (gnus-range-length ...)))) (t number)) 
gnus-tmp-number-total gnus-group-indentation gnus-tmp-summary-live)) (setq 
gnus-position (point)) (insert (format "%-55s" (let* ((val (eval (if ... ... 
gnus-tmp-qualified-group))) (need (- 55 (string-width val)))) (if (> need 0) 
(concat nil val (make-string need 32)) val)))) (insert-char 32 (max (- 75 
(current-column)) 0)) (add-text-properties (point) (progn (insert 
gnus-tmp-news-server) (point)) (cons 'face (cons (list 'italic 'default) 
'(gnus-face t)))) (insert "\n") (if gnus-position (put-text-property 
gnus-position (1+ gnus-position) 'gnus-position t)))
  eval((let (gnus-position) (insert (format "%c%c%d%c %6s %7d %s%c" 
gnus-tmp-marked-mark gnus-tmp-subscribed gnus-tmp-level gnus-tmp-process-marked 
(cond ((eq number t) "*") ((numberp number) (int-to-string (+ number ... ...))) 
(t number)) gnus-tmp-number-total gnus-group-indentation 
gnus-tmp-summary-live)) (setq gnus-position (point)) (insert (format "%-55s" 
(let* ((val (eval ...)) (need (- 55 ...))) (if (> need 0) (concat nil val 
(make-string need 32)) val)))) (insert-char 32 (max (- 75 (current-column)) 0)) 
(add-text-properties (point) (progn (insert gnus-tmp-news-server) (point)) 
(cons 'face (cons (list 'italic 'default) '(gnus-face t)))) (insert "\n") (if 
gnus-position (put-text-property gnus-position (1+ gnus-position) 
'gnus-position t))) t)
  gnus-group-insert-group-line("dummy.group" 0 nil 0 nil)
  gnus-update-group-mark-positions()
  gnus-group-mode()
  gnus-group-setup-buffer()
  gnus-group-list-groups(nil)
  #f(compiled-function () #<bytecode 0x991f1d2aaa768d6>)()
  gnus-1(nil nil nil)
  gnus(nil)
  funcall-interactively(gnus nil)
  call-interactively(gnus record nil)
  command-execute(gnus record)
  execute-extended-command(nil "gnus" nil)
  funcall-interactively(execute-extended-command nil "gnus" nil)
  call-interactively(execute-extended-command nil nil)
  command-execute(execute-extended-command)




reply via email to

[Prev in Thread] Current Thread [Next in Thread]