Subject: [bug#72016] [PATCH] gnu: emacs-lsp-mode: Enable plists.

From: Danny Milosavljevic <[email-masked]>
Date: Tue, 9 Jul 2024 13:52:22 +0200

* gnu/packages/emacs-xyz.scm (emacs-lsp-mode)[arguments]<#:phases>
[enable-plists]: New phase.

Change-Id: I5088954b683b23ab51bd5d6adc09dcc9a1c85ec1
---
 gnu/packages/emacs-xyz.scm | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index d5257f16a9..fd04e2432b 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -31169,6 +31169,14 @@ (define-public emacs-lsp-mode
               (for-each (lambda (f)
                           (install-file f "."))
                         (find-files "clients/" "\\.el$"))))
+          (add-after 'unpack 'enable-plists
+            (lambda _
+              (substitute* "lsp-protocol.el"
+               ;; This is faster, and it's officially recommended,
+               ;; and it's required by emacs-lsp-booster.
+               ;; See also:
+               ;; <https://emacs-lsp.github.io/lsp-mode/page/performance/>.
+               (("\\(getenv \"LSP_USE_PLISTS\"\\)") "t"))))
           (add-before 'move-clients-libraries 'fix-patch-el-files
             ;; /bin/ksh is only used on macOS, which we don't support, so we
             ;; don't want to add it as input.

base-commit: 13f0f52314244f08eb9fdd626d907c0c3976e06a
-- 
2.45.2