From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Ergus via "Bug reports for GNU Emacs, the Swiss army knife of text editors" Newsgroups: gmane.emacs.bugs Subject: bug#70408: 30.0.50; Eglot and Project integration Date: Mon, 15 Apr 2024 23:40:27 +0200 Message-ID: <87o7aas3sk.fsf@aol.com> References: <87o7aas3sk.fsf.ref@aol.com> Reply-To: Ergus Mime-Version: 1.0 Content-Type: text/plain Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="40739"; mail-complaints-to="usenet@ciao.gmane.io" To: 70408@debbugs.gnu.org Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Mon Apr 15 23:42:11 2024 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1rwU5b-000AQp-40 for geb-bug-gnu-emacs@m.gmane-mx.org; Mon, 15 Apr 2024 23:42:11 +0200 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1rwU5L-0008Lz-FJ; Mon, 15 Apr 2024 17:41:56 -0400 Original-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 1rwU5H-0008Lc-95 for bug-gnu-emacs@gnu.org; Mon, 15 Apr 2024 17:41:52 -0400 Original-Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1rwU5G-00062Y-W4 for bug-gnu-emacs@gnu.org; Mon, 15 Apr 2024 17:41:51 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1rwU5R-0001kG-RD for bug-gnu-emacs@gnu.org; Mon, 15 Apr 2024 17:42:01 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Ergus Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Mon, 15 Apr 2024 21:42:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 70408 X-GNU-PR-Package: emacs X-Debbugs-Original-To: bug-gnu-emacs@gnu.org Original-Received: via spool by submit@debbugs.gnu.org id=B.17132172746326 (code B ref -1); Mon, 15 Apr 2024 21:42:01 +0000 Original-Received: (at submit) by debbugs.gnu.org; 15 Apr 2024 21:41:14 +0000 Original-Received: from localhost ([127.0.0.1]:39729 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rwU4e-0001di-Sn for submit@debbugs.gnu.org; Mon, 15 Apr 2024 17:41:13 -0400 Original-Received: from lists.gnu.org ([2001:470:142::17]:59490) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rwU4Z-0001bl-9r for submit@debbugs.gnu.org; Mon, 15 Apr 2024 17:41:11 -0400 Original-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 1rwU4H-000824-Kc for bug-gnu-emacs@gnu.org; Mon, 15 Apr 2024 17:40:49 -0400 Original-Received: from sonic316-12.consmr.mail.bf2.yahoo.com ([74.6.130.122]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1rwU4E-0005tL-IV for bug-gnu-emacs@gnu.org; Mon, 15 Apr 2024 17:40:49 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=aol.com; s=a2048; t=1713217242; bh=og27aeYtuqhsIl9/Wb5WvR55cfzeddu5epK8lZtboBo=; h=From:To:Cc:Subject:Date:References:From:Subject:Reply-To; b=BuMOzJm0ez/CFEx2s/MBQWYog9/XJsLfB2M2RWkB2jyV3D9Vj8VDolVESGIU8hKf1RBkaKPdaKmYGrsmRh/we9xeBcRrBhBUPINh7DZX0alEkm/tEsxVpGG0beeWqVG1YfOQ/rfU0XhAzDcLGzAgs6J1LkTnensB+cJZp2lF8WMNSmY6dfSqnGVLsLlMBTmrU1uxLUTPq62MLLGS6Suqx5ZRSt8Rjl0zipMCfDJJv+SoNeggleLlPN6LvSHt14g10hnaxAP4GTwUOh+7TwnNAxUNZSGXVhm5IdEi1rk4bwhetQ3zVaIB1QfnMFORq2KbFtji+qKYoz3qEOFqMppAMw== X-SONIC-DKIM-SIGN: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048; t=1713217242; bh=i1zaOxp4lOBuMncjQZY7rtviJmVfzErEL6kq9ZYLK8V=; h=X-Sonic-MF:From:To:Subject:Date:From:Subject; b=HdJ7aOLUQxKwGq2PzNkuRv7tDeQmtHXjZeIk17P4BdY8UswL9tykMXc+Wf2fxA+IeWseLEzveKXCq5O11R/49nMceZj+cWU3av3hGM2RnR+zv1kDTmQYO7RGf1fLbGCDq3rh2Xg200eUDwFbpMXYQsCpPcUBvl5yZAyWmgF3e83xoZboEDoxZKnjp9Q3cBTM8cbMsbxqKekog5vBnBQclqKU2SFLhU30UfDFpTz6o5fQl0foRC3kjzNL4zsGzX2MUkGoD+lk546jwyhzLI1CKO6jUcVF/O8O8WuAIAg4T2yUna+QP8gyYnz8aDTmFBvxJnL0Q8remAq6ZIx6/FgPLA== X-YMail-OSG: ly13TXIVM1nCc5Xa.gOv00Gut82MkuUqC8M_pk7OhAXe.wi9wqoBLNPmAwRCfDJ qk1eluBWp5fzAX99OsZ7.TWpgu0nd4JVMPJ4MTBPYt4bf.h_OJh1BRb7mhjhNrL9sH5QNMtLt_TW aDP1_kuva_yMuteB7uSapAHjATdZ2qO_tzeF5PXshmU8e5Jj6Jw8iew082YvXbNgioxxreOXPsW. H38O1Sh9GaO6bYFfAWm9nLDw87RyCINKEVEFdyFJ.dmH03DcPeP2eijR5m1i0qJaUMKs9SneXMFZ ID1lRygEb.muN8tWbvlQ3yifOzb.skS.WmZ6cTAPKn_u.5NVzng1HZTaFil_oRbMhs899BihgHQO CnP_vL4qs_5yq84E5QL91yyKVrGPt0Vo4p6sa2chjfchqFmhrT5LNj1u9MseNQAbSknkZbJRqCet DQaVZJsrz5sjLip3Dd9gKZJuOCnmNPf2ptbL8w9.pQTvnMbb4EJ8K3Sj_t50tFTv109csCGtwZWq xlWJiBnhrjwQO9sdbvjoQ06pUt90XE8a6uHs1kVgduymt_jOevFg78jX05CYUAVNKZQRcnu69G8K 72IxTXgVwose4Yyfog1KQdNIj6M8SuDDAIpV2eU8mz7uFNwkgCFf6EIf4wslgZYm9wuBE1IMeskB CdNvNZq4EeMBwoJJtSzomZtNwE8TE5BmdaVcb.idtlpx1kz2Xs1sStmJiEOEhwzFw7aYU3Bafa4s 6vI0sL19FZ_bZcVaO0rim4JRB4W8UtIiXZPkWxdSsvwmh2TLWwn_c6uwVzPtzvSd64XiNq.AfD8D R53K1NFt4ZQnh3vfHlcFIHa8KSWdEJpVyn0v4zmnqn X-Sonic-MF: X-Sonic-ID: 103a26d8-1cd6-458f-bf01-47f7f72f58a0 Original-Received: from sonic.gate.mail.ne1.yahoo.com by sonic316.consmr.mail.bf2.yahoo.com with HTTP; Mon, 15 Apr 2024 21:40:42 +0000 Original-Received: by hermes--production-ir2-7b99fc9bb6-b6zps (Yahoo Inc. Hermes SMTP Server) with ESMTPA ID 3748d864e8e807aa0ed622ef5f8333b1; Mon, 15 Apr 2024 21:40:40 +0000 (UTC) X-Mailer: WebService/1.1.22205 mail.backend.jedi.jws.acl:role.jedi.acl.token.atz.jws.hermes.aol Received-SPF: pass client-ip=74.6.130.122; envelope-from=spacibba@aol.com; helo=sonic316-12.consmr.mail.bf2.yahoo.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_MSPIKE_H2=-0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Original-Sender: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Xref: news.gmane.io gmane.emacs.bugs:283398 Archived-At: Hi: Recently we have been discussing the possibility to improve project.el in order to recognize/interact a bit more smartly with common modern build infrastructures (i.e meson and cmake). These build systems generally are also capable to generate the compile_commands.json for clangd in the build directory independently of its location (generally out of sources). The current extension for project.el is capable to recognize the build directory to execute project-compile. The approach works well in the tests and I added a small POC code to modify the `glot-workspace-configuration' variable on the fly. This integration of project.el is pretty useful and simplifies the configurations required to make eglot work a bit more consistently by detecting the database more accurately. The only limitation I am facing at the moment with this is that project.el initializes lazily (when a project-something command is called) and generally eglot seems to be designed to autostart as a mode hook. So the issue has two parts: 1. Is it desirable or are the eglot developers somehow interested in the integration with project.el? If so, what are the key features of interest. 2. Do you have some suggestion about how to initialize the eglot server to properly update the `glot-workspace-configuration' on the fly? My very primitive proof of concept code: https://github.com/Ergus/project-multi-mode/blob/822316d82007e1b68c9a8dfcfbe205cb63b4f545/project-multi-mode.el#L194 Best,