Subject: Re: bug#74619: macOS: <ns-show-prefs> displayed as keybinding for \\[customize] on emacs -nw

From: Gerd Möllmann <[email-masked]>
Date: Fri, 06 Dec 2024 18:11:10 +0100

Eli Zaretskii <[email-masked]> writes:

>> From: Robert Pluim <[email-masked]>
>> Cc: [email-masked],  [email-masked],
>>   [email-masked]
>> Date: Fri, 06 Dec 2024 17:53:47 +0100
>> 
>> >>>>> On Fri, 06 Dec 2024 18:22:11 +0200, Eli Zaretskii <[email-masked]> said:
>> 
>>     Eli> I admit that I don't understand the issue, and not how an NS-specific
>>     Eli> problem is solved in common-win.el.  Can you summarize the
>>     Eli> discussion's conclusions till now?
>> 
>> common-win.el has a definition of `x-setup-function-keys' that does
>> the appropriate magic with `system-key-alist' to fix this issue. That
>> code is conditional on (featurep 'ns), and `x-setup-function-keys' is
>> called when creating a GUI frame on macOS, but not when creating a tty
>> frame.
>> 
>> So the solution is to somehow perform the magic just when (featurep
>> 'ns), regardless of frame type. One way of doing that is by just
>> putting it at the toplevel in common-win.el (although putting it at
>> the toplevel in ns-win.el works as well).
>
> NS specific code should definitely go to ns-win.el.  But is that file
> loaded in a -nw session, especially if Emacs is compiled to only
> support TTY frames (if that can be done with the NS port)?

I configure --without-ns, and ns-win.el is not loaded in that case.