GNU bug report logs - #39558
26.3; icomplete and display *Completions* in child frame

Previous Next

Package: emacs;

Reported by: Andrii Kolomoiets <andreyk.mad <at> gmail.com>

Date: Tue, 11 Feb 2020 06:57:02 UTC

Severity: normal

Found in version 26.3

Full log


Message #14 received at 39558 <at> debbugs.gnu.org (full text, mbox):

From: Andrii Kolomoiets <andreyk.mad <at> gmail.com>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: 39558 <at> debbugs.gnu.org
Subject: Re: bug#39558: 26.3; icomplete and display *Completions* in child
 frame
Date: Wed, 12 Feb 2020 11:15:18 +0200
Eli Zaretskii <eliz <at> gnu.org> writes:

>> 1. emacs -Q
>> 2. evaluate
>> (customize-set-variable
>>  'display-buffer-alist
>>  '(("\\*Completions\\*" display-buffer-in-child-frame)))
>> 3. M-x icomplete-mode
>> 4. M-x f<TAB>
>> 
>> Error in post-command-hook (icomplete-post-command-hook): (wrong-type-argument number-or-marker-p nil)
>
> I cannot reproduce this, so maybe this is Darwin-specific.

You are right.

There are this code in lisp/term/ns-win.el:581:
(add-hook 'after-make-frame-functions 'select-frame)

Evaluating it allow you to catch that error in
icomplete-post-command-hook under X as well.

To avoid original issue under Darwin:

(setq after-make-frame-functions nil)
(customize-set-variable
 'display-buffer-alist
 '(("\\*Completions\\*" display-buffer-in-child-frame
    (child-frame-parameters . ((minibuffer . nil))))))

(The `(minibuffer . nil)' frame parameter is required if we want to leave
focus on original frame. IDK why `(no-focus-on-map . t)' doesn't help
here.)




This bug report was last modified 3 years and 279 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.