emacs-devel
[Top][All Lists]
Advanced

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

Re: "Why is emacs so square?"


From: Clément Pit-Claudel
Subject: Re: "Why is emacs so square?"
Date: Thu, 16 Apr 2020 15:51:28 -0400
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.7.0

On 16/04/2020 14.21, Eli Zaretskii wrote:
>> Cc: address@hidden
>> From: Clément Pit-Claudel <address@hidden>
>> Date: Thu, 16 Apr 2020 14:11:40 -0400
>>
>>> I think it's a bug in your ~/.emacs, so a bug report will hardly solve
>>> it.
>>
>> I think there is a misunderstanding.  The recipe I posted above is 
>> self-contained and reproduces the issue.
> 
> Of course.  Which is why I think I understand the issue.
> 
>> The problem is that custom-raised-buttons is initialized once and for all to 
>> a value that depends on whether the current frame when cus-edit is loaded is 
>> a graphical frame.  Then all other frames, graphical or not, use that value.
> 
> Initialization of stuff that depends on GUI frames and should work in
> client frames needs to be done in server-after-make-frame-hook.

I think I don't understand this part :/

To be clear, the bug that I'm talking about is that, when using the Emacs 
server, requiring cus-edit during initialization causes buttons to be displayed 
as text, not as 3D buttons.
It's really easy to run into this without realizing it.  For example, 
installing the `validate' package from Elpa will do it:

  emacs -Q --eval '(setq user-emacs-directory "/tmp/emacs-sandbox")' \
    -l package \
    --eval "(package-refresh-contents)" \
    --eval "(package-initialize)" \
    --eval "(package-install 'validate)" \
    --daemon

  emacsclient --create-frame # This frame doesn't use 3D buttons in e.g. 
customize-face

Alternatively, installing the package manually and putting `(require 
'validate)` in your .emacs to be able to use (validate-setq tab-width 4) will 
also cause issues.

What am I missing?
Clément.



reply via email to

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