From unknown Sat Jun 21 10:23:41 2025 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-Mailer: MIME-tools 5.509 (Entity 5.509) Content-Type: text/plain; charset=utf-8 From: bug#77446 <77446@debbugs.gnu.org> To: bug#77446 <77446@debbugs.gnu.org> Subject: Status: ELPA diminish: support minor modes without lighters Reply-To: bug#77446 <77446@debbugs.gnu.org> Date: Sat, 21 Jun 2025 17:23:41 +0000 retitle 77446 ELPA diminish: support minor modes without lighters reassign 77446 emacs submitter 77446 Michael Mauger severity 77446 normal thanks From debbugs-submit-bounces@debbugs.gnu.org Tue Apr 01 21:59:49 2025 Received: (at submit) by debbugs.gnu.org; 2 Apr 2025 01:59:50 +0000 Received: from localhost ([127.0.0.1]:52980 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1tznOH-0003eC-SJ for submit@debbugs.gnu.org; Tue, 01 Apr 2025 21:59:49 -0400 Received: from lists.gnu.org ([2001:470:142::17]:40750) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1tzlDN-0006BB-3x for submit@debbugs.gnu.org; Tue, 01 Apr 2025 19:40:17 -0400 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 ) id 1tzlDG-0005qq-Gb for bug-gnu-emacs@gnu.org; Tue, 01 Apr 2025 19:40:10 -0400 Received: from mail-0301.mail-europe.com ([188.165.51.139]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tzlDD-0003AE-P7 for bug-gnu-emacs@gnu.org; Tue, 01 Apr 2025 19:40:10 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=protonmail.com; s=protonmail3; t=1743550793; x=1743809993; bh=RcfebawxaoLNi3/Mw/bDMyYpZFF1jQkMP/NubeCYIGM=; h=Date:To:From:Subject:Message-ID:Feedback-ID:From:To:Cc:Date: Subject:Reply-To:Feedback-ID:Message-ID:BIMI-Selector: List-Unsubscribe:List-Unsubscribe-Post; b=rOmAtfNLX6YMml1Zy2YljI8qhGI5Qlj40Chgl90iIMFWl0XML26HGSknSZqVnB99N Gvn05RbrE0LdXNq3O6590+gQGx1thNZ//A8Mdauzcg2AbyJnmUilQ2NjNsOL6wM1d8 PyEU3X/vtlHqiHAPLB9JU0HwtnC2bIHnu+qCD73sSkjf7IlTZ/iksSO5OY+UuD9Q4R jbdOBA6vRfZs6XG6dtvvnNgOY7hzoNIFaO77X5/6WTH73FbjlBzNuF78EKvn2A44wJ K6xtz1Od+EE1Zz+MxK2Samj8vmFFfX5YiQexu2vJiCtA7ZqXepo5ysi6KwNU7u5S8I SN9ZzFG3sj79w== Date: Tue, 01 Apr 2025 23:39:45 +0000 To: "bug-gnu-emacs@gnu.org" , =?utf-8?Q?Martin_Yrj=C3=B6l=C3=A4?= From: Michael Mauger Subject: ELPA diminish: support minor modes without lighters Message-ID: <3PwWbn9HcONMYG8lgeR21JxuDRSzSGqYREpS2nMJ3NTFFAt5J3S0WsABQEXn5q-S8rHje7ePVdJUz04P0MZkHkyHQO1zd1DlVhG7zR12wog=@protonmail.com> Feedback-ID: 3198943:user:proton X-Pm-Message-ID: 3bcc31f28e2d343ddcc5f3bcb545ff1b2d042c8f MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="b1=_hSxT5zv2k5n3boBR4oSd4HpNgyKWvPf6kRw5QTl7yA" Received-SPF: pass client-ip=188.165.51.139; envelope-from=michael.mauger@protonmail.com; helo=mail-0301.mail-europe.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 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, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_VALIDITY_CERTIFIED_BLOCKED=0.001, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-Spam-Score: 1.0 (+) X-Debbugs-Envelope-To: submit X-Mailman-Approved-At: Tue, 01 Apr 2025 21:59:32 -0400 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.0 (/) --b1=_hSxT5zv2k5n3boBR4oSd4HpNgyKWvPf6kRw5QTl7yA Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable As I cleaned up my `init.el' using `use-package' I discovered some edge cas= es in `diminish' that can be easily addressed.=20 1. Although the stated purpose from `diminish' is to shorten existing minor= mode lighters, there can be the case made for adding a lighter when none i= s supplied by default. The patch to the `diminish' function creates a dummy= empty string lighter when it is called without an existing lighter. 2. The patch to `diminish-undo' detects when a mode was not previously dimi= nished and properly restores the original lighter. 3. The patch to `diminished-modes' corrects and simplifies the logic by cal= ling the `format-mode-line' function to generate the lighter from the minor= mode specifications. This eliminates kludgy code for simulating symbol eva= luation but also handles other mode-line format specifications not previous= ly handled. I have signed copyright papers so there shouldn't be any concern there. I = have tried to not use anything not present in Emacs 24.3 and updated the ve= rsion number to 0.50 to reflect that there is a significant change since ve= rsion 0.46; please correct either if necessary. The patch is attached. -- MICHAEL@MAUGER.COM // FSF and SFConservancy member // GNU Emacs sql.el main= tainer --b1=_hSxT5zv2k5n3boBR4oSd4HpNgyKWvPf6kRw5QTl7yA Content-Type: text/x-patch; name=diminish.patch Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename=diminish.patch ZGlmZiAtLWdpdCBhL2RpbWluaXNoLmVsIGIvZGltaW5pc2guZWwKaW5kZXggMGFhM2FjYjVjMi4u Njc2ZWU3OTBhZSAxMDA2NDQKLS0tIGEvZGltaW5pc2guZWwKKysrIGIvZGltaW5pc2guZWwKQEAg LTYsNyArNiw3IEBACiA7OyBNYWludGFpbmVyOiBNYXJ0aW4gWXJqw7Zsw6QgPG1hcnRpbi55cmpv bGFAZ21haWwuY29tPgogOzsgVVJMOiBodHRwczovL2dpdGh1Yi5jb20vbXlyam9sYS9kaW1pbmlz aC5lbAogOzsgQ3JlYXRlZDogVGggMTkgRmViIDk4Ci07OyBWZXJzaW9uOiAwLjQ2Cis7OyBWZXJz aW9uOiAwLjUwCiA7OyBQYWNrYWdlLVJlcXVpcmVzOiAoKGVtYWNzICIyNC4zIikpCiA7OyBLZXl3 b3JkczogZXh0ZW5zaW9ucywgZGltaW5pc2gsIG1pbm9yLCBjb2RlcHJvc2UKIApAQCAtMzYsNyAr MzYsMTAgQEAKIDs7IEEgZGltaW5pc2hlZCBtb2RlIGlzIGEgbWlub3IgbW9kZSB0aGF0IGhhcyBo YWQgaXRzIG1vZGUgbGluZQogOzsgZGlzcGxheSBkaW1pbmlzaGVkLCB1c3VhbGx5IHRvIG5vdGhp bmcsIGFsdGhvdWdoIGRpbWluaXNoaW5nIHRvIGEKIDs7IHNob3J0ZXIgd29yZCBvciBhIHNpbmds ZSBsZXR0ZXIgaXMgYWxzbyBzdXBwb3J0ZWQuICBUaGlzIHBhY2thZ2UKLTs7IGltcGxlbWVudHMg ZGltaW5pc2hlZCBtb2Rlcy4KKzs7IGltcGxlbWVudHMgZGltaW5pc2hlZCBtb2Rlcy4gIFRoZXJl IGlzIGFsc28gc3VwcG9ydCBmb3IgYWRkaW5nIGEKKzs7IG1pbm9yIG1vZGUgbGlnaHRlciB0byB0 aGUgbW9kZSBsaW5lIGV2ZW4gaWYgbm8gbGlnaHRlciBpcyBjdXJyZW50bHkKKzs7IGVzdGFibGlz aGVkLiAgVGhlIHJlcGxhY2VtZW50IHNwZWNpZmllZCBieSBkaW1pbmlzaCBtdXN0IHNhdGlzZnkK Kzs7IG1vZGUgbGluZSBmb3JtYXR0aW5nIHNwZWNpZmljYXRpb25zIChgbW9kZS1saW5lLWZvcm1h dCcpLgogCiA7OyBZb3UgY2FuIHVzZSB0aGlzIHBhY2thZ2UgZWl0aGVyIGludGVyYWN0aXZlbHkg b3IgZnJvbSB5b3VyIC5lbWFjcyBmaWxlLgogOzsgSW4gZWl0aGVyIGNhc2UsIGZpcnN0IHlvdSds bCBuZWVkIHRvIGNvcHkgdGhpcyBmaWxlIHRvIGEgZGlyZWN0b3J5IHRoYXQKQEAgLTE3NCwxNiAr MTc3LDE5IEBAIHRvIFRPLVdIQVQgaWYgaXQncyA+IDEgY2hhciBsb25nICYgZG9lc24ndCBhbHJl YWR5IGJlZ2luIHdpdGggYSBzcGFjZS4iCiAgICAgICAgICAgICAgICAgICAgICAocmVhZC1mcm9t LW1pbmlidWZmZXIKICAgICAgICAgICAgICAgICAgICAgICAiVG8gd2hhdCBtb2RlLWxpbmUgZGlz cGxheTogIgogICAgICAgICAgICAgICAgICAgICAgIG5pbCBuaWwgbmlsICdkaW1pbmlzaC1oaXN0 b3J5LW5hbWVzKSkpCisgIChjbC1jYWxsZiBvciB0by13aGF0ICIiKQorICAod2hlbiAoYW5kIChz dHJpbmdwIHRvLXdoYXQpCisgICAgICAgICAgICAgKD4gKGxlbmd0aCB0by13aGF0KSAxKSkKKyAg ICAob3IgKD0gKHN0cmluZy10by1jaGFyIHRvLXdoYXQpID9cICkKKyAgICAgICAgKGNsLWNhbGxm MiBjb25jYXQgIiAiIHRvLXdoYXQpKSkKICAgKGxldCAoKG1pbm9yIChhc3NxIG1vZGUgbWlub3It bW9kZS1hbGlzdCkpKQotICAgICh3aGVuIG1pbm9yCi0gICAgICAgIChwcm9nbiAoY2wtY2FsbGYg b3IgdG8td2hhdCAiIikKLSAgICAgICAgICAgICAgICh3aGVuIChhbmQgKHN0cmluZ3AgdG8td2hh dCkKLSAgICAgICAgICAgICAgICAgICAgICAgICAgKD4gKGxlbmd0aCB0by13aGF0KSAxKSkKLSAg ICAgICAgICAgICAgICAgKG9yICg9IChzdHJpbmctdG8tY2hhciB0by13aGF0KSA/XCApCi0gICAg ICAgICAgICAgICAgICAgICAoY2wtY2FsbGYyIGNvbmNhdCAiICIgdG8td2hhdCkpKQotICAgICAg ICAgICAgICAgKG9yIChhc3NxIG1vZGUgZGltaW5pc2hlZC1tb2RlLWFsaXN0KQotICAgICAgICAg ICAgICAgICAgIChwdXNoIChjb3B5LXNlcXVlbmNlIG1pbm9yKSBkaW1pbmlzaGVkLW1vZGUtYWxp c3QpKQotICAgICAgICAgICAgICAgKHNldGNkciBtaW5vciAobGlzdCB0by13aGF0KSkpKSkpCisg ICAgKHVubGVzcyBtaW5vcgorICAgICAgKG9yIChtZW1xIG1vZGUgbWlub3ItbW9kZS1saXN0KQor ICAgICAgICAgIChlcnJvciAiJVMgaXMgbm90IGN1cnJlbnRseSByZWdpc3RlcmVkIGFzIGEgbWlu b3IgbW9kZSIgbW9kZSkpCisgICAgICAocHVzaCAoc2V0cSBtaW5vciAobGlzdCBtb2RlICIiKSkg bWlub3ItbW9kZS1hbGlzdCkpCisgICAgKG9yIChhc3NxIG1vZGUgZGltaW5pc2hlZC1tb2RlLWFs aXN0KQorICAgICAgICAocHVzaCAoY29weS1zZXF1ZW5jZSBtaW5vcikgZGltaW5pc2hlZC1tb2Rl LWFsaXN0KSkKKyAgICAoc2V0Y2RyIG1pbm9yIChsaXN0IHRvLXdoYXQpKSkpCiAKIDs7IEJ1dCBh biBpbWFnZSBjb21lcyB0byBtZSwgdml2aWQgaW4gaXRzIHVucmVhbGl0eSwgb2YgYSBsb29uIGFs b25lIG9uIGhpcwogOzsgZm9yZXN0IGxha2UsIHNocmlla2luZyBoaXMgc291bCBvdXQgaW50byBh IGNhbm9weSBvZiBzdGFycy4gIEFsb25lIHRoaXMKQEAgLTIyNSwxMCArMjMxLDEzIEBAIHRoZSBh cmcgbXVzdCBiZSBxdW90ZWQgYXMgYSBzeW1ib2wsIGFzIGluIChkaW1pbmlzaC11bmRvIFxcPSdk aW1pbmlzaGVkLW1vZGVzKS4iCiAgICAgICAgICAgKGNsLWNhbGxmIGNkciBkaW1pbmlzaGVkLW1v ZGVzKSkpCiAgICAgKGxldCAoKG1pbm9yICAgICAgKGFzc3EgbW9kZSAgICAgIG1pbm9yLW1vZGUt YWxpc3QpKQogICAgICAgICAgIChkaW1pbmlzaGVkIChhc3NxIG1vZGUgZGltaW5pc2hlZC1tb2Rl LWFsaXN0KSkpCi0gICAgICAob3IgbWlub3IKLSAgICAgICAgICAoZXJyb3IgIiVTIGlzIG5vdCBj dXJyZW50bHkgcmVnaXN0ZXJlZCBhcyBhIG1pbm9yIG1vZGUiIG1vZGUpKQotICAgICAgKHdoZW4g ZGltaW5pc2hlZAotICAgICAgICAoc2V0Y2RyIG1pbm9yIChjZHIgZGltaW5pc2hlZCkpKSkpKQor ICAgICAgKG9yIGRpbWluaXNoZWQKKyAgICAgICAgICAoZXJyb3IgIiVTIHdhcyBub3QgcHJldmlv dXNseSBkaW1pbmlzaGVkIiBtb2RlKSkKKyAgICAgIChpZiBtaW5vcgorICAgICAgICAgIChzZXRj ZHIgbWlub3IgKGNkciBkaW1pbmlzaGVkKSkKKyAgICAgICAgKG9yIChtZW1xIG1vZGUgbWlub3It bW9kZS1saXN0KQorICAgICAgICAgICAgKGVycm9yICIlUyBpcyBub3QgY3VycmVudGx5IHJlZ2lz dGVyZWQgYXMgYSBtaW5vciBtb2RlIiBtb2RlKSkKKyAgICAgICAgKHB1c2ggKGxpc3QgbW9kZSAo Y2RyIGRpbWluaXNoZWQpKSBtaW5vci1tb2RlLWFsaXN0KSkpKSkKIAogOzsgUGx1bWJlciBCb2Ig d2FzIG5vdCBmcm9tIFNlYXR0bGUsIG15IGdyZXkgY2l0eSwgZm9yIHJhaW55IFNlYXR0bGUgaXMg YQogOzsgY2l0eSBvZiBpbnRlcmlvcnMsIGEgY2l0eSBvZiB0aGUgc2VsZi1kaW1pbmlzaGVkLiAg V2hlbiBJIG1vdmVkIGhlcmUgb25lCkBAIC0yNTYsMTMgKzI2NSw3IEBAIHdoYXQgZGltaW5pc2hl ZCBtb2RlcyB3b3VsZCBiZSBvbiB0aGUgbW9kZS1saW5lIGlmIHRoZXkgd2VyZSBzdGlsbCBtaW5v ci4iCiAgICAgICAgICAgICAgICAobW9kZSAoY2FyIG1vZGUtcGFpcikpCiAgICAgICAgICAgICAg ICAobWlub3ItcGFpciAob3IgKGFzc3EgbW9kZSBkaW1pbmlzaGVkLW1vZGUtYWxpc3QpIG1vZGUt cGFpcikpCiAgICAgICAgICAgICAgICAobWlub3ItbmFtZSAoY2FkciBtaW5vci1wYWlyKSkpCi0g ICAgICAgICAgKHdoZW4gKHN5bWJvbHAgbWlub3ItbmFtZSkKLSAgICAgICAgICAgIDs7IFRoaXMg bWlub3IgbW9kZSB1c2VzIHN5bWJvbCBpbmRpcmVjdGlvbiBpbiB0aGUgY2RyCi0gICAgICAgICAg ICAobGV0ICgoc3ltYm9scy1zZWVuIChsaXN0IG1pbm9yLW5hbWUpKSkKLSAgICAgICAgICAgICAg KHdoaWxlIChhbmQgKHN5bWJvbHAgKGNsLWNhbGxmIHN5bWJvbC12YWx1ZSBtaW5vci1uYW1lKSkK LSAgICAgICAgICAgICAgICAgICAgICAgICAgKG5vdCAobWVtcSBtaW5vci1uYW1lIHN5bWJvbHMt c2VlbikpKQotICAgICAgICAgICAgICAgIChwdXNoIG1pbm9yLW5hbWUgc3ltYm9scy1zZWVuKSkp KQotICAgICAgICAgIChwdXNoIG1pbm9yLW5hbWUgbWVzc2FnZSkpKQorICAgICAgICAgIChwdXNo IChmb3JtYXQtbW9kZS1saW5lIG1pbm9yLW5hbWUpIG1lc3NhZ2UpKSkKICAgICAgIChjbC1jYWxs ZiBjZHIgbWlub3ItbW9kZXMpKQogICAgIChzZXRxIG1lc3NhZ2UgKG1hcGNvbmNhdCAnaWRlbnRp dHkgKG5yZXZlcnNlIG1lc3NhZ2UpICIiKSkKICAgICAod2hlbiAoPSAoc3RyaW5nLXRvLWNoYXIg bWVzc2FnZSkgP1wgKQo= --b1=_hSxT5zv2k5n3boBR4oSd4HpNgyKWvPf6kRw5QTl7yA--