GNU bug report logs - #80326
31.0.50; Lightbulb emoji eglot-code-action-indicator breaks various terminals

Please note: This is a static page, with minimal formatting, updated once a day.
Click here to see this page with the latest information and nicer formatting.

Package: emacs; Reported by: Spencer Baugh <sbaugh@HIDDEN>; dated Tue, 3 Feb 2026 13:38:02 UTC; Maintainer for emacs is bug-gnu-emacs@HIDDEN.

Message received at 80326 <at> debbugs.gnu.org:


Received: (at 80326) by debbugs.gnu.org; 4 Feb 2026 12:20:28 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed Feb 04 07:20:28 2026
Received: from localhost ([127.0.0.1]:59173 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1vnbrw-0006oc-6g
	for submit <at> debbugs.gnu.org; Wed, 04 Feb 2026 07:20:28 -0500
Received: from eggs.gnu.org ([2001:470:142:3::10]:44644)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1vnbrt-0006oC-NK
 for 80326 <at> debbugs.gnu.org; Wed, 04 Feb 2026 07:20:26 -0500
Received: from fencepost.gnu.org ([2001:470:142:3::e])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1vnbrn-0001oE-19; Wed, 04 Feb 2026 07:20:19 -0500
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=MIME-version:References:Subject:In-Reply-To:To:From:
 Date; bh=3S/zhSX7MGqWcYjlQ4ZNBCz5ff/B2iBA4tfOVeoREaI=; b=qJwF+GRZsTvICDxwi+9L
 yKXaX94q00DW0ZbWuL4You3OWXplpU+ME2T3P8f1v8A25qmAPR1qtGWsvDR6C+UHrSHFDjlBObDis
 ImjWTMaJI15QcFDAEyHo+l8SBiGmkRUGWeW6UuyIHfI+Y51RuBS9vSNF8Jue3hDUwVwS7A87CFsV/
 3GAOr7wXgk1W2L+A0qjjO5s4GjZAE6ymTuXhjzzTwcKw3CMQqdMlZvA6yOHQ8N7kP3Uysli2R09m0
 DJtquffMq9GUDv/JLVdebpXbIAQ7oLDBCwN001+hMW2t/JTHYprWm140/CJSZ8LjGBgVhsdAqQ/W5
 l8LfpXx76ICj3w==;
Date: Wed, 04 Feb 2026 14:20:11 +0200
Message-Id: <86ikcczon8.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: =?utf-8?B?Sm/Do28gVMOhdm9yYQ==?= <joaotavora@HIDDEN>
In-Reply-To: <CALDnm50fzxRa0CuW6io0MZuae7LJgUykCVxRZ8NCuqoYc5hdGA@HIDDEN>
 (message from =?utf-8?B?Sm/Do28gVMOhdm9yYQ==?= on Tue, 3 Feb 2026 21:09:47
 +0000)
Subject: Re: bug#80326: 31.0.50; Lightbulb emoji eglot-code-action-indicator
 breaks various terminals
References: <ier8qdahrrp.fsf@HIDDEN>
 <867bst29rt.fsf@HIDDEN> <ier4inxopgb.fsf@HIDDEN>
 <861pj127k1.fsf@HIDDEN>
 <ier1pj1oo0u.fsf@HIDDEN> <86v7gdzvg4.fsf@HIDDEN>
 <iery0l9n76a.fsf@HIDDEN>
 <86sebhzsvr.fsf@HIDDEN> <ierv7gdn399.fsf@HIDDEN>
 <86ldh9zke1.fsf@HIDDEN>
 <CALDnm528Yi=1Q2QouX3yvGOe3z6GAVuqSFj7CSEk+NO1ER7N1Q@HIDDEN>
 <CALDnm50fzxRa0CuW6io0MZuae7LJgUykCVxRZ8NCuqoYc5hdGA@HIDDEN>
MIME-version: 1.0
Content-type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 80326
Cc: 80326 <at> debbugs.gnu.org, sbaugh@HIDDEN, app-emacs-dev@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

> From: João Távora <joaotavora@HIDDEN>
> Date: Tue, 3 Feb 2026 21:09:47 +0000
> Cc: Spencer Baugh <sbaugh@HIDDEN>, 80326 <at> debbugs.gnu.org, 
> 	app-emacs-dev@HIDDEN
> 
> On Tue, Feb 3, 2026 at 9:04 PM João Távora <joaotavora@HIDDEN> wrote:
> >
> > On Tue, Feb 3, 2026 at 7:39 PM Eli Zaretskii <eliz@HIDDEN> wrote:
> 
> > > Am I missing something here?
> >
> > I know I am.  I could have sworn this bit of code:
> >
> > (save-excursion
> >                (goto-char (car bounds))
> >                (let ((ov (make-overlay (car bounds) (cadr bounds))))
> >                  (overlay-put ov 'eglot--actions actions)
> >                  (overlay-put ov 'eglot--overlay t)
> >                  (overlay-put
> >                   ov
> >                   'before-string
> >                   (cond ((memq 'nearby eglot-code-action-indications)
> >                          tooltip)
> >                         ((memq 'margin eglot-code-action-indications)
> >                          (propertize "⚡"
> >                                      'display
> >                                      `((margin left-margin)
> >                                        ,tooltip)))))
> >                  (setq eglot--suggestion-overlay ov)))
> >
> > used 'eglot-code-action-indicator', but it clearly doesn't.
> >
> > I'll investigate this bit later.
> 
> Got it now.  That lightining emoji is a dud, it never gets displayed.  It's
> 'tooltip' that is a string that contains 'eglot-code-action-indicator'.  So
> all clear.  Everything I said above about "who sets margins" remains
> true.

Thanks.  So to avoid breaking TTY display of Emacs 30 and older, we
should replace 💡 and ⚡ with narrow (one-column) characters for this
emoji?  Or at least say in the doc string that users of Emacs 30 and
older should not select these double-width characters on TTY frames?

If not, what would you suggest as a solution for Emacs 30 and older,
where wide characters displayed in one-column margin might cause
display problems on TTY frames?




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#80326; Package emacs. Full text available.

Message received at 80326 <at> debbugs.gnu.org:


Received: (at 80326) by debbugs.gnu.org; 4 Feb 2026 07:27:47 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed Feb 04 02:27:47 2026
Received: from localhost ([127.0.0.1]:56512 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1vnXIg-0004oZ-Ar
	for submit <at> debbugs.gnu.org; Wed, 04 Feb 2026 02:27:47 -0500
Received: from mout-p-102.mailbox.org ([80.241.56.152]:50962)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <juri@HIDDEN>) id 1vnXId-0004nk-To
 for 80326 <at> debbugs.gnu.org; Wed, 04 Feb 2026 02:27:44 -0500
Received: from smtp102.mailbox.org (smtp102.mailbox.org [10.196.197.102])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
 (No client certificate requested)
 by mout-p-102.mailbox.org (Postfix) with ESMTPS id 4f5X4R0NRqz9vDb;
 Wed,  4 Feb 2026 08:27:35 +0100 (CET)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linkov.net; s=MBO0001; 
 t=1770190055;
 h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
 in-reply-to:in-reply-to:references:references;
 bh=Hd3Yn+DiFjGUOcoXirptz8YfKgXxnxTffY9zF/Km5As=;
 b=aYJIQ3RdO3GRR10cXpA72OaOQzUdVs0O0FwCEXjr0SMu+c3I2YsOFdu1lCq0EYGijxLzQQ
 0FC0WwoZ+m/y6trEYM7zx2TG3qB+3SvEZpxgcbDgLgJN3KIUQID0OxynKSOxyGaempUFDe
 rgd+6tEhM11y6sbsctddSjf365hhELpk11MsHSIwmh6JPL9qfx8k5TPD8f+4ZEovzzSYQ+
 P6rSsKGucUheUv5Krtc67/VP8JsK7Dt0VF1FTHXZpwIwfve5IY+uF/vq79VQXd+C5Npnmi
 zMCjRUWkP7oy48cZWqLEwxPLDLzpQ5nCwt9UCtP5yrI6h8U6v2f98rYJDVhLIQ==
From: Juri Linkov <juri@HIDDEN>
To: Spencer Baugh <sbaugh@HIDDEN>
Subject: Re: bug#80326: 31.0.50; Lightbulb emoji eglot-code-action-indicator
 breaks various terminals
In-Reply-To: <iery0l9n76a.fsf@HIDDEN>
Organization: LINKOV.NET
References: <ier8qdahrrp.fsf@HIDDEN>
 <867bst29rt.fsf@HIDDEN> <ier4inxopgb.fsf@HIDDEN>
 <861pj127k1.fsf@HIDDEN> <ier1pj1oo0u.fsf@HIDDEN>
 <86v7gdzvg4.fsf@HIDDEN> <iery0l9n76a.fsf@HIDDEN>
Date: Wed, 04 Feb 2026 09:23:41 +0200
Message-ID: <87fr7hvx9e.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: text/plain
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 80326
Cc: 80326 <at> debbugs.gnu.org, Eli Zaretskii <eliz@HIDDEN>,
 app-emacs-dev@HIDDEN, joaotavora@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

> In bug#77313, we extensively discussed how to properly automatically
> update window margins when there are multiple packages using the
> margins, and Juri posted a patch to emacs-devel to add a
> window-margin-functions hook.  But it never actually landed - I think
> there was some disagreement on emacs-devel which I didn't follow.

There is also unfinished bug#80025 with many problems caused
by the details of displaying wide chars by the display engine.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#80326; Package emacs. Full text available.

Message received at 80326 <at> debbugs.gnu.org:


Received: (at 80326) by debbugs.gnu.org; 3 Feb 2026 21:10:03 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Feb 03 16:10:03 2026
Received: from localhost ([127.0.0.1]:51265 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1vnNet-0004jd-3S
	for submit <at> debbugs.gnu.org; Tue, 03 Feb 2026 16:10:03 -0500
Received: from mail-ot1-x331.google.com ([2607:f8b0:4864:20::331]:52278)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
 (Exim 4.84_2) (envelope-from <joaotavora@HIDDEN>)
 id 1vnNeq-0004j8-Nl
 for 80326 <at> debbugs.gnu.org; Tue, 03 Feb 2026 16:10:01 -0500
Received: by mail-ot1-x331.google.com with SMTP id
 46e09a7af769-7cfd95f77a3so3929686a34.0
 for <80326 <at> debbugs.gnu.org>; Tue, 03 Feb 2026 13:10:00 -0800 (PST)
ARC-Seal: i=1; a=rsa-sha256; t=1770152999; cv=none;
 d=google.com; s=arc-20240605;
 b=CHuFKXuGevnXjt6alYU577CgKuvYWG2redjjpBB6zT7ZnpC1BPABBz+dHpOJCyfmHx
 MfVaZ0rRwGq5g4bpDcqQYi4nAf6EnQ6rLlOQdYZEjzoGhJ3vK7sUBhpICXVX13VQG3B5
 PDhtt84b3R/qPBJBfHmywBDyXCi0FNrKV67ArUzNgPTqt/htr/JZSzufEsAdBo+Oq3ya
 uvM+zDhP4i5IfVnUcsfLxAJ5P1AMlTCG+wuN217TVqOfb6+vEnSbZLlGtlAWvnp1cjor
 8LSZu7AskGtjP/gogpt7sikJachgs/02xNyjw5iwgyjTqO8E3SF3wIzWC92UKzoTtVu+
 KmtA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com;
 s=arc-20240605; 
 h=content-transfer-encoding:cc:to:subject:message-id:date:from
 :in-reply-to:references:mime-version:dkim-signature;
 bh=1RNjlIzqZgkbNE1wCfXIAunmqX7ux8h3XLHBz2oElXs=;
 fh=WnVwI09jcSO/oqAFr/0mNWepARTM8yLOn/9toUL97cY=;
 b=SyMgTTixVzCfrgQnO14kcx9HgM+uMCZly2+7hCHJf7fGDDQt9UoncSW5Wll7SPasm3
 /tVTLbZIaETnGgx97w8bk4CzM7aY+A04+T60DVhlmFbzWV53l2nBA1WApazLYNzeJQAz
 TBWY++7Oieqgq8uIWaybzhppQ0rYzuiSTKSy+7k3Z2jqtwmNVOWIyJzU3lyMFr4CapoK
 IYTLI7I2xnKRxKAJig0jud+N/5feE9G5hyT2aZIl6/NwANhVlM2zkUwOJkN+krjBca5y
 YT6qWTSqE2r3iJhLFY2pOFZEDmF0afWtsjv2EPHf529paytgxZyQ1w58hwpR9F6mUrhS
 uM1w==; darn=debbugs.gnu.org
ARC-Authentication-Results: i=1; mx.google.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=gmail.com; s=20230601; t=1770152999; x=1770757799; darn=debbugs.gnu.org;
 h=content-transfer-encoding:cc:to:subject:message-id:date:from
 :in-reply-to:references:mime-version:from:to:cc:subject:date
 :message-id:reply-to;
 bh=1RNjlIzqZgkbNE1wCfXIAunmqX7ux8h3XLHBz2oElXs=;
 b=K5GfZm/riAPjDgEs+zhPwtLQe9QLof9pYCS1Ypr9pGGdsXoI3b7DsdZrheeD7UVH0H
 PaLs/Kq3/aw0kvhlxUXvBaAR/wZ6piQ+HuSd2/WShEJiDzZTDLulfADF9EQ45OCYpVqf
 DcCwh9sbctHaK/e9HsCvDiokbLKfjVX2TF3j3Zf59eXPpBON+zvam7P/CwOCABeR7shl
 416SWNciDRbn2XYrxf2RENPhVtPJUk2MxcZTKBKPqDHBioFe2udXtyJ0EFA3Y2n3dhIK
 +Fk8AVUFG7SjGIRB7khWjJO3q0497KFIB3CoZsZxO830u4ilD/cBmW9/UOvD6+C47JsD
 yzyw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20230601; t=1770152999; x=1770757799;
 h=content-transfer-encoding:cc:to:subject:message-id:date:from
 :in-reply-to:references:mime-version:x-gm-gg:x-gm-message-state:from
 :to:cc:subject:date:message-id:reply-to;
 bh=1RNjlIzqZgkbNE1wCfXIAunmqX7ux8h3XLHBz2oElXs=;
 b=ArQjk0lIwakrmTCHrO0rxVn+yjSgMAfd0HxdrTe0YzkOQktX0F8ZjbBclAGgL+vKvc
 LrLTpv6nAIeHzU9Fhe+TfQqYteB1zCbNY8fEN4zdzhIPkU1BzOvRMDhJJVBxUCQCtUe2
 HeoU+PqCgcWZGuGDypVj8EGOv0tyXmK0E054xhKBMfrSjlvztxUVhk/CBpPTczwGVTJ8
 Rz6NSdnkgBUiVlVqRSg8mYm85Okkd0P6We9hBf3rXkVtInwmLVOpXnHrqDkb9WBM24tE
 fy2hEY/bQhseDaVEKHWMbbrW0zylp6112+Qcz2or/gcqAgkhXmcTeXSvq+VB2xM+S/2f
 u8Zg==
X-Forwarded-Encrypted: i=1;
 AJvYcCUNyjr3HtGxz7HAhc7f9vyvjLkoRpRmbD060/j8gDPeFiO5BM/Pr4lipCrM6FQrgycbTeiGuQ==@debbugs.gnu.org
X-Gm-Message-State: AOJu0Yxu/m6/LWYCx2SeIPEPWzUaEu7fiG7MbkagkU6mqJLmYiF+VDNn
 3BbEZ4WQ4muYKh4sUKbtTyrIJcC6B1I0MskH4Y7pqLitejnR1UEpVq9VlgKfNx6bEdLpkIgHxVb
 ali4fnJuttnoADdHlC+aj5orUQdZZwLg=
X-Gm-Gg: AZuq6aJlKm0V/XJpi7k1NbrtjpqJGjLRy1XxZT6BWMf0bJObEZde/5kbrvqAb4uU4le
 hkBWs996lwrY6k9iUvN5uatiwMhtq0hkGfAXYjM/ylfSLYldxIGp1FkV6oSKZTrAU8VplpzEdlZ
 KQuiUu1tgcRR36F4GnXdBytwrWpStA8JK/r0oE5O3d8J+R9v7LqqW1rOCMx2+N2UEoTCnzZHFOn
 1lja6PjbmaeAknuns2oMjlVHidw1nte8dAprRckPpvhUDJjrOC8SoZTiXkggiNAiJhS5w==
X-Received: by 2002:a05:6820:4dce:b0:663:d9:e9ff with SMTP id
 006d021491bc7-66a23148d97mr494109eaf.57.1770152999570; Tue, 03 Feb 2026
 13:09:59 -0800 (PST)
MIME-Version: 1.0
References: <ier8qdahrrp.fsf@HIDDEN>
 <867bst29rt.fsf@HIDDEN> <ier4inxopgb.fsf@HIDDEN>
 <861pj127k1.fsf@HIDDEN>
 <ier1pj1oo0u.fsf@HIDDEN> <86v7gdzvg4.fsf@HIDDEN>
 <iery0l9n76a.fsf@HIDDEN>
 <86sebhzsvr.fsf@HIDDEN> <ierv7gdn399.fsf@HIDDEN>
 <86ldh9zke1.fsf@HIDDEN>
 <CALDnm528Yi=1Q2QouX3yvGOe3z6GAVuqSFj7CSEk+NO1ER7N1Q@HIDDEN>
In-Reply-To: <CALDnm528Yi=1Q2QouX3yvGOe3z6GAVuqSFj7CSEk+NO1ER7N1Q@HIDDEN>
From: =?UTF-8?B?Sm/Do28gVMOhdm9yYQ==?= <joaotavora@HIDDEN>
Date: Tue, 3 Feb 2026 21:09:47 +0000
X-Gm-Features: AZwV_Qj2St-Y_DM_JCHXThp1jxbhoSTP5dGMWQhHghhEnMXeGV1H3hQO6-AnQHQ
Message-ID: <CALDnm50fzxRa0CuW6io0MZuae7LJgUykCVxRZ8NCuqoYc5hdGA@HIDDEN>
Subject: Re: bug#80326: 31.0.50; Lightbulb emoji eglot-code-action-indicator
 breaks various terminals
To: Eli Zaretskii <eliz@HIDDEN>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
X-Spam-Score: 1.0 (+)
X-Debbugs-Envelope-To: 80326
Cc: 80326 <at> debbugs.gnu.org, Spencer Baugh <sbaugh@HIDDEN>,
 app-emacs-dev@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: 0.0 (/)

On Tue, Feb 3, 2026 at 9:04=E2=80=AFPM Jo=C3=A3o T=C3=A1vora <joaotavora@gm=
ail.com> wrote:
>
> On Tue, Feb 3, 2026 at 7:39=E2=80=AFPM Eli Zaretskii <eliz@HIDDEN> wrote=
:

> > Am I missing something here?
>
> I know I am.  I could have sworn this bit of code:
>
> (save-excursion
>                (goto-char (car bounds))
>                (let ((ov (make-overlay (car bounds) (cadr bounds))))
>                  (overlay-put ov 'eglot--actions actions)
>                  (overlay-put ov 'eglot--overlay t)
>                  (overlay-put
>                   ov
>                   'before-string
>                   (cond ((memq 'nearby eglot-code-action-indications)
>                          tooltip)
>                         ((memq 'margin eglot-code-action-indications)
>                          (propertize "=E2=9A=A1"
>                                      'display
>                                      `((margin left-margin)
>                                        ,tooltip)))))
>                  (setq eglot--suggestion-overlay ov)))
>
> used 'eglot-code-action-indicator', but it clearly doesn't.
>
> I'll investigate this bit later.

Got it now.  That lightining emoji is a dud, it never gets displayed.  It's
'tooltip' that is a string that contains 'eglot-code-action-indicator'.  So
all clear.  Everything I said above about "who sets margins" remains
true.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#80326; Package emacs. Full text available.

Message received at 80326 <at> debbugs.gnu.org:


Received: (at 80326) by debbugs.gnu.org; 3 Feb 2026 21:05:05 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Feb 03 16:05:05 2026
Received: from localhost ([127.0.0.1]:51226 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1vnNa5-0004TC-AS
	for submit <at> debbugs.gnu.org; Tue, 03 Feb 2026 16:05:05 -0500
Received: from mail-oo1-xc35.google.com ([2607:f8b0:4864:20::c35]:51274)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
 (Exim 4.84_2) (envelope-from <joaotavora@HIDDEN>)
 id 1vnNa3-0004Sl-F0
 for 80326 <at> debbugs.gnu.org; Tue, 03 Feb 2026 16:05:04 -0500
Received: by mail-oo1-xc35.google.com with SMTP id
 006d021491bc7-662f54771dcso1891422eaf.2
 for <80326 <at> debbugs.gnu.org>; Tue, 03 Feb 2026 13:05:03 -0800 (PST)
ARC-Seal: i=1; a=rsa-sha256; t=1770152702; cv=none;
 d=google.com; s=arc-20240605;
 b=hT7PqFkXxGKuPWDUZMk4/YGcLg7TCFtG945xarvBx+0rlBS+tKQ5zff3da8Jx0imDY
 S/luMUbm27uo1i6EYm4/ypkqbCSaKmGKnqpVFre9lDqf0FSe2McBPuADo7NhMYG8LUYp
 8sBv550Pj7y0S+uwut/u4ngUkefeUhazeR+YzkOdGVws4xCWwQNydEPwpIY/CDgmo2R+
 NUaL5zPT1o5IsSVBvq8xje7cl08qgjYeujJiFP3XevLeSrz5wMahbAKgtjDkddG0fhGQ
 1FM3FjCfR/CL9WNS0rmvrbhQ5KnGJr99T5qbq+V3SbBzz0kAR86v6+j2yK0yP7We8uaG
 1blQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com;
 s=arc-20240605; 
 h=content-transfer-encoding:cc:to:subject:message-id:date:from
 :in-reply-to:references:mime-version:dkim-signature;
 bh=2deUQ29hBFNC7WzvTPLyMFDSB209Xjyz65rQ71fQync=;
 fh=a9T9rBmTnm8LEPZX1XN3rSJm33QOW6fQf8oP/ktnssc=;
 b=bx/JSzR2ObAw+kkFjSlRt73MvJmF1azYNx8omoFGR6ixpX89KFh0F9frngXDLvcRM4
 sw84Y1BbiJQzG1S0zpiecO06V2dmJAlvsBr6QJxoAbC9u4GkZiZsET1dny55pJEP6gNv
 OxpB+fVDrjpqRqKL1rwp4GGRHnXFhDYKmiMwcnDnCkhOIZqtkubP3RRQKzLXZNqTql7n
 pW4LMccUT2gvMExLfe0ZnnlLjtBSCdNwUy/iVc69AA1JXX161GV3Os0+ESQq2tC+iZu0
 TPfFxpsbhJZoRoRwIU4dVAKSu+DGc/PuVNOH9ecEFWvnyrAK/6StnApUA++Pjg/qRqkS
 N3Xw==; darn=debbugs.gnu.org
ARC-Authentication-Results: i=1; mx.google.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=gmail.com; s=20230601; t=1770152702; x=1770757502; darn=debbugs.gnu.org;
 h=content-transfer-encoding:cc:to:subject:message-id:date:from
 :in-reply-to:references:mime-version:from:to:cc:subject:date
 :message-id:reply-to;
 bh=2deUQ29hBFNC7WzvTPLyMFDSB209Xjyz65rQ71fQync=;
 b=S9brUiX5l5ha/px2V98y4D8Rwj/9sTV4k5RO6TCms+UHsfCzrhpu5mzUjTV4Kw1DpO
 ZwUiYVlMw8Rqz0piIYyhUwQ5zvFHaxvjJ0MgsupB+wvGywxreksKhk+XTV6ztKQ31CBU
 nhhghYMH6vv4+jKC7MozdfWBoy6XxHLVGoK4mscbcy/FI6u2PE6/yaqZN0vCT0Jz5GsC
 P0eCxOk2Sh8u0VcZZqgDZZssdZwDrm4IFWEJZMRzE2TkfusgF+xDyFF2qCccoZIB471B
 WL0J9GmQI7pqM3HcRveh7a3a3xIDbSrnL4YUp3jLGUYZ2ZO8qQN2v1IytOfaYarkajBP
 rMiQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20230601; t=1770152702; x=1770757502;
 h=content-transfer-encoding:cc:to:subject:message-id:date:from
 :in-reply-to:references:mime-version:x-gm-gg:x-gm-message-state:from
 :to:cc:subject:date:message-id:reply-to;
 bh=2deUQ29hBFNC7WzvTPLyMFDSB209Xjyz65rQ71fQync=;
 b=M5COGbY4QYPkAF2SQng0OmahNOc64Wczc5d5zCgiLZY4uVT6jHOXeKp9NrwMQ2ff75
 tinrHdTBr2DX5t9k54ErgPNteWA6ik5b76SI0Oo7FtnrWcojRJkwcM7ill3DsXuR/2/o
 ZhmTDx3VNuj9DMlCWfAuuHsMP8Uv5img9XDY9EhRosjGRWSNaPyGlGVyP5uv5I+jmd2K
 Por0T5rqtU49UcAGTF4JBjfmakgcmQ6W6E1c/zCvraxoLLOWBnsvJrXDxy+yR1ZBNMs7
 Lh6nmGbECJ97V0gXYjNOPLpE/VKoN9jqJ1xaMn+hC67qyhzlm9DtQCGUVyCdwWhEExzc
 ARhQ==
X-Forwarded-Encrypted: i=1;
 AJvYcCXFmst2vmAEZsqcWyr473djjTr2bU4WmLgMXpa23lmWUxtySOoFtsop9hJvjL6t4XJRU1OQtA==@debbugs.gnu.org
X-Gm-Message-State: AOJu0YzzPyj6D647Pc3Lak0uFxcHPPOvcXM0VaBWOid0x/fGsvsi928c
 eVFdf/6HDMvUR/QWzG9GPfceZR0TZ8fbwj1lQxyACRaFxAKeQ0wowpFHXXlsSLKTOvqm74ivaXV
 yhvun4hUZ48MssdIQG+Rad88iXFsEK5I=
X-Gm-Gg: AZuq6aJIzaXnfeTHIY1/QYcFrBBlq4BlpouGOu8Lzzo1IfzDh7JYmqfnCMEMd+q/e/5
 BtYdmmoHF0a8AAqm7TpkgTuVM/c7pTYTYV2TclNx66wQG/UKUOS2g0X+1Asnw4QuMdjFN8WRukK
 qmT1/OSc7Mz1BuNbALCWo6cXR9GKqV7R/zmkQFqMsB+uRnc+giDEyIflxHP7wBX/LozGfFB+ozC
 uS9uz5DNT+77Pwm/++7lSJOh9dWzrXDJOxkD8VSZAS6LkYRmvrM+YjWO8F1U7eWCG2Vsg==
X-Received: by 2002:a05:6820:229a:b0:662:fa06:7d79 with SMTP id
 006d021491bc7-66a226926damr411226eaf.47.1770152702416; Tue, 03 Feb 2026
 13:05:02 -0800 (PST)
MIME-Version: 1.0
References: <ier8qdahrrp.fsf@HIDDEN>
 <867bst29rt.fsf@HIDDEN> <ier4inxopgb.fsf@HIDDEN>
 <861pj127k1.fsf@HIDDEN>
 <ier1pj1oo0u.fsf@HIDDEN> <86v7gdzvg4.fsf@HIDDEN>
 <iery0l9n76a.fsf@HIDDEN>
 <86sebhzsvr.fsf@HIDDEN> <ierv7gdn399.fsf@HIDDEN>
 <86ldh9zke1.fsf@HIDDEN>
In-Reply-To: <86ldh9zke1.fsf@HIDDEN>
From: =?UTF-8?B?Sm/Do28gVMOhdm9yYQ==?= <joaotavora@HIDDEN>
Date: Tue, 3 Feb 2026 21:04:50 +0000
X-Gm-Features: AZwV_QjBDr-TThWZaRf6_rykz-b30SpaK9srJj7uZrBqOXYfl2O6yXnor35aUuc
Message-ID: <CALDnm528Yi=1Q2QouX3yvGOe3z6GAVuqSFj7CSEk+NO1ER7N1Q@HIDDEN>
Subject: Re: bug#80326: 31.0.50; Lightbulb emoji eglot-code-action-indicator
 breaks various terminals
To: Eli Zaretskii <eliz@HIDDEN>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
X-Spam-Score: 1.0 (+)
X-Debbugs-Envelope-To: 80326
Cc: 80326 <at> debbugs.gnu.org, Spencer Baugh <sbaugh@HIDDEN>,
 app-emacs-dev@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: 0.0 (/)

On Tue, Feb 3, 2026 at 7:39=E2=80=AFPM Eli Zaretskii <eliz@HIDDEN> wrote:
>
>
> > eglot code actions are a totally separate functionality from flymake,
> > they have no shared code at all.  So it is indeed two packages.
>
> I guess I'm missing something.
> Would you please explain which package
> sets up the 1-column margin in this scenario?

"Probably Flymake" is the answer.

If you happen to launch Eglot without Flymake (very unlikely but possible),=
 then
noone does.  Eglot doesn't set it up and you'll miss one of the many
possibilities
that indicates a code action at point.  But in the overwhelming
majority of cases,
Flymake, which is auto-started by Eglot unless you explicitly forbit
it, sets up
the left margin to display its own stuff, and Eglot goes along for the ride=
.

> If it isn't Eglot, why
> doesn't Eglot do it, if it wants to display some indicator in the
> margin?  These margins don't appear automagically, they must be set up
> to show something in them, so Eglot cannot just use a 'display'
> property that displays in the margin without setting up those margins.
> So why doesn't it?

Because it was unforeseen complexity, and there isn't any way, let alone
a good way, to negotiate margins with other packages, so Eglot uses the
margin on a "hope for the best" basis.  It works ok, except for this
double-width problem.  I know some terminals handle this well.  If the next=
 cell
is a blank, they overdraw, else they truncate. MinTTY at least does this.
But I agree it shouldn't be a double width char.

> Am I missing something here?

I know I am.  I could have sworn this bit of code:

(save-excursion
               (goto-char (car bounds))
               (let ((ov (make-overlay (car bounds) (cadr bounds))))
                 (overlay-put ov 'eglot--actions actions)
                 (overlay-put ov 'eglot--overlay t)
                 (overlay-put
                  ov
                  'before-string
                  (cond ((memq 'nearby eglot-code-action-indications)
                         tooltip)
                        ((memq 'margin eglot-code-action-indications)
                         (propertize "=E2=9A=A1"
                                     'display
                                     `((margin left-margin)
                                       ,tooltip)))))
                 (setq eglot--suggestion-overlay ov)))

used 'eglot-code-action-indicator', but it clearly doesn't.

I'll investigate this bit later.  Anyway I hope your question about
"who sets margins"
was answered.


Jo=C3=A3o T=C3=A1vora




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#80326; Package emacs. Full text available.

Message received at 80326 <at> debbugs.gnu.org:


Received: (at 80326) by debbugs.gnu.org; 3 Feb 2026 19:40:02 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Feb 03 14:40:02 2026
Received: from localhost ([127.0.0.1]:50552 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1vnMFl-0008S8-Ck
	for submit <at> debbugs.gnu.org; Tue, 03 Feb 2026 14:40:02 -0500
Received: from eggs.gnu.org ([2001:470:142:3::10]:49260)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1vnMFj-0008Ru-IV
 for 80326 <at> debbugs.gnu.org; Tue, 03 Feb 2026 14:40:00 -0500
Received: from fencepost.gnu.org ([2001:470:142:3::e])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1vnMFd-0007Gn-2v; Tue, 03 Feb 2026 14:39:54 -0500
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=MIME-version:References:Subject:In-Reply-To:To:From:
 Date; bh=jONsvrsfxVqS2PNJnGRECwqXqtfqzlkpUN+WDsB9fzY=; b=PlCJiGbPozbfj9/QoJFe
 iURqgvfjZrsD7C+yu2dQkMc2PJEcYgskQ4TIXCDfMeTPGKL6UXPf7IHjY1HdmJxqvDbZObEhxNOdU
 YmcIPnmVR4v4aU/7MS0zaARWG+splAq/Qf+TAxefaiyyWE8Jq4DBOtq67zOq9ayvBlz4uS6CqrBRf
 wx2dRC8gbIrQ75dctpDaNtLIZjI1MI2BW9cEAoZKUVWEFHajyuzVjCp/BG9SNnu4LJq66zWnfzrZY
 GcYFb46RAt2qtYgpC6Ltqo/Oj3P6Dla/9+0UmQm+I0e9sPvpr0tnZDdErtoDHeSh5DOy244dv7Izb
 o287hq2iBPCZGA==;
Date: Tue, 03 Feb 2026 21:39:50 +0200
Message-Id: <86ldh9zke1.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: Spencer Baugh <sbaugh@HIDDEN>
In-Reply-To: <ierv7gdn399.fsf@HIDDEN> (message from Spencer Baugh on
 Tue, 03 Feb 2026 17:30:42 +0000)
Subject: Re: bug#80326: 31.0.50; Lightbulb emoji eglot-code-action-indicator
 breaks various terminals
References: <ier8qdahrrp.fsf@HIDDEN>
 <867bst29rt.fsf@HIDDEN> <ier4inxopgb.fsf@HIDDEN>
 <861pj127k1.fsf@HIDDEN> <ier1pj1oo0u.fsf@HIDDEN>
 <86v7gdzvg4.fsf@HIDDEN> <iery0l9n76a.fsf@HIDDEN>
 <86sebhzsvr.fsf@HIDDEN> <ierv7gdn399.fsf@HIDDEN>
MIME-version: 1.0
Content-type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 80326
Cc: 80326 <at> debbugs.gnu.org, app-emacs-dev@HIDDEN, joaotavora@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

> From: Spencer Baugh <sbaugh@HIDDEN>
> Cc: 80326 <at> debbugs.gnu.org,  app-emacs-dev@HIDDEN,  joaotavora@HIDDEN
> Date: Tue, 03 Feb 2026 17:30:42 +0000
> 
> Eli Zaretskii <eliz@HIDDEN> writes:
> 
> >> To be clear, Eglot's use of 💡 in the margin for code actions is totally
> >> unrelated to flymake, and there's not currently a way to make flymake
> >> aware of it.  It just happens to be the case that enabling flymake
> >> resizes the margin to width=1 as a side-effect.  It's totally
> >> unintentional, not deliberate.
> >
> > If Eglot wants to use the lightbulb character as indicator, can't it
> > override the default value of the flymake indicator to make Flymake
> > aware of the wider string?
> >
> > Alternatively, perhaps Flymake should provide a hook for callers to
> > customize the indicator string and/or the required width of the window
> > margins?
> 
> No, neither of those approaches would work, because flymake indicators
> are not displayed for lines with eglot code actions.  Eglot is not using
> the lightbulb as a flymake indicator.  It's using it as an indicator for
> eglot code actions on the current line, which has nothing to do with
> flymake.
> 
> >> In bug#77313, we extensively discussed how to properly automatically
> >> update window margins when there are multiple packages using the
> >> margins, and Juri posted a patch to emacs-devel to add a
> >> window-margin-functions hook.  But it never actually landed - I think
> >> there was some disagreement on emacs-devel which I didn't follow.
> >
> > That's not directly related, since in this case AFAIU only one package
> > wants to display on the margin, right?
> 
> eglot code actions are a totally separate functionality from flymake,
> they have no shared code at all.  So it is indeed two packages.

I guess I'm missing something.  Would you please explain which package
sets up the 1-column margin in this scenario?  If it isn't Eglot, why
doesn't Eglot do it, if it wants to display some indicator in the
margin?  These margins don't appear automagically, they must be set up
to show something in them, so Eglot cannot just use a 'display'
property that displays in the margin without setting up those margins.
So why doesn't it?  Am I missing something here?




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#80326; Package emacs. Full text available.

Message received at 80326 <at> debbugs.gnu.org:


Received: (at 80326) by debbugs.gnu.org; 3 Feb 2026 17:30:52 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Feb 03 12:30:52 2026
Received: from localhost ([127.0.0.1]:49418 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1vnKEl-0000gO-Nn
	for submit <at> debbugs.gnu.org; Tue, 03 Feb 2026 12:30:52 -0500
Received: from mxout5.mail.janestreet.com ([64.215.233.18]:38257)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <sbaugh@HIDDEN>)
 id 1vnKEj-0000fz-4f
 for 80326 <at> debbugs.gnu.org; Tue, 03 Feb 2026 12:30:49 -0500
From: Spencer Baugh <sbaugh@HIDDEN>
To: Eli Zaretskii <eliz@HIDDEN>
Subject: Re: bug#80326: 31.0.50; Lightbulb emoji eglot-code-action-indicator
 breaks various terminals
In-Reply-To: <86sebhzsvr.fsf@HIDDEN> (Eli Zaretskii's message of "Tue, 03 Feb
 2026 18:36:24 +0200")
References: <ier8qdahrrp.fsf@HIDDEN>
 <867bst29rt.fsf@HIDDEN> <ier4inxopgb.fsf@HIDDEN>
 <861pj127k1.fsf@HIDDEN> <ier1pj1oo0u.fsf@HIDDEN>
 <86v7gdzvg4.fsf@HIDDEN> <iery0l9n76a.fsf@HIDDEN>
 <86sebhzsvr.fsf@HIDDEN>
Date: Tue, 03 Feb 2026 17:30:42 +0000
Message-ID: <ierv7gdn399.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=janestreet.com;
 s=waixah; t=1770139843;
 bh=mATnyToGSEDokYZkeKePJ6/hiRT2C3qzfnPuiVQBGic=;
 h=From:To:Cc:Subject:In-Reply-To:References:Date;
 b=jdS1rB5xk/bbJrS6DKL0SJ3wAJUoChgsomNPtSU3zzdIM0sZ7ReLR7LM9K1qjlH5W
 MY/TBQMcxfJoLYaibq75cyr2dQUZ3vSLASUvUQrrZlnnIWlWNPqwI1LrLqZas+NJV2
 WUTzsvpyqvRF3CyJSvbVR1cgsbZN6qcwMQ/uMtj10sJkklezlhUAigPzH5gMQdOjW7
 kINC3aOgOCSpE6s20qgQCW89up5IBqloY8mXlu/tZWwSVnSEKsKjAqvML94aoMVy6R
 Skre99TJg0sdacuOnjjOemQIc9Awim0E70piMhC84k9m3DRTwX3PiVvT5G9CtQCrtn
 HsEl4IyRTsZzw==
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 80326
Cc: 80326 <at> debbugs.gnu.org, app-emacs-dev@HIDDEN, joaotavora@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

Eli Zaretskii <eliz@HIDDEN> writes:

>> From: Spencer Baugh <sbaugh@HIDDEN>
>> Cc: 80326 <at> debbugs.gnu.org,  app-emacs-dev@HIDDEN,  joaotavora@gm=
ail.com
>> Date: Tue, 03 Feb 2026 16:06:05 +0000
>>=20
>> Eli Zaretskii <eliz@HIDDEN> writes:
>> >> I guess this is still a bug, though, because Eglot is supposed to work
>> >> on old Emacs versions.
>> >
>> > Why does Eglot set up a one-column margin?
>>=20
>> Again, it's flymake setting it up.
>>=20
>> >> (I guess I won't bother trying to backport the trunk fix to my site's
>> >> Emacs 30 branch... there are probably lots of changes that could affe=
ct
>> >> this)
>> >
>> > I think this is the fix for bug#77452, it's about 10 lines in xdisp.c.
>> >
>> >> > Also, can you tell me where does Eglot determine the width of the
>> >> > margin and sets that up?  One column is definitely wrong when the
>> >> > character is wider.
>> >>=20
>> >> I don't think eglot ever actually resizes the margin.  But flymake-mo=
de
>> >> does resize the margin, and eglot (by default) turns on flymake-mode.
>> >> And you're right, this causes the margin to be the wrong size.
>> >
>> > So an easier solution is to fix flymake-mode, which needs to be done
>> > anyway, even with the display bug fixed.
>> >
>> > It looks like flymake-mode determines the margin width without knowing
>> > that Eglot uses =F0=9F=92=A1 as the indicator, am I reading the code c=
orrectly?
>>=20
>> To be clear, Eglot's use of =F0=9F=92=A1 in the margin for code actions =
is totally
>> unrelated to flymake, and there's not currently a way to make flymake
>> aware of it.  It just happens to be the case that enabling flymake
>> resizes the margin to width=3D1 as a side-effect.  It's totally
>> unintentional, not deliberate.
>
> If Eglot wants to use the lightbulb character as indicator, can't it
> override the default value of the flymake indicator to make Flymake
> aware of the wider string?
>
> Alternatively, perhaps Flymake should provide a hook for callers to
> customize the indicator string and/or the required width of the window
> margins?

No, neither of those approaches would work, because flymake indicators
are not displayed for lines with eglot code actions.  Eglot is not using
the lightbulb as a flymake indicator.  It's using it as an indicator for
eglot code actions on the current line, which has nothing to do with
flymake.

>> In bug#77313, we extensively discussed how to properly automatically
>> update window margins when there are multiple packages using the
>> margins, and Juri posted a patch to emacs-devel to add a
>> window-margin-functions hook.  But it never actually landed - I think
>> there was some disagreement on emacs-devel which I didn't follow.
>
> That's not directly related, since in this case AFAIU only one package
> wants to display on the margin, right?

eglot code actions are a totally separate functionality from flymake,
they have no shared code at all.  So it is indeed two packages.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#80326; Package emacs. Full text available.

Message received at 80326 <at> debbugs.gnu.org:


Received: (at 80326) by debbugs.gnu.org; 3 Feb 2026 17:04:09 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Feb 03 12:04:09 2026
Received: from localhost ([127.0.0.1]:49041 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1vnJou-0006p7-7Y
	for submit <at> debbugs.gnu.org; Tue, 03 Feb 2026 12:04:08 -0500
Received: from eggs.gnu.org ([2001:470:142:3::10]:35296)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1vnJor-0006oS-Sk
 for 80326 <at> debbugs.gnu.org; Tue, 03 Feb 2026 12:04:06 -0500
Received: from fencepost.gnu.org ([2001:470:142:3::e])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1vnJol-0000DT-Sy; Tue, 03 Feb 2026 12:03:59 -0500
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=MIME-version:References:Subject:In-Reply-To:To:From:
 Date; bh=btKx57ylo0jE9YVgMPy8vfkzw8bxEFiBwVmxDWEUWGo=; b=CrB57fQO7o+hYkCrU+ta
 SKpWRoRcMgIVmvJgCYg4jbmnPgTa8FOYQ2GI0Yw6yndMimQ0f0B2PSIpn5hJNzXnrQ6ldwWeGNHAk
 r5fhzwsYhC6s1/LXyTt8to77Vm7u+7ZI6aB9kdA1L/GrH82jjiH5gY4E1WB/vnwAKNJs0x89n+POP
 yN43o2oWskBv+nmKVOD2B82Kj+5/S2KGRzN2JJaCxQP+os8r10Ktc5mhHmGJWlrudyqK3APc3HnHI
 E6ZB5KcuOXPh73lXVksS1V+Ab7WhXP2oZh34ANeDvfFm/p9wCZDACSCWVP9qmjzp9NUwma4X0sMyw
 c7mNnX0YiNIH6w==;
Date: Tue, 03 Feb 2026 19:03:48 +0200
Message-Id: <86o6m5zrm3.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: =?utf-8?B?Sm/Do28gVMOhdm9yYQ==?= <joaotavora@HIDDEN>
In-Reply-To: <CALDnm51M3c+aPjpLQz_H+ky4_YZRJ+5Hz_BPANhtROVi=KkBGg@HIDDEN>
 (message from =?utf-8?B?Sm/Do28gVMOhdm9yYQ==?= on Tue, 3 Feb 2026 16:41:43
 +0000)
Subject: Re: bug#80326: 31.0.50;
 Lightbulb emoji eglot-code-action-indicator breaks various terminals
References: <ier8qdahrrp.fsf@HIDDEN>
 <CALDnm51M3c+aPjpLQz_H+ky4_YZRJ+5Hz_BPANhtROVi=KkBGg@HIDDEN>
MIME-version: 1.0
Content-type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 80326
Cc: 80326 <at> debbugs.gnu.org, sbaugh@HIDDEN, app-emacs-dev@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

> Cc: 80326 <at> debbugs.gnu.org, app-emacs-dev@HIDDEN
> From: João Távora <joaotavora@HIDDEN>
> Date: Tue, 3 Feb 2026 16:41:43 +0000
> 
> Whoever knows about terminals and UTF can just change that to another saber character. It used to be a
> lightning ⚡ but there was some issue and we decided to use the lightbulb. Sometimes I get it working well in
> some terminals, but lately I've just been using the letter 'h'...

Yes, a change in Eglot to us a narrower character, at least for Emacs
30 and older, will also solve the problem.

However, ⚡ also has a width of 2, so it will cause the same problem.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#80326; Package emacs. Full text available.

Message received at 80326 <at> debbugs.gnu.org:


Received: (at 80326) by debbugs.gnu.org; 3 Feb 2026 16:41:59 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Feb 03 11:41:58 2026
Received: from localhost ([127.0.0.1]:48655 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1vnJTS-00059M-44
	for submit <at> debbugs.gnu.org; Tue, 03 Feb 2026 11:41:58 -0500
Received: from mail-oo1-xc2a.google.com ([2607:f8b0:4864:20::c2a]:52305)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
 (Exim 4.84_2) (envelope-from <joaotavora@HIDDEN>)
 id 1vnJTO-000597-Cp
 for 80326 <at> debbugs.gnu.org; Tue, 03 Feb 2026 11:41:56 -0500
Received: by mail-oo1-xc2a.google.com with SMTP id
 006d021491bc7-66a2278a37dso55033eaf.0
 for <80326 <at> debbugs.gnu.org>; Tue, 03 Feb 2026 08:41:54 -0800 (PST)
ARC-Seal: i=1; a=rsa-sha256; t=1770136913; cv=none;
 d=google.com; s=arc-20240605;
 b=PrrPw35ZT/6kSJRo95ztct7mswICC98X9o4YMUlqGrRV6JHCcd7t4EKuWpBuB5Bp2r
 aCQGBHbyaUF2xXRrDTF+zA/Vmhj4ThNj+ylbVNyDKQKcdIUAXRlSQxhEtxY0elUnz+k8
 gVMjml4zkkG8LjhBMo6OkgzIgxZfIi7hmp7gzDID2dJQmR6LTuO+DD+xEQFh2yhgdLMs
 W207ol23UdyeMgEXxjWbn+qgch3OmCi2zAwp6byIzgeKKOD7BkdQ/bCTg6su/ZuGGnh8
 ZEk0Gv2t1wMNjYoAImFtxNINVC46eIptj4mpKzJR4XjIUlzjgcvYiYDY/nRXgjypoVoy
 KAlQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com;
 s=arc-20240605; 
 h=cc:to:subject:message-id:date:from:in-reply-to:references
 :mime-version:dkim-signature;
 bh=MbeWpR+m9P0BfZHO0HPdEPtOaz+G7xl3XlcHpXkE+Lc=;
 fh=9dyKrv1+MkvMphfNIOZFVKxCPSBSBy/lL2Yq+/SMiBQ=;
 b=W1tqYEDN1ELnbvkEJ4o1/9ZxgKHzaPndMCTYDK4Y1mBCB6Do4idagW2f+Hf5Fae8PD
 LfyrZjQbQFZ2xYbs16uritYg9+T5F9NIZAl/Z58A2BpJmfdrh6VfjSNjwFMcpqjMlCIr
 0sCEOR/95LlEu4ECwkt/THwtdrbu/4ZH5O2f8h57sAnxnyOEGs1hQcVAjzvFHI1ADlj1
 D2eFNwvBwGDCZ6NPFBoEEvgZ1vTuEjhNO580IGOfiqGWEgsDjDXi0EjPe8xPILdu+Rt8
 MgNasIA7DuafmHYeRjqzzh+MW7G/gtjMdJWpwrSNTKrRjiXMaoZE2sztLe7CsY3njPW+
 pJOg==; darn=debbugs.gnu.org
ARC-Authentication-Results: i=1; mx.google.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=gmail.com; s=20230601; t=1770136913; x=1770741713; darn=debbugs.gnu.org;
 h=cc:to:subject:message-id:date:from:in-reply-to:references
 :mime-version:from:to:cc:subject:date:message-id:reply-to;
 bh=MbeWpR+m9P0BfZHO0HPdEPtOaz+G7xl3XlcHpXkE+Lc=;
 b=hyPS7ci2pAwtuGpiSh46CPNXyswFsuAzfwt8NiJ/osZ1I5iiqwiqcT6Yo/D1yg4dNT
 ExLVuSsmCovYIk6kwGcHbZbG3TZRXbIp6S9xaWSQWu82NZxtb44Lp+nS3W4pOVWLlW7I
 Ge4afk7dKKBqNG8arx0l9ZyafgdGCpgHI5Brb9Yq8Jry8LC7g1pEPfns583D4CqlBfe0
 bOyvnwVNMAbjBgZwF27K+/55vXftpx2vDl9U11JRpt+7eq7ueZabm/u2uhG+Lq+YvcPD
 DhzcWgOSLEwLbtdigBTb7EiOz+uk/sg3LlN9WE2MlOQk1hRsJcHCbiWxyQOI3LFB+pv3
 1PzQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20230601; t=1770136913; x=1770741713;
 h=cc:to:subject:message-id:date:from:in-reply-to:references
 :mime-version:x-gm-gg:x-gm-message-state:from:to:cc:subject:date
 :message-id:reply-to;
 bh=MbeWpR+m9P0BfZHO0HPdEPtOaz+G7xl3XlcHpXkE+Lc=;
 b=L62bEVxN2U1t60eSRW9uLyvQDNW6prKvLwiXnQMDfylTDE2jtjhF0afaIlAdtkyFAY
 7q83XBT8xzQ4dU7o/6WWTyk2cbdGu1v12DOnh86Z1xd/6Ikwk4bV1sE1nIPQuB5OKYPT
 2wW5FZkoZok2cBhFfypAadUFHIWhpsy8AgNoP4n6hE+itoN/jy1XgrKCBxCqOAEmQYQm
 GIx5kL0PVaKmEoRY8S2nAqoOoCnVo7DqIeADw/jw868ER4cQ952NQrEo7e08Bc8L2XMM
 IlN326N38zp0lf1aDsHG9UtfHwA4FqZcHwDmYadtscNHdUvabVF59plF0sLkQSRTP/KV
 tKnA==
X-Gm-Message-State: AOJu0YzoGN3hTe1HLpmC1sVXoGE0UpYtQP7hqvyCZt9sXCUvWBdREnhi
 Q/7hCJbl2iVipWZe1scntBSUTVMxbFH2fdVWGyMLxU0FdOEWX1rfxvwrRl567ZRkidXy7IagrKW
 XlTANCilLMQoN5/VxPe3jnviyhZ2Bax4=
X-Gm-Gg: AZuq6aJgcUTJBbW9a092IqccxmpaedEqK2bcLxEHYelwVn8CvtB8M1GI4EgFBBlbqYu
 0+VsH1eXV2MP8NkXnoWgJlKZHGP27FOcpBJysQSBbkvyjgIDP79LJIowXdeMZ0TZGhvPhRHzjpF
 NiCsykFJyvPIKf2rbgrkN3xt2EI50sA8POdzUmP1WEgpoBmmSMVGJMdfdD+kJRjvXc0iLsaorZI
 BSlAUhkS8W2KZY36uAB9OO33D3JB8fEzn4hVv/9RLLm4l7SG87CHNE1vZKty3WHp7ccvg==
X-Received: by 2002:a05:6820:6ae4:b0:65f:55b4:f802 with SMTP id
 006d021491bc7-66a203a44edmr128405eaf.7.1770136913298; Tue, 03 Feb 2026
 08:41:53 -0800 (PST)
MIME-Version: 1.0
References: <ier8qdahrrp.fsf@HIDDEN>
In-Reply-To: <ier8qdahrrp.fsf@HIDDEN>
From: =?UTF-8?B?Sm/Do28gVMOhdm9yYQ==?= <joaotavora@HIDDEN>
Date: Tue, 3 Feb 2026 16:41:43 +0000
X-Gm-Features: AZwV_QjHC2it39feO79XmFxUo0z7aWjdqirK0fv-OWqCQ3MY11YX4mBVpy2F1_I
Message-ID: <CALDnm51M3c+aPjpLQz_H+ky4_YZRJ+5Hz_BPANhtROVi=KkBGg@HIDDEN>
Subject: Re: bug#80326: 31.0.50; Lightbulb emoji eglot-code-action-indicator
 breaks various terminals
To: Spencer Baugh <sbaugh@HIDDEN>
Content-Type: multipart/alternative; boundary="000000000000ebc8680649ee1dae"
X-Spam-Score: 1.0 (+)
X-Debbugs-Envelope-To: 80326
Cc: 80326 <at> debbugs.gnu.org, app-emacs-dev@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: 0.0 (/)

--000000000000ebc8680649ee1dae
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

Whoever knows about terminals and UTF can just change that to another saber
character. It used to be a lightning =E2=9A=A1 but there was some issue and=
 we
decided to use the lightbulb. Sometimes I get it working well in some
terminals, but lately I've just been using the letter 'h'...

Jo=C3=A3o T=C3=A1vora

On Tue, Feb 3, 2026, 13:38 Spencer Baugh <sbaugh@HIDDEN> wrote:

>
> In various terminals (I've reproduced this in gnome-terminal and PuTTY),
> (char-displayable-p ?=F0=9F=92=A1) is non-nil, so eglot-code-action-indic=
ator is
> "=F0=9F=92=A1".  But whenever that emoji is displayed in the left margin =
(as it is
> by default since eglot-code-action-indications contains 'margin by
> default), Emacs display breaks: e.g. by duplicating the line with the
> lightbulb on it or not updating it as you type.
>
> Maybe this is related to how "=F0=9F=92=A1" is displayed as a double-widt=
h
> character?  Maybe Emacs thinks it's displayed as a single-width
> character?
>
>
> In GNU Emacs 31.0.50 (build 2, x86_64-pc-linux-gnu, GTK+ Version
>  3.22.30, cairo version 1.15.12) of 2026-01-29 built on vdc-qws-u22796a
> Repository revision: 5ae184617128074ff7adf112156d23a259273180
> Repository branch: master
> Windowing system distributor 'The X.Org Foundation', version 11.0.1201100=
0
> System Description: Rocky Linux 8.10 (Green Obsidian)
>
> Configured using:
>  'configure --with-gif=3Difavailable'
>
> Configured features:
> CAIRO DBUS FREETYPE GLIB GMP GNUTLS GSETTINGS HARFBUZZ JPEG LIBSELINUX
> LIBSYSTEMD LIBXML2 MODULES NATIVE_COMP NOTIFY INOTIFY PDUMPER PNG RSVG
> SECCOMP SOUND SQLITE3 THREADS TIFF TOOLKIT_SCROLL_BARS X11 XDBE XIM
> XINERAMA XINPUT2 XPM XRANDR GTK3 ZLIB
>
> Important settings:
>   value of $LANG: en_US.utf8
>   locale-coding-system: utf-8-unix
>
> Major mode: Fundamental
>
> Minor modes in effect:
>   tooltip-mode: t
>   global-eldoc-mode: t
>   show-paren-mode: t
>   electric-indent-mode: t
>   mouse-wheel-mode: t
>   tool-bar-mode: t
>   menu-bar-mode: t
>   file-name-shadow-mode: t
>   global-font-lock-mode: t
>   blink-cursor-mode: t
>   minibuffer-nonselected-mode: t
>   minibuffer-regexp-mode: t
>   buffer-read-only: t
>   line-number-mode: t
>   indent-tabs-mode: t
>   transient-mark-mode: t
>   auto-composition-mode: t
>   auto-encryption-mode: t
>   auto-compression-mode: t
>
> Load-path shadows:
> None found.
>
> Features:
> (shadow sort mail-extr compile comint ansi-osc ansi-color ring comp-run
> bytecomp byte-compile comp-common rx emacsbug lisp-mnt message mailcap
> yank-media puny dired dired-loaddefs rfc822 mml mml-sec password-cache
> epa derived epg rfc6068 epg-config gnus-util text-property-search
> time-date subr-x mm-decode mm-bodies mm-encode mailabbrev gmm-utils
> mailheader cl-loaddefs cl-lib sendmail mail-parse rfc2231 rfc2047
> rfc2045 ietf-drums mm-util mail-prsvr mail-utils rmc iso-transl tooltip
> cconv eldoc paren electric uniquify ediff-hook vc-hooks lisp-float-type
> elisp-mode mwheel term/x-win x-win term/common-win x-dnd touch-screen
> tool-bar dnd fontset image regexp-opt fringe tabulated-list replace
> newcomment text-mode lisp-mode prog-mode register page tab-bar menu-bar
> rfn-eshadow isearch easymenu timer select scroll-bar mouse jit-lock
> font-lock syntax font-core term/tty-colors frame minibuffer nadvice seq
> simple cl-generic indonesian philippine cham georgian utf-8-lang
> misc-lang vietnamese tibetan thai tai-viet lao korean japanese eucjp-ms
> cp51932 hebrew greek romanian slovak czech european ethiopic indian
> cyrillic chinese composite emoji-zwj charscript charprop case-table
> epa-hook jka-cmpr-hook help abbrev obarray oclosure cl-preloaded button
> loaddefs theme-loaddefs faces cus-face macroexp files window
> text-properties overlay sha1 md5 base64 format env code-pages mule
> custom widget keymap hashtable-print-readable backquote threads dbusbind
> inotify dynamic-setting system-font-setting font-render-setting cairo
> gtk x-toolkit xinput2 x multi-tty move-toolbar make-network-process
> tty-child-frames native-compile emacs)
>
> Memory information:
> ((conses 16 89553 9710) (symbols 48 6862 0) (strings 32 25741 2562)
>  (string-bytes 1 910918) (vectors 16 16850)
>  (vector-slots 8 198424 10850) (floats 8 38 1) (intervals 56 494 0)
>  (buffers 984 12))
>
>
>

--000000000000ebc8680649ee1dae
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"auto"><div>Whoever knows about terminals and UTF can just chang=
e that to another saber character. It used to be a lightning =E2=9A=A1 but =
there was some issue and we decided to use the lightbulb. Sometimes I get i=
t working well in some terminals, but lately I&#39;ve just been using the l=
etter &#39;h&#39;...</div><div><br></div><div data-smartmail=3D"gmail_signa=
ture">Jo=C3=A3o T=C3=A1vora</div></div><br><div class=3D"gmail_quote gmail_=
quote_container"><div dir=3D"ltr" class=3D"gmail_attr">On Tue, Feb 3, 2026,=
 13:38 Spencer Baugh &lt;<a href=3D"mailto:sbaugh@HIDDEN">sbaugh@ja=
nestreet.com</a>&gt; wrote:<br></div><blockquote class=3D"gmail_quote" styl=
e=3D"margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);paddin=
g-left:1ex"><br>
In various terminals (I&#39;ve reproduced this in gnome-terminal and PuTTY)=
,<br>
(char-displayable-p ?=F0=9F=92=A1) is non-nil, so eglot-code-action-indicat=
or is<br>
&quot;=F0=9F=92=A1&quot;.=C2=A0 But whenever that emoji is displayed in the=
 left margin (as it is<br>
by default since eglot-code-action-indications contains &#39;margin by<br>
default), Emacs display breaks: e.g. by duplicating the line with the<br>
lightbulb on it or not updating it as you type.<br>
<br>
Maybe this is related to how &quot;=F0=9F=92=A1&quot; is displayed as a dou=
ble-width<br>
character?=C2=A0 Maybe Emacs thinks it&#39;s displayed as a single-width<br=
>
character?<br>
<br>
<br>
In GNU Emacs 31.0.50 (build 2, x86_64-pc-linux-gnu, GTK+ Version<br>
=C2=A03.22.30, cairo version 1.15.12) of 2026-01-29 built on vdc-qws-u22796=
a<br>
Repository revision: 5ae184617128074ff7adf112156d23a259273180<br>
Repository branch: master<br>
Windowing system distributor &#39;The X.Org Foundation&#39;, version 11.0.1=
2011000<br>
System Description: Rocky Linux 8.10 (Green Obsidian)<br>
<br>
Configured using:<br>
=C2=A0&#39;configure --with-gif=3Difavailable&#39;<br>
<br>
Configured features:<br>
CAIRO DBUS FREETYPE GLIB GMP GNUTLS GSETTINGS HARFBUZZ JPEG LIBSELINUX<br>
LIBSYSTEMD LIBXML2 MODULES NATIVE_COMP NOTIFY INOTIFY PDUMPER PNG RSVG<br>
SECCOMP SOUND SQLITE3 THREADS TIFF TOOLKIT_SCROLL_BARS X11 XDBE XIM<br>
XINERAMA XINPUT2 XPM XRANDR GTK3 ZLIB<br>
<br>
Important settings:<br>
=C2=A0 value of $LANG: en_US.utf8<br>
=C2=A0 locale-coding-system: utf-8-unix<br>
<br>
Major mode: Fundamental<br>
<br>
Minor modes in effect:<br>
=C2=A0 tooltip-mode: t<br>
=C2=A0 global-eldoc-mode: t<br>
=C2=A0 show-paren-mode: t<br>
=C2=A0 electric-indent-mode: t<br>
=C2=A0 mouse-wheel-mode: t<br>
=C2=A0 tool-bar-mode: t<br>
=C2=A0 menu-bar-mode: t<br>
=C2=A0 file-name-shadow-mode: t<br>
=C2=A0 global-font-lock-mode: t<br>
=C2=A0 blink-cursor-mode: t<br>
=C2=A0 minibuffer-nonselected-mode: t<br>
=C2=A0 minibuffer-regexp-mode: t<br>
=C2=A0 buffer-read-only: t<br>
=C2=A0 line-number-mode: t<br>
=C2=A0 indent-tabs-mode: t<br>
=C2=A0 transient-mark-mode: t<br>
=C2=A0 auto-composition-mode: t<br>
=C2=A0 auto-encryption-mode: t<br>
=C2=A0 auto-compression-mode: t<br>
<br>
Load-path shadows:<br>
None found.<br>
<br>
Features:<br>
(shadow sort mail-extr compile comint ansi-osc ansi-color ring comp-run<br>
bytecomp byte-compile comp-common rx emacsbug lisp-mnt message mailcap<br>
yank-media puny dired dired-loaddefs rfc822 mml mml-sec password-cache<br>
epa derived epg rfc6068 epg-config gnus-util text-property-search<br>
time-date subr-x mm-decode mm-bodies mm-encode mailabbrev gmm-utils<br>
mailheader cl-loaddefs cl-lib sendmail mail-parse rfc2231 rfc2047<br>
rfc2045 ietf-drums mm-util mail-prsvr mail-utils rmc iso-transl tooltip<br>
cconv eldoc paren electric uniquify ediff-hook vc-hooks lisp-float-type<br>
elisp-mode mwheel term/x-win x-win term/common-win x-dnd touch-screen<br>
tool-bar dnd fontset image regexp-opt fringe tabulated-list replace<br>
newcomment text-mode lisp-mode prog-mode register page tab-bar menu-bar<br>
rfn-eshadow isearch easymenu timer select scroll-bar mouse jit-lock<br>
font-lock syntax font-core term/tty-colors frame minibuffer nadvice seq<br>
simple cl-generic indonesian philippine cham georgian utf-8-lang<br>
misc-lang vietnamese tibetan thai tai-viet lao korean japanese eucjp-ms<br>
cp51932 hebrew greek romanian slovak czech european ethiopic indian<br>
cyrillic chinese composite emoji-zwj charscript charprop case-table<br>
epa-hook jka-cmpr-hook help abbrev obarray oclosure cl-preloaded button<br>
loaddefs theme-loaddefs faces cus-face macroexp files window<br>
text-properties overlay sha1 md5 base64 format env code-pages mule<br>
custom widget keymap hashtable-print-readable backquote threads dbusbind<br=
>
inotify dynamic-setting system-font-setting font-render-setting cairo<br>
gtk x-toolkit xinput2 x multi-tty move-toolbar make-network-process<br>
tty-child-frames native-compile emacs)<br>
<br>
Memory information:<br>
((conses 16 89553 9710) (symbols 48 6862 0) (strings 32 25741 2562)<br>
=C2=A0(string-bytes 1 910918) (vectors 16 16850)<br>
=C2=A0(vector-slots 8 198424 10850) (floats 8 38 1) (intervals 56 494 0)<br=
>
=C2=A0(buffers 984 12))<br>
<br>
<br>
</blockquote></div>

--000000000000ebc8680649ee1dae--




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#80326; Package emacs. Full text available.

Message received at 80326 <at> debbugs.gnu.org:


Received: (at 80326) by debbugs.gnu.org; 3 Feb 2026 16:40:11 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Feb 03 11:40:11 2026
Received: from localhost ([127.0.0.1]:48622 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1vnJRi-00054L-R8
	for submit <at> debbugs.gnu.org; Tue, 03 Feb 2026 11:40:11 -0500
Received: from eggs.gnu.org ([2001:470:142:3::10]:53162)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1vnJRg-0004yw-Nj
 for 80326 <at> debbugs.gnu.org; Tue, 03 Feb 2026 11:40:09 -0500
Received: from fencepost.gnu.org ([2001:470:142:3::e])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1vnJRb-0006zK-Ac; Tue, 03 Feb 2026 11:40:03 -0500
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date:
 mime-version; bh=1FyKCNCuWFCU6CLUabD6GekIZtlHHa7KtPhd5tFvmB4=; b=QkwZA0GkYxrZ
 xscJpueD6sqY3F+zcbc056h4+QRWaXI5Caq8a2T9d99UOJqp+dkyy7SfTWuQzTEMpb6EDazE3S/t8
 s83g4MeF716OvuQ8OuhhaszfiW+uI4Fu32Dq3Ta1WYxWm1H16vtugAEGSMRoySoSCl4rDBrKdDTVo
 RkfYZetHUJ71gHwKXreRMWgYqHz9qOTtiTxoI/d9POAW3yRFy/JbTUvDBTSktg6hUGb+y7hs8MFI+
 311tkGavIYLmYCrPkOaCpoC9uHmK2gK0Rs9IEFXu3wmQ3taygVZ1nwYzUapQM/fGtmkEaQlNckZbl
 IgHa6HqKl+dzDXhdESHRQQ==;
Date: Tue, 03 Feb 2026 18:39:58 +0200
Message-Id: <86pl6lzspt.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: sbaugh@HIDDEN
In-Reply-To: <86sebhzsvr.fsf@HIDDEN> (message from Eli Zaretskii on Tue, 03
 Feb 2026 18:36:24 +0200)
Subject: Re: bug#80326: 31.0.50;
 Lightbulb emoji eglot-code-action-indicator breaks various terminals
References: <ier8qdahrrp.fsf@HIDDEN>
 <867bst29rt.fsf@HIDDEN> <ier4inxopgb.fsf@HIDDEN>
 <861pj127k1.fsf@HIDDEN> <ier1pj1oo0u.fsf@HIDDEN>
 <86v7gdzvg4.fsf@HIDDEN> <iery0l9n76a.fsf@HIDDEN>
 <86sebhzsvr.fsf@HIDDEN>
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 80326
Cc: 80326 <at> debbugs.gnu.org, app-emacs-dev@HIDDEN, joaotavora@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

> Cc: 80326 <at> debbugs.gnu.org, app-emacs-dev@HIDDEN, joaotavora@HIDDEN
> Date: Tue, 03 Feb 2026 18:36:24 +0200
> From: Eli Zaretskii <eliz@HIDDEN>
> 
> > In bug#77313, we extensively discussed how to properly automatically
> > update window margins when there are multiple packages using the
> > margins, and Juri posted a patch to emacs-devel to add a
> > window-margin-functions hook.  But it never actually landed - I think
> > there was some disagreement on emacs-devel which I didn't follow.
> 
> That's not directly related, since in this case AFAIU only one package
> wants to display on the margin, right?

And, of course, even if those changes are landed soon, they will not
help people who use older versions of Emacs.  Thus, I still think we
should try to fix Eglot or Flymake to set the window-margin width in
this case, because that would at least avoid the display problem with
older Emacsen.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#80326; Package emacs. Full text available.

Message received at 80326 <at> debbugs.gnu.org:


Received: (at 80326) by debbugs.gnu.org; 3 Feb 2026 16:36:37 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Feb 03 11:36:36 2026
Received: from localhost ([127.0.0.1]:48566 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1vnJOG-0004qx-CU
	for submit <at> debbugs.gnu.org; Tue, 03 Feb 2026 11:36:36 -0500
Received: from eggs.gnu.org ([2001:470:142:3::10]:52914)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1vnJOD-0004qh-Mr
 for 80326 <at> debbugs.gnu.org; Tue, 03 Feb 2026 11:36:34 -0500
Received: from fencepost.gnu.org ([2001:470:142:3::e])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1vnJO8-0006Pm-3o; Tue, 03 Feb 2026 11:36:28 -0500
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=MIME-version:References:Subject:In-Reply-To:To:From:
 Date; bh=eo0s/WcncFVa9jDl0uWk9FJVV2cHikjNR2XhH+KycJM=; b=Dokkxs10vYn69p8mAwyi
 ZtoFwVLbDf0rsH88lktA735EpZr9sdMPTpGtkXnRaBWmuLhsHb+IhGxu49VUfqNz0FHd5XK0aKP+W
 L78YjJHupNd6aZwr90mF5V1O/98jbKxDJzlJEOGEiLl8DjfaQ07DttEm+rfY7KUHOrDt0KzrQOb6s
 ON9d2oRQQ27ZI5a23ZjFRkZYKdDvxW4GRVM9U0BO5VNhb3etycorJGT8+DY3oHp6p/0VIpCtY2erk
 0ke7t5hZJFvLJbJpHgTmImvwTNJn3tVNmIjXYk9eKBwLqGdyBFWSSIdFLjWGYPOGvYED3AywLwKsw
 37oJEEDUf4zu0w==;
Date: Tue, 03 Feb 2026 18:36:24 +0200
Message-Id: <86sebhzsvr.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: Spencer Baugh <sbaugh@HIDDEN>
In-Reply-To: <iery0l9n76a.fsf@HIDDEN> (message from Spencer Baugh on
 Tue, 03 Feb 2026 16:06:05 +0000)
Subject: Re: bug#80326: 31.0.50; Lightbulb emoji eglot-code-action-indicator
 breaks various terminals
References: <ier8qdahrrp.fsf@HIDDEN>
 <867bst29rt.fsf@HIDDEN> <ier4inxopgb.fsf@HIDDEN>
 <861pj127k1.fsf@HIDDEN> <ier1pj1oo0u.fsf@HIDDEN>
 <86v7gdzvg4.fsf@HIDDEN> <iery0l9n76a.fsf@HIDDEN>
MIME-version: 1.0
Content-type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 80326
Cc: 80326 <at> debbugs.gnu.org, app-emacs-dev@HIDDEN, joaotavora@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

> From: Spencer Baugh <sbaugh@HIDDEN>
> Cc: 80326 <at> debbugs.gnu.org,  app-emacs-dev@HIDDEN,  joaotavora@HIDDEN
> Date: Tue, 03 Feb 2026 16:06:05 +0000
> 
> Eli Zaretskii <eliz@HIDDEN> writes:
> >> I guess this is still a bug, though, because Eglot is supposed to work
> >> on old Emacs versions.
> >
> > Why does Eglot set up a one-column margin?
> 
> Again, it's flymake setting it up.
> 
> >> (I guess I won't bother trying to backport the trunk fix to my site's
> >> Emacs 30 branch... there are probably lots of changes that could affect
> >> this)
> >
> > I think this is the fix for bug#77452, it's about 10 lines in xdisp.c.
> >
> >> > Also, can you tell me where does Eglot determine the width of the
> >> > margin and sets that up?  One column is definitely wrong when the
> >> > character is wider.
> >> 
> >> I don't think eglot ever actually resizes the margin.  But flymake-mode
> >> does resize the margin, and eglot (by default) turns on flymake-mode.
> >> And you're right, this causes the margin to be the wrong size.
> >
> > So an easier solution is to fix flymake-mode, which needs to be done
> > anyway, even with the display bug fixed.
> >
> > It looks like flymake-mode determines the margin width without knowing
> > that Eglot uses 💡 as the indicator, am I reading the code correctly?
> 
> To be clear, Eglot's use of 💡 in the margin for code actions is totally
> unrelated to flymake, and there's not currently a way to make flymake
> aware of it.  It just happens to be the case that enabling flymake
> resizes the margin to width=1 as a side-effect.  It's totally
> unintentional, not deliberate.

If Eglot wants to use the lightbulb character as indicator, can't it
override the default value of the flymake indicator to make Flymake
aware of the wider string?

Alternatively, perhaps Flymake should provide a hook for callers to
customize the indicator string and/or the required width of the window
margins?

> In bug#77313, we extensively discussed how to properly automatically
> update window margins when there are multiple packages using the
> margins, and Juri posted a patch to emacs-devel to add a
> window-margin-functions hook.  But it never actually landed - I think
> there was some disagreement on emacs-devel which I didn't follow.

That's not directly related, since in this case AFAIU only one package
wants to display on the margin, right?




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#80326; Package emacs. Full text available.

Message received at 80326 <at> debbugs.gnu.org:


Received: (at 80326) by debbugs.gnu.org; 3 Feb 2026 16:06:14 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Feb 03 11:06:14 2026
Received: from localhost ([127.0.0.1]:48183 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1vnIus-0002a6-Ci
	for submit <at> debbugs.gnu.org; Tue, 03 Feb 2026 11:06:14 -0500
Received: from mxout5.mail.janestreet.com ([64.215.233.18]:47291)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <sbaugh@HIDDEN>)
 id 1vnIuq-0002Zd-0U
 for 80326 <at> debbugs.gnu.org; Tue, 03 Feb 2026 11:06:12 -0500
From: Spencer Baugh <sbaugh@HIDDEN>
To: Eli Zaretskii <eliz@HIDDEN>
Subject: Re: bug#80326: 31.0.50; Lightbulb emoji eglot-code-action-indicator
 breaks various terminals
In-Reply-To: <86v7gdzvg4.fsf@HIDDEN> (Eli Zaretskii's message of "Tue, 03 Feb
 2026 17:40:59 +0200")
References: <ier8qdahrrp.fsf@HIDDEN>
 <867bst29rt.fsf@HIDDEN> <ier4inxopgb.fsf@HIDDEN>
 <861pj127k1.fsf@HIDDEN> <ier1pj1oo0u.fsf@HIDDEN>
 <86v7gdzvg4.fsf@HIDDEN>
Date: Tue, 03 Feb 2026 16:06:05 +0000
Message-ID: <iery0l9n76a.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=janestreet.com;
 s=waixah; t=1770134766;
 bh=ync9FJOR4xpE5HFaRlUf1GOUvlqWAsWhL0n3rD/JmRQ=;
 h=From:To:Cc:Subject:In-Reply-To:References:Date;
 b=Y3DEon3qKGFy/EdeElzrAobRDxcZPe2XS3MUdX2wjQO66SBhkqycLmUMRCOfwPdKa
 Fd8w+2UOe0odhXyYGwjotNCVBf25xE1uJxq2XaJZuPRagrsaNptBsPdqlDahPCtTa9
 ZJEZEfLv1AnHCxP/WJtlNZEwVxCw8A27dzrFvhTK6NHBDT9jQzTw1gLogcHsWg4p9k
 9zJ4TINeEZMZRrSaDWZHN8fkHKS9WquaqcSgFrJHDPRDsJsjq/+g1ScgbvrG2w4tn1
 q+XOmW72pI2A5PoryWNhzG0cz5lws7wYuEC5nYNiCGJkVraf82K6gW1SodDzxFICa8
 +kftCEkQfcHOg==
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 80326
Cc: 80326 <at> debbugs.gnu.org, app-emacs-dev@HIDDEN, joaotavora@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

Eli Zaretskii <eliz@HIDDEN> writes:
>> I guess this is still a bug, though, because Eglot is supposed to work
>> on old Emacs versions.
>
> Why does Eglot set up a one-column margin?

Again, it's flymake setting it up.

>> (I guess I won't bother trying to backport the trunk fix to my site's
>> Emacs 30 branch... there are probably lots of changes that could affect
>> this)
>
> I think this is the fix for bug#77452, it's about 10 lines in xdisp.c.
>
>> > Also, can you tell me where does Eglot determine the width of the
>> > margin and sets that up?  One column is definitely wrong when the
>> > character is wider.
>>=20
>> I don't think eglot ever actually resizes the margin.  But flymake-mode
>> does resize the margin, and eglot (by default) turns on flymake-mode.
>> And you're right, this causes the margin to be the wrong size.
>
> So an easier solution is to fix flymake-mode, which needs to be done
> anyway, even with the display bug fixed.
>
> It looks like flymake-mode determines the margin width without knowing
> that Eglot uses =F0=9F=92=A1 as the indicator, am I reading the code corr=
ectly?

To be clear, Eglot's use of =F0=9F=92=A1 in the margin for code actions is =
totally
unrelated to flymake, and there's not currently a way to make flymake
aware of it.  It just happens to be the case that enabling flymake
resizes the margin to width=3D1 as a side-effect.  It's totally
unintentional, not deliberate.

In bug#77313, we extensively discussed how to properly automatically
update window margins when there are multiple packages using the
margins, and Juri posted a patch to emacs-devel to add a
window-margin-functions hook.  But it never actually landed - I think
there was some disagreement on emacs-devel which I didn't follow.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#80326; Package emacs. Full text available.

Message received at 80326 <at> debbugs.gnu.org:


Received: (at 80326) by debbugs.gnu.org; 3 Feb 2026 15:41:25 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Feb 03 10:41:25 2026
Received: from localhost ([127.0.0.1]:47780 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1vnIWq-0000X8-Pk
	for submit <at> debbugs.gnu.org; Tue, 03 Feb 2026 10:41:25 -0500
Received: from eggs.gnu.org ([2001:470:142:3::10]:35922)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1vnIWm-0000WK-6E
 for 80326 <at> debbugs.gnu.org; Tue, 03 Feb 2026 10:41:22 -0500
Received: from fencepost.gnu.org ([2001:470:142:3::e])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1vnIWf-00070H-W4; Tue, 03 Feb 2026 10:41:14 -0500
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=MIME-version:References:Subject:In-Reply-To:To:From:
 Date; bh=IyKr99oDCLj9ggTvq0tKo2dZtkfzyEOzXqoMyRvtiyU=; b=btliAWojI15M85PRzDCg
 wRUJ0leUNzyJYzVkzoPimYwknfPpe3zy2CM544gRUq454xJtraSnhxZByM8fUZAfmH0S485HHYdOq
 My2U8wGKYrWsO355RERO2kV8iVwkf9bhmRpdvClUv2N2SgG7w+93o8XiKT0I82NvOKYbjpUP8hMAT
 GFbMS2/dJR4dQGaO+ApQjek12zQph0yr07xEmSlB06BtO+zA5AiBg4jsM8KjuQ29jZozCEwJdJ/lV
 /t81FC5mKeD5dobb09s1L6aovOukEPcI19CyaTn+Fpa/+RRNV/WpPX3zUdWdJjUvyGSwTjqpdvy8M
 qr1jemOM1ixoSA==;
Date: Tue, 03 Feb 2026 17:40:59 +0200
Message-Id: <86v7gdzvg4.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: Spencer Baugh <sbaugh@HIDDEN>
In-Reply-To: <ier1pj1oo0u.fsf@HIDDEN> (message from Spencer Baugh on
 Tue, 03 Feb 2026 15:16:49 +0000)
Subject: Re: bug#80326: 31.0.50; Lightbulb emoji eglot-code-action-indicator
 breaks various terminals
References: <ier8qdahrrp.fsf@HIDDEN>
 <867bst29rt.fsf@HIDDEN> <ier4inxopgb.fsf@HIDDEN>
 <861pj127k1.fsf@HIDDEN> <ier1pj1oo0u.fsf@HIDDEN>
MIME-version: 1.0
Content-type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 80326
Cc: 80326 <at> debbugs.gnu.org, app-emacs-dev@HIDDEN, joaotavora@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

> From: Spencer Baugh <sbaugh@HIDDEN>
> Cc: 80326 <at> debbugs.gnu.org,  app-emacs-dev@HIDDEN,  joaotavora@HIDDEN
> Date: Tue, 03 Feb 2026 15:16:49 +0000
> 
> Eli Zaretskii <eliz@HIDDEN> writes:
> 
> > and running today's master branch.
> 
> Oh, this is it.  I'm running Emacs 30 with an updated Eglot from ELPA.
> On Emacs 30 I see the lightbulb after my recipe, on trunk I don't.

Ah, okay.  I can indeed reproduce this in Emacs 30.

> I guess this is still a bug, though, because Eglot is supposed to work
> on old Emacs versions.

Why does Eglot set up a one-column margin?

> (I guess I won't bother trying to backport the trunk fix to my site's
> Emacs 30 branch... there are probably lots of changes that could affect
> this)

I think this is the fix for bug#77452, it's about 10 lines in xdisp.c.

> > Also, can you tell me where does Eglot determine the width of the
> > margin and sets that up?  One column is definitely wrong when the
> > character is wider.
> 
> I don't think eglot ever actually resizes the margin.  But flymake-mode
> does resize the margin, and eglot (by default) turns on flymake-mode.
> And you're right, this causes the margin to be the wrong size.

So an easier solution is to fix flymake-mode, which needs to be done
anyway, even with the display bug fixed.

It looks like flymake-mode determines the margin width without knowing
that Eglot uses 💡 as the indicator, am I reading the code correctly?




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#80326; Package emacs. Full text available.

Message received at 80326 <at> debbugs.gnu.org:


Received: (at 80326) by debbugs.gnu.org; 3 Feb 2026 15:16:57 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Feb 03 10:16:57 2026
Received: from localhost ([127.0.0.1]:47419 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1vnI9A-0006wp-Pr
	for submit <at> debbugs.gnu.org; Tue, 03 Feb 2026 10:16:57 -0500
Received: from mxout5.mail.janestreet.com ([64.215.233.18]:35469)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <sbaugh@HIDDEN>)
 id 1vnI99-0006wb-DT
 for 80326 <at> debbugs.gnu.org; Tue, 03 Feb 2026 10:16:55 -0500
From: Spencer Baugh <sbaugh@HIDDEN>
To: Eli Zaretskii <eliz@HIDDEN>
Subject: Re: bug#80326: 31.0.50; Lightbulb emoji eglot-code-action-indicator
 breaks various terminals
In-Reply-To: <861pj127k1.fsf@HIDDEN> (Eli Zaretskii's message of "Tue, 03 Feb
 2026 17:03:26 +0200")
References: <ier8qdahrrp.fsf@HIDDEN>
 <867bst29rt.fsf@HIDDEN> <ier4inxopgb.fsf@HIDDEN>
 <861pj127k1.fsf@HIDDEN>
Date: Tue, 03 Feb 2026 15:16:49 +0000
Message-ID: <ier1pj1oo0u.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=janestreet.com;
 s=waixah; t=1770131810;
 bh=mupCWIAS35kZLgk84rMKIiGO9ymUwKFymXwRuYMQEtk=;
 h=From:To:Cc:Subject:In-Reply-To:References:Date;
 b=OmC5RluGjI1kCUKrn6P5RVEFe+aqb3ipuT8EcDovFHhZX9XuzvnkC9y05n2MbklXe
 Ygyc66nvD73+Rx8IMr82NJvorTkP/itsMeNT9lYcVdMvstDtakEzJ13wlb770xtiOD
 3n1J6WTmTl+JnVUxXbk7bONU7ZhnDhq+4nF/pDyJjj/YEcVRD3RfrVpSPaEpv328tK
 YSxWERVMgqY1xvK7+BoMQUREULMj+DznbS7pkCvSGYAbFhs6m7bdbadlDegPm/CVj5
 4Lcc4QuVANfjxs5iIydYQzemTqTmqz6xRP+bc90JraHkr5z5F4flBcw42IM1XnbWP1
 GT3ImcZ1+Rflw==
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 80326
Cc: 80326 <at> debbugs.gnu.org, app-emacs-dev@HIDDEN, joaotavora@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

Eli Zaretskii <eliz@HIDDEN> writes:

>> From: Spencer Baugh <sbaugh@HIDDEN>
>> Cc: 80326 <at> debbugs.gnu.org,  app-emacs-dev@HIDDEN,  joaotavora@gm=
ail.com
>> Date: Tue, 03 Feb 2026 14:45:56 +0000
>>=20
>> Eli Zaretskii <eliz@HIDDEN> writes:
>>=20
>> >> Maybe this is related to how "=F0=9F=92=A1" is displayed as a double-=
width
>> >> character?  Maybe Emacs thinks it's displayed as a single-width
>> >> character?
>> >
>> > This shouldn't happen, and if I try displaying this character in the
>> > margin (see below), I see no breakage of display.  What I see is that
>> > the character is displayed correctly if the left margin is 2-column
>> > wide, and not displayed at all if it's 1-column wide.  (I tried to
>> > find in eglot.el where it sets up the window margins, but couldn't
>> > find that; what did I miss?)
>> >
>> > Here's what I tried in "emacs -Q":
>> >
>> >   M-: (overlay-put (make-overlay 10 10) 'before-string (propertize " "=
 'display '((margin left-margin) "=F0=9F=92=A1"))) RET
>> >   M-: (set-window-margins (selected-window) 2 0) RET
>> >
>> > If I then do this:
>> >
>> >   M-: (set-window-margins (selected-window) 1 0) RET
>> >
>> > the margin becomes 1 column wide, and the character disappears from
>> > display.  All as I expect.
>> >
>> > Would it be possible for you to post a simple recipe, preferably
>> > without involving Eglot at all, which reproduces the problem on your
>> > system?  If the recipe must involve Eglot, then please try coming up
>> > with a recipe that doesn't need any LSP server (because I don't have
>> > any).
>>=20
>> Thanks for the quick response.
>>=20
>> Here's a simple recipe:
>>=20
>> 1. Open up a large file (e.g. eglot.el)
>> 2. (progn
>>   (overlay-put (make-overlay 8000 8001) 'before-string (propertize " " '=
display '((margin left-margin) "=F0=9F=92=A1")))
>>   (set-window-margins (selected-window) 1 0))
>> 3. The lightbulb shows up in the left margin, even though the margin is =
not large enough for it.
>
> At this point, I see a margin of 1 column, but the lightbulb character
> doesn't appear on display.  If I now enlarge the margin to 2 columns,
> the character is shown as expected.
>
> This is in PuTTY logged into a GNU/Linux system identified as
>
>   $ uname -a
>   Linux <redacted> 5.15.0-168-generic #178+11.0trisquel31 SMP Fri Jan 30 =
00:12:08 UTC 2026 x86_64 x86_64 x86_64 GNU/Linux
>
> and running today's master branch.

Oh, this is it.  I'm running Emacs 30 with an updated Eglot from ELPA.
On Emacs 30 I see the lightbulb after my recipe, on trunk I don't.

I guess this is still a bug, though, because Eglot is supposed to work
on old Emacs versions.

(I guess I won't bother trying to backport the trunk fix to my site's
Emacs 30 branch... there are probably lots of changes that could affect
this)

> Also, can you tell me where does Eglot determine the width of the
> margin and sets that up?  One column is definitely wrong when the
> character is wider.

I don't think eglot ever actually resizes the margin.  But flymake-mode
does resize the margin, and eglot (by default) turns on flymake-mode.
And you're right, this causes the margin to be the wrong size.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#80326; Package emacs. Full text available.

Message received at 80326 <at> debbugs.gnu.org:


Received: (at 80326) by debbugs.gnu.org; 3 Feb 2026 15:03:39 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Feb 03 10:03:39 2026
Received: from localhost ([127.0.0.1]:47222 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1vnHwI-0005wM-BI
	for submit <at> debbugs.gnu.org; Tue, 03 Feb 2026 10:03:38 -0500
Received: from eggs.gnu.org ([2001:470:142:3::10]:39436)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1vnHwG-0005vq-0l
 for 80326 <at> debbugs.gnu.org; Tue, 03 Feb 2026 10:03:36 -0500
Received: from fencepost.gnu.org ([2001:470:142:3::e])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1vnHw9-00019w-Ih; Tue, 03 Feb 2026 10:03:30 -0500
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=MIME-version:References:Subject:In-Reply-To:To:From:
 Date; bh=RB/HLGsypfD0qVVOJMJJglcDdP59R0TW7eahtHg9Q10=; b=UwtKPivCEmANMJnMis0b
 f9JK1m1BHLMbTGwwjARHIMs3VyZcuiuVwRzkTcScY3TqRTEI//Skii39MpcBlYhTMlECmKkUjlFrB
 0XmtnQffsFZ59YNWcZDGB78HQYKwLZzIiVTgLGpa2+0tKyWsdlG3vG0ZLSk+sidmXxLrJG2d5vaxr
 d6dlpS6DDq9Q32webjuigq5VclFWe6hY+fHK13L9fOwHGgTSVI4j6UKEJ/I8d+0iGs99Zm+3aFnXV
 snnxglcUWg77Mm2TUe5fwTQ6w+1ipuF6Lnk/ZIB+jlQsEb8ZID0DxhbTUPpsaHkQcTZRfa6fIZQR7
 tWccvsYT0O2XBw==;
Date: Tue, 03 Feb 2026 17:03:26 +0200
Message-Id: <861pj127k1.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: Spencer Baugh <sbaugh@HIDDEN>
In-Reply-To: <ier4inxopgb.fsf@HIDDEN> (message from Spencer Baugh on
 Tue, 03 Feb 2026 14:45:56 +0000)
Subject: Re: bug#80326: 31.0.50; Lightbulb emoji eglot-code-action-indicator
 breaks various terminals
References: <ier8qdahrrp.fsf@HIDDEN>
 <867bst29rt.fsf@HIDDEN> <ier4inxopgb.fsf@HIDDEN>
MIME-version: 1.0
Content-type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 80326
Cc: 80326 <at> debbugs.gnu.org, app-emacs-dev@HIDDEN, joaotavora@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

> From: Spencer Baugh <sbaugh@HIDDEN>
> Cc: 80326 <at> debbugs.gnu.org,  app-emacs-dev@HIDDEN,  joaotavora@HIDDEN
> Date: Tue, 03 Feb 2026 14:45:56 +0000
> 
> Eli Zaretskii <eliz@HIDDEN> writes:
> 
> >> Maybe this is related to how "💡" is displayed as a double-width
> >> character?  Maybe Emacs thinks it's displayed as a single-width
> >> character?
> >
> > This shouldn't happen, and if I try displaying this character in the
> > margin (see below), I see no breakage of display.  What I see is that
> > the character is displayed correctly if the left margin is 2-column
> > wide, and not displayed at all if it's 1-column wide.  (I tried to
> > find in eglot.el where it sets up the window margins, but couldn't
> > find that; what did I miss?)
> >
> > Here's what I tried in "emacs -Q":
> >
> >   M-: (overlay-put (make-overlay 10 10) 'before-string (propertize " " 'display '((margin left-margin) "💡"))) RET
> >   M-: (set-window-margins (selected-window) 2 0) RET
> >
> > If I then do this:
> >
> >   M-: (set-window-margins (selected-window) 1 0) RET
> >
> > the margin becomes 1 column wide, and the character disappears from
> > display.  All as I expect.
> >
> > Would it be possible for you to post a simple recipe, preferably
> > without involving Eglot at all, which reproduces the problem on your
> > system?  If the recipe must involve Eglot, then please try coming up
> > with a recipe that doesn't need any LSP server (because I don't have
> > any).
> 
> Thanks for the quick response.
> 
> Here's a simple recipe:
> 
> 1. Open up a large file (e.g. eglot.el)
> 2. (progn
>   (overlay-put (make-overlay 8000 8001) 'before-string (propertize " " 'display '((margin left-margin) "💡")))
>   (set-window-margins (selected-window) 1 0))
> 3. The lightbulb shows up in the left margin, even though the margin is not large enough for it.

At this point, I see a margin of 1 column, but the lightbulb character
doesn't appear on display.  If I now enlarge the margin to 2 columns,
the character is shown as expected.

This is in PuTTY logged into a GNU/Linux system identified as

  $ uname -a
  Linux <redacted> 5.15.0-168-generic #178+11.0trisquel31 SMP Fri Jan 30 00:12:08 UTC 2026 x86_64 x86_64 x86_64 GNU/Linux

and running today's master branch.

> 4. split-window-right; the separator between the two windows is
>    misaligned on the line with the lightbulb.

No problem with display after this step, neither with 1-column margin,
nor with 2-column margin.  And if I leave one of the two split windows
with 1-column margin and give the other one 2 columns, the character
is correctly displayed only where there are 2 columns.

So I wonder what is different in your case.  How wide is the actual
lightbulb character on display in your case?  Here it is as wide as
two 'x' characters.

Also, can you tell me where does Eglot determine the width of the
margin and sets that up?  One column is definitely wrong when the
character is wider.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#80326; Package emacs. Full text available.

Message received at 80326 <at> debbugs.gnu.org:


Received: (at 80326) by debbugs.gnu.org; 3 Feb 2026 14:46:07 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Feb 03 09:46:07 2026
Received: from localhost ([127.0.0.1]:45763 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1vnHfK-0004Jn-VV
	for submit <at> debbugs.gnu.org; Tue, 03 Feb 2026 09:46:07 -0500
Received: from mxout5.mail.janestreet.com ([64.215.233.18]:44243)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <sbaugh@HIDDEN>)
 id 1vnHfH-0004J0-6Y
 for 80326 <at> debbugs.gnu.org; Tue, 03 Feb 2026 09:46:05 -0500
From: Spencer Baugh <sbaugh@HIDDEN>
To: Eli Zaretskii <eliz@HIDDEN>
Subject: Re: bug#80326: 31.0.50; Lightbulb emoji eglot-code-action-indicator
 breaks various terminals
In-Reply-To: <867bst29rt.fsf@HIDDEN> (Eli Zaretskii's message of "Tue, 03 Feb
 2026 16:15:34 +0200")
References: <ier8qdahrrp.fsf@HIDDEN>
 <867bst29rt.fsf@HIDDEN>
Date: Tue, 03 Feb 2026 14:45:56 +0000
Message-ID: <ier4inxopgb.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=janestreet.com;
 s=waixah; t=1770129957;
 bh=qpioazmOwXSyb5Ze76yj9y8mglb4j+qBnXdnSilT/UY=;
 h=From:To:Cc:Subject:In-Reply-To:References:Date;
 b=cTO3PWk+RVfDens29IGxj1MBBIhHauXEUufKpmqyGsAgih/r540fruMGHk+3Ygmpb
 8KA0hWXifba803xi/+E1HmWwdzMyY0hV3jwzQIvxiuWc7dxD+nCL2rTkqWg7Ps9Yxg
 otKCNZX0pwPkHDgMpyZddg+/PnZkYzz19YirbMlXS/JQNqvL8PdgoXH+vgncnoxDe1
 qA5+fQ7F/vMAwQnAi8r3OPi8DnU+mTNC3Yxqd6DuuVDsKeRSGo+zhYa4RgaPliyFJg
 TPrhuUHcmWMSdXE8LDBGrJ7oPj51ks2hC0qb3KP0A9owWJ8LHzTgFXcb/ahECSoOgb
 X0KXQRUqBqQcg==
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 80326
Cc: 80326 <at> debbugs.gnu.org, app-emacs-dev@HIDDEN, joaotavora@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

Eli Zaretskii <eliz@HIDDEN> writes:

>> Cc: app-emacs-dev@HIDDEN,
>>  Jo=C3=A3o T=C3=A1vora <joaotavora@HIDDEN>
>> Date: Tue, 03 Feb 2026 13:37:46 +0000
>> From:  Spencer Baugh via "Bug reports for GNU Emacs,
>>  the Swiss army knife of text editors" <bug-gnu-emacs@HIDDEN>
>>=20
>>=20
>> In various terminals (I've reproduced this in gnome-terminal and PuTTY),
>> (char-displayable-p ?=F0=9F=92=A1) is non-nil, so eglot-code-action-indi=
cator is
>> "=F0=9F=92=A1".  But whenever that emoji is displayed in the left margin=
 (as it is
>> by default since eglot-code-action-indications contains 'margin by
>> default), Emacs display breaks: e.g. by duplicating the line with the
>> lightbulb on it or not updating it as you type.
>>=20
>> Maybe this is related to how "=F0=9F=92=A1" is displayed as a double-wid=
th
>> character?  Maybe Emacs thinks it's displayed as a single-width
>> character?
>
> This shouldn't happen, and if I try displaying this character in the
> margin (see below), I see no breakage of display.  What I see is that
> the character is displayed correctly if the left margin is 2-column
> wide, and not displayed at all if it's 1-column wide.  (I tried to
> find in eglot.el where it sets up the window margins, but couldn't
> find that; what did I miss?)
>
> Here's what I tried in "emacs -Q":
>
>   M-: (overlay-put (make-overlay 10 10) 'before-string (propertize " " 'd=
isplay '((margin left-margin) "=F0=9F=92=A1"))) RET
>   M-: (set-window-margins (selected-window) 2 0) RET
>
> If I then do this:
>
>   M-: (set-window-margins (selected-window) 1 0) RET
>
> the margin becomes 1 column wide, and the character disappears from
> display.  All as I expect.
>
> Would it be possible for you to post a simple recipe, preferably
> without involving Eglot at all, which reproduces the problem on your
> system?  If the recipe must involve Eglot, then please try coming up
> with a recipe that doesn't need any LSP server (because I don't have
> any).

Thanks for the quick response.

Here's a simple recipe:

1. Open up a large file (e.g. eglot.el)
2. (progn
  (overlay-put (make-overlay 8000 8001) 'before-string (propertize " " 'dis=
play '((margin left-margin) "=F0=9F=92=A1")))
  (set-window-margins (selected-window) 1 0))
3. The lightbulb shows up in the left margin, even though the margin is not=
 large enough for it.
4. split-window-right; the separator between the two windows is
   misaligned on the line with the lightbulb.

I can't reliably reproduce the other glitches I was seeing; I suspect
the fact that eglot removes and re-adds the margin lightbulb as you
scroll is contributing.  But this seems like evidence enough of a bug.

(char-width ?=F0=9F=92=A1) is 2 for me as well.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#80326; Package emacs. Full text available.

Message received at 80326 <at> debbugs.gnu.org:


Received: (at 80326) by debbugs.gnu.org; 3 Feb 2026 14:20:35 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Feb 03 09:20:35 2026
Received: from localhost ([127.0.0.1]:45482 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1vnHGc-0002BX-T5
	for submit <at> debbugs.gnu.org; Tue, 03 Feb 2026 09:20:35 -0500
Received: from eggs.gnu.org ([2001:470:142:3::10]:53486)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1vnHGZ-0002AX-CW
 for 80326 <at> debbugs.gnu.org; Tue, 03 Feb 2026 09:20:32 -0500
Received: from fencepost.gnu.org ([2001:470:142:3::e])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1vnHGT-0002pW-SS; Tue, 03 Feb 2026 09:20:25 -0500
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=MIME-version:References:Subject:In-Reply-To:To:From:
 Date; bh=+HEqBwWXbmchKMI4vGmlXE2kgurr7RbsdRfEe2qzxn0=; b=f0Bki4P3dTH+TsYx01HD
 vrupspTLwEAtEyLqtE06G+qwt0WDVho9dyFcEWrXZ9M5HErXXOA59zrpphqoLjdqTZeYynsD8Tdb9
 XA0w0jHz+9oqvYuD/EGR/yNbpy89d3dk9Mqu+NH7VXJwHjMCZhKb+We3z5GinEY+tPY0bYP14lf9n
 vTOD/u/g7dBH1DeDRQZA2u5obc20jEIfKcCgFxj5ebmrhm0/Ic8qjLDLmSVDrOqlMTsezzv3f+xHY
 AEt1e4VYxelviFJAclu4jUjze04SxqUaHBakZOUETVW15O/GD3BOUGxHOoBsmC1KsSI8oly8IhbFJ
 C96HToyMZE8u3w==;
Date: Tue, 03 Feb 2026 16:20:22 +0200
Message-Id: <865x8d29jt.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: sbaugh@HIDDEN
In-Reply-To: <867bst29rt.fsf@HIDDEN> (message from Eli Zaretskii on Tue, 03
 Feb 2026 16:15:34 +0200)
Subject: Re: bug#80326: 31.0.50;
 Lightbulb emoji eglot-code-action-indicator breaks various terminals
References: <ier8qdahrrp.fsf@HIDDEN>
 <867bst29rt.fsf@HIDDEN>
MIME-version: 1.0
Content-type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 80326
Cc: 80326 <at> debbugs.gnu.org, app-emacs-dev@HIDDEN, joaotavora@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

> Cc: 80326 <at> debbugs.gnu.org, app-emacs-dev@HIDDEN, joaotavora@HIDDEN
> Date: Tue, 03 Feb 2026 16:15:34 +0200
> From: Eli Zaretskii <eliz@HIDDEN>
> 
> Here's what I tried in "emacs -Q":
> 
>   M-: (overlay-put (make-overlay 10 10) 'before-string (propertize " " 'display '((margin left-margin) "💡"))) RET
>   M-: (set-window-margins (selected-window) 2 0) RET
> 
> If I then do this:
> 
>   M-: (set-window-margins (selected-window) 1 0) RET
> 
> the margin becomes 1 column wide, and the character disappears from
> display.  All as I expect.

Oh, and of course:

  (char-width ?💡)
   => 2

Again, as expected.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#80326; Package emacs. Full text available.

Message received at 80326 <at> debbugs.gnu.org:


Received: (at 80326) by debbugs.gnu.org; 3 Feb 2026 14:15:50 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Feb 03 09:15:50 2026
Received: from localhost ([127.0.0.1]:45427 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1vnHC1-0001g7-P7
	for submit <at> debbugs.gnu.org; Tue, 03 Feb 2026 09:15:50 -0500
Received: from eggs.gnu.org ([2001:470:142:3::10]:39170)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1vnHBy-0001fP-NP
 for 80326 <at> debbugs.gnu.org; Tue, 03 Feb 2026 09:15:47 -0500
Received: from fencepost.gnu.org ([2001:470:142:3::e])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1vnHBr-000805-QG; Tue, 03 Feb 2026 09:15:39 -0500
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=MIME-version:References:Subject:In-Reply-To:To:From:
 Date; bh=ZF5IIhJ7Wjbtv8VZvbfo+4jU6mtdcRTZlMEccrHpo7Y=; b=MoyBsdEWmYuwvAgBnYwQ
 0Hp2ccmg2D6V2DiutbKpxPhgndYpp7lR5EpFPL6HQsY21WPB//fg46+3sl1clnce8RC2h2sifCrgZ
 QsWomKCB3NRhauel24C8Eimuh2pPWpM2SliEfxivtL2jn7I5ESeAp04DErnTS/0KQ3SN1xze7vsuV
 V4huNWJgSQ7Wl1jCQ7KB490O7EsiOsGfUxM2Myfbm5ADbwAnwL6q2oNgfOBPwlO7bfFI1JAl1SjrL
 mZEMronLTqcQxT9jeVx5WpVBX4JZlKLteb1mc736Og9HoWAbcqJPRxNbLfjm7rmGs2z9il3/5SNxq
 3nV2TyOF+/PRAQ==;
Date: Tue, 03 Feb 2026 16:15:34 +0200
Message-Id: <867bst29rt.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: Spencer Baugh <sbaugh@HIDDEN>
In-Reply-To: <ier8qdahrrp.fsf@HIDDEN>
 (bug-gnu-emacs@HIDDEN)
Subject: Re: bug#80326: 31.0.50;
 Lightbulb emoji eglot-code-action-indicator breaks various terminals
References: <ier8qdahrrp.fsf@HIDDEN>
MIME-version: 1.0
Content-type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 80326
Cc: 80326 <at> debbugs.gnu.org, app-emacs-dev@HIDDEN, joaotavora@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

> Cc: app-emacs-dev@HIDDEN,
>  João Távora <joaotavora@HIDDEN>
> Date: Tue, 03 Feb 2026 13:37:46 +0000
> From:  Spencer Baugh via "Bug reports for GNU Emacs,
>  the Swiss army knife of text editors" <bug-gnu-emacs@HIDDEN>
> 
> 
> In various terminals (I've reproduced this in gnome-terminal and PuTTY),
> (char-displayable-p ?💡) is non-nil, so eglot-code-action-indicator is
> "💡".  But whenever that emoji is displayed in the left margin (as it is
> by default since eglot-code-action-indications contains 'margin by
> default), Emacs display breaks: e.g. by duplicating the line with the
> lightbulb on it or not updating it as you type.
> 
> Maybe this is related to how "💡" is displayed as a double-width
> character?  Maybe Emacs thinks it's displayed as a single-width
> character?

This shouldn't happen, and if I try displaying this character in the
margin (see below), I see no breakage of display.  What I see is that
the character is displayed correctly if the left margin is 2-column
wide, and not displayed at all if it's 1-column wide.  (I tried to
find in eglot.el where it sets up the window margins, but couldn't
find that; what did I miss?)

Here's what I tried in "emacs -Q":

  M-: (overlay-put (make-overlay 10 10) 'before-string (propertize " " 'display '((margin left-margin) "💡"))) RET
  M-: (set-window-margins (selected-window) 2 0) RET

If I then do this:

  M-: (set-window-margins (selected-window) 1 0) RET

the margin becomes 1 column wide, and the character disappears from
display.  All as I expect.

Would it be possible for you to post a simple recipe, preferably
without involving Eglot at all, which reproduces the problem on your
system?  If the recipe must involve Eglot, then please try coming up
with a recipe that doesn't need any LSP server (because I don't have
any).




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#80326; Package emacs. Full text available.

Message received at submit <at> debbugs.gnu.org:


Received: (at submit) by debbugs.gnu.org; 3 Feb 2026 13:38:01 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Feb 03 08:38:01 2026
Received: from localhost ([127.0.0.1]:44905 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1vnGbQ-0006y2-4z
	for submit <at> debbugs.gnu.org; Tue, 03 Feb 2026 08:38:00 -0500
Received: from lists.gnu.org ([2001:470:142::17]:60636)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <sbaugh@HIDDEN>)
 id 1vnGbM-0006wx-Qs
 for submit <at> debbugs.gnu.org; Tue, 03 Feb 2026 08:37:58 -0500
Received: from eggs.gnu.org ([2001:470:142:3::10])
 by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <sbaugh@HIDDEN>)
 id 1vnGbH-0006Cs-FY
 for bug-gnu-emacs@HIDDEN; Tue, 03 Feb 2026 08:37:51 -0500
Received: from mxout5.mail.janestreet.com ([64.215.233.18])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <sbaugh@HIDDEN>)
 id 1vnGbF-00038n-OE
 for bug-gnu-emacs@HIDDEN; Tue, 03 Feb 2026 08:37:51 -0500
From: Spencer Baugh <sbaugh@HIDDEN>
To: bug-gnu-emacs@HIDDEN
Subject: 31.0.50; Lightbulb emoji eglot-code-action-indicator breaks various
 terminals
X-Debbugs-Cc: app-emacs-dev@HIDDEN, =?utf-8?B?Sm/Do28gVMOhdm9yYQ==?=
 <joaotavora@HIDDEN>
Date: Tue, 03 Feb 2026 13:37:46 +0000
Message-ID: <ier8qdahrrp.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=janestreet.com;
 s=waixah; t=1770125867;
 bh=nX97l+9++Z+YNvzMo9DgTancq98PBAlQVgW1PZzWEjQ=;
 h=From:To:Subject:Date;
 b=V+28PZgWrrvL4ceCrWtfopK7T3cBAvr/DEfuWVgn4QJr2xp3T2Wbghf/QDixNHUdQ
 Wf1g3LaQQeF4TNrgHwZfP2Y6JDRhGzpzg8pP5njzOPk33jKf4D0ECfDb9SaW2Af8DG
 iq/qE8X6CtVxM3gRTg2rZxqCAXaeaV9Fn6glmVwy0nEu6zG6SbDAOOfAPddDg/g0lz
 QSXEkVBbArQs7VM8htFGswMDT3RIDQsSIxyPeSnUCvWIVCgl8DEaMBA+cYrZmTK49A
 GT73qI/MH0dZKK/Uikx0RCQ7qeYoMNr3uQuQOOQ71MkzYfB5ORePJaJf5LY24X1Ogu
 KI0dl6hyYeF9A==
Received-SPF: pass client-ip=64.215.233.18; envelope-from=sbaugh@HIDDEN;
 helo=mxout5.mail.janestreet.com
X-Spam_score_int: -43
X-Spam_score: -4.4
X-Spam_bar: ----
X-Spam_report: (-4.4 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1,
 DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1,
 RCVD_IN_DNSWL_MED=-2.3, RCVD_IN_MSPIKE_H5=0.001, RCVD_IN_MSPIKE_WL=0.001,
 RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, RCVD_IN_VALIDITY_SAFE_BLOCKED=0.001,
 SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no
X-Spam_action: no action
X-Spam-Score: 0.9 (/)
X-Debbugs-Envelope-To: submit
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -0.1 (/)


In various terminals (I've reproduced this in gnome-terminal and PuTTY),
(char-displayable-p ?=F0=9F=92=A1) is non-nil, so eglot-code-action-indicat=
or is
"=F0=9F=92=A1".  But whenever that emoji is displayed in the left margin (a=
s it is
by default since eglot-code-action-indications contains 'margin by
default), Emacs display breaks: e.g. by duplicating the line with the
lightbulb on it or not updating it as you type.

Maybe this is related to how "=F0=9F=92=A1" is displayed as a double-width
character?  Maybe Emacs thinks it's displayed as a single-width
character?


In GNU Emacs 31.0.50 (build 2, x86_64-pc-linux-gnu, GTK+ Version
 3.22.30, cairo version 1.15.12) of 2026-01-29 built on vdc-qws-u22796a
Repository revision: 5ae184617128074ff7adf112156d23a259273180
Repository branch: master
Windowing system distributor 'The X.Org Foundation', version 11.0.12011000
System Description: Rocky Linux 8.10 (Green Obsidian)

Configured using:
 'configure --with-gif=3Difavailable'

Configured features:
CAIRO DBUS FREETYPE GLIB GMP GNUTLS GSETTINGS HARFBUZZ JPEG LIBSELINUX
LIBSYSTEMD LIBXML2 MODULES NATIVE_COMP NOTIFY INOTIFY PDUMPER PNG RSVG
SECCOMP SOUND SQLITE3 THREADS TIFF TOOLKIT_SCROLL_BARS X11 XDBE XIM
XINERAMA XINPUT2 XPM XRANDR GTK3 ZLIB

Important settings:
  value of $LANG: en_US.utf8
  locale-coding-system: utf-8-unix

Major mode: Fundamental

Minor modes in effect:
  tooltip-mode: t
  global-eldoc-mode: t
  show-paren-mode: t
  electric-indent-mode: t
  mouse-wheel-mode: t
  tool-bar-mode: t
  menu-bar-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  blink-cursor-mode: t
  minibuffer-nonselected-mode: t
  minibuffer-regexp-mode: t
  buffer-read-only: t
  line-number-mode: t
  indent-tabs-mode: t
  transient-mark-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t

Load-path shadows:
None found.

Features:
(shadow sort mail-extr compile comint ansi-osc ansi-color ring comp-run
bytecomp byte-compile comp-common rx emacsbug lisp-mnt message mailcap
yank-media puny dired dired-loaddefs rfc822 mml mml-sec password-cache
epa derived epg rfc6068 epg-config gnus-util text-property-search
time-date subr-x mm-decode mm-bodies mm-encode mailabbrev gmm-utils
mailheader cl-loaddefs cl-lib sendmail mail-parse rfc2231 rfc2047
rfc2045 ietf-drums mm-util mail-prsvr mail-utils rmc iso-transl tooltip
cconv eldoc paren electric uniquify ediff-hook vc-hooks lisp-float-type
elisp-mode mwheel term/x-win x-win term/common-win x-dnd touch-screen
tool-bar dnd fontset image regexp-opt fringe tabulated-list replace
newcomment text-mode lisp-mode prog-mode register page tab-bar menu-bar
rfn-eshadow isearch easymenu timer select scroll-bar mouse jit-lock
font-lock syntax font-core term/tty-colors frame minibuffer nadvice seq
simple cl-generic indonesian philippine cham georgian utf-8-lang
misc-lang vietnamese tibetan thai tai-viet lao korean japanese eucjp-ms
cp51932 hebrew greek romanian slovak czech european ethiopic indian
cyrillic chinese composite emoji-zwj charscript charprop case-table
epa-hook jka-cmpr-hook help abbrev obarray oclosure cl-preloaded button
loaddefs theme-loaddefs faces cus-face macroexp files window
text-properties overlay sha1 md5 base64 format env code-pages mule
custom widget keymap hashtable-print-readable backquote threads dbusbind
inotify dynamic-setting system-font-setting font-render-setting cairo
gtk x-toolkit xinput2 x multi-tty move-toolbar make-network-process
tty-child-frames native-compile emacs)

Memory information:
((conses 16 89553 9710) (symbols 48 6862 0) (strings 32 25741 2562)
 (string-bytes 1 910918) (vectors 16 16850)
 (vector-slots 8 198424 10850) (floats 8 38 1) (intervals 56 494 0)
 (buffers 984 12))




Acknowledgement sent to Spencer Baugh <sbaugh@HIDDEN>:
New bug report received and forwarded. Copy sent to app-emacs-dev@HIDDEN, joaotavora@HIDDEN, bug-gnu-emacs@HIDDEN. Full text available.
Report forwarded to app-emacs-dev@HIDDEN, joaotavora@HIDDEN, bug-gnu-emacs@HIDDEN:
bug#80326; Package emacs. Full text available.
Please note: This is a static page, with minimal formatting, updated once a day.
Click here to see this page with the latest information and nicer formatting.
Last modified: Wed, 4 Feb 2026 12:30:01 UTC

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