From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Alan Donovan via "Bug reports for GNU Emacs, the Swiss army knife of text editors" Newsgroups: gmane.emacs.bugs Subject: bug#62116: RFE: eglot: support window.showDocument LSP RPC Date: Fri, 10 Mar 2023 10:40:01 -0500 Message-ID: References: Reply-To: Alan Donovan Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="000000000000bded4005f68d9312" Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="22297"; mail-complaints-to="usenet@ciao.gmane.io" Cc: joaotavora@gmail.com To: 62116@debbugs.gnu.org Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Sat Mar 11 05:11:28 2023 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 1paqZr-0005c8-TX for geb-bug-gnu-emacs@m.gmane-mx.org; Sat, 11 Mar 2023 05:11:28 +0100 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1paqZV-0005KG-Rk; Fri, 10 Mar 2023 23:11:05 -0500 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 1paqZU-0005Jq-En for bug-gnu-emacs@gnu.org; Fri, 10 Mar 2023 23:11:04 -0500 Original-Received: from debbugs.gnu.org ([209.51.188.43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1paqZU-0006ZW-6x for bug-gnu-emacs@gnu.org; Fri, 10 Mar 2023 23:11:04 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1paqZU-0007Xm-2K for bug-gnu-emacs@gnu.org; Fri, 10 Mar 2023 23:11:04 -0500 X-Loop: help-debbugs@gnu.org Resent-From: Alan Donovan Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sat, 11 Mar 2023 04:11:03 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 62116 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.167850785728941 (code B ref -1); Sat, 11 Mar 2023 04:11:03 +0000 Original-Received: (at submit) by debbugs.gnu.org; 11 Mar 2023 04:10:57 +0000 Original-Received: from localhost ([127.0.0.1]:56378 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1paqZM-0007Wi-VB for submit@debbugs.gnu.org; Fri, 10 Mar 2023 23:10:57 -0500 Original-Received: from lists.gnu.org ([209.51.188.17]:52414) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1paeqv-0005qa-Bc for submit@debbugs.gnu.org; Fri, 10 Mar 2023 10:40:17 -0500 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 1paeqv-0003ds-1K for bug-gnu-emacs@gnu.org; Fri, 10 Mar 2023 10:40:17 -0500 Original-Received: from mail-pf1-x42f.google.com ([2607:f8b0:4864:20::42f]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1paeqt-0007K4-Bm for bug-gnu-emacs@gnu.org; Fri, 10 Mar 2023 10:40:16 -0500 Original-Received: by mail-pf1-x42f.google.com with SMTP id b20so3889400pfo.6 for ; Fri, 10 Mar 2023 07:40:14 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20210112; t=1678462813; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=tZlBrfNCESEbS75ZpyI2zEGvVhJVWbPhKp4+h+ZpT5w=; b=tI2rzy1+nuxJLv6rz8WoW2C4pQLvvB3TQmbfMu1MiGIjfAn3Vph7+QVcFQU3SXdhxj 0Cm5VhFYoPfi3nvM9P5qfpuMj3m/i52v9RToRKaNFffO7B/iOiRy4zC/Au7uHKjy9xHQ ow09cE8y1qlnaWW6m1hQA0yCQY1HbXfvwMAmblTIqIT4UptsFkMI7pfNSJRn6NF87gVC Kb/KITuEePvjW5NHO9u5A+lOWkz4vlezZFZWfb5GsEeNzITKhueNQSXQugV2TKtR2ziv 0NaV7NHrkAuU/ay9O0eJuu7bC4Lq7TUTDCz1RxvH+HA0y+HI5qzrzEs8RYy0QBlP1yQE FGDQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; t=1678462813; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=tZlBrfNCESEbS75ZpyI2zEGvVhJVWbPhKp4+h+ZpT5w=; b=dsxuD61bFjF8v1QVZOUtvdW7ovezt50NaAwjy56Dur++gl0qcQac877WWFtmgg3KKt 5/3bvSxal+ImV2sBtZrpx3Si734k3kITsdBjL4U5e00fXEFFOrpQWvnj8CGuagbOT6US kqF0bpMzdlgjV5p6tezUgGZM83EIW3/rXeDejnPVxEAfm3A47Kfzvt9DTehRoVdGxPi2 d/aWu1kK7eHVUq8+kMO7ZizbDbt/Rv/ZsIEzGLludQF1B7tc2IItrXLThLPo5Akt6K5p MIpr8eCCLgH9+Inrml70HUZLse1cDnX/s9ffxvLktqCq1e1RCmt8f2fdy1yDZfQ6IG4k hfgA== X-Gm-Message-State: AO0yUKX64oXKUWg53yAm4udDgF9+0/9r+HV4sfyXmBI+nTgVjq7+wVaw JF05Svdls1/qLQzlnlYof5Y4w+qNcVXj9xRDpE9vQOmv2nG9bmNlCma5pA== X-Google-Smtp-Source: AK7set85PU6LxfEc0NlkIlC3VqREgJsG+M5wiGHzknGtw81LrfHvhD0xFgoBtNBJUvrtH4DMcgJPgI47nMysjWyII10= X-Received: by 2002:a62:820e:0:b0:5af:db19:b1c with SMTP id w14-20020a62820e000000b005afdb190b1cmr11113604pfd.2.1678462812999; Fri, 10 Mar 2023 07:40:12 -0800 (PST) In-Reply-To: Received-SPF: pass client-ip=2607:f8b0:4864:20::42f; envelope-from=adonovan@google.com; helo=mail-pf1-x42f.google.com X-Spam_score_int: -175 X-Spam_score: -17.6 X-Spam_bar: ----------------- X-Spam_report: (-17.6 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_MED=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, ENV_AND_HDR_SPF_MATCH=-0.5, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, USER_IN_DEF_DKIM_WL=-7.5, USER_IN_DEF_SPF_WL=-7.5 autolearn=ham autolearn_force=no X-Spam_action: no action X-Mailman-Approved-At: Fri, 10 Mar 2023 23:10:52 -0500 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:257751 Archived-At: --000000000000bded4005f68d9312 Content-Type: text/plain; charset="UTF-8" Apologies, that patch contained debugging stuff. Please use this one: On Fri, 10 Mar 2023 at 10:34, Alan Donovan wrote: > > Attn: Joao Tavora > > The attached patch adds basic support to eglot for the > window.showDocument downcall, added in LSP 3.16, which enables the > server to request that > the client open an URL either in an external browser (e.g. as if by > the open(1) or xdg-open(1) command) or internally, in the editor. > https://microsoft.github.io/language-server-protocol/specifications/lsp/3.17/specification/#window_showDocument > > See also https://github.com/joaotavora/eglot/discussions/1180. > > Thanks to @nemethf, whose unmerged PR > https://github.com/joaotavora/eglot/pull/855 provided numerous > improvements over my own first draft. > > This patch can be applied to the base commit of 8ee205d. Please let me > know if you'd like it in some other form. > > cheers > alan --000000000000bded4005f68d9312 Content-Type: application/octet-stream; name="eglot-showDocument.patch" Content-Disposition: attachment; filename="eglot-showDocument.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_lf2pdt330 ClRoaXMgcGF0Y2ggYWRkcyBiYXNpYyBzdXBwb3J0IHRvIGVnbG90IGZvciB0aGUgd2luZG93LnNo b3dEb2N1bWVudApkb3duY2FsbCwgYWRkZWQgaW4gTFNQIDMuMTYsIHdoaWNoIGVuYWJsZXMgdGhl IHNlcnZlciB0byByZXF1ZXN0IHRoYXQKdGhlIGNsaWVudCBvcGVuIGFuIFVSTCBlaXRoZXIgaW4g YW4gZXh0ZXJuYWwgYnJvd3NlciAoZS5nLiBhcyBpZiBieQp0aGUgb3BlbigxKSBvciB4ZGctb3Bl bigxKSBjb21tYW5kKSBvciBpbnRlcm5hbGx5LCBpbiB0aGUgZWRpdG9yLgoKaHR0cHM6Ly9taWNy b3NvZnQuZ2l0aHViLmlvL2xhbmd1YWdlLXNlcnZlci1wcm90b2NvbC9zcGVjaWZpY2F0aW9ucy9s c3AvMy4xNy9zcGVjaWZpY2F0aW9uLyN3aW5kb3dfc2hvd0RvY3VtZW50CgpTZWUgYWxzbyBodHRw czovL2dpdGh1Yi5jb20vam9hb3Rhdm9yYS9lZ2xvdC9kaXNjdXNzaW9ucy8xMTgwLgoKVGhhbmtz IHRvIEBuZW1ldGhmLCB3aG9zZSB1bm1lcmdlZCBQUgpodHRwczovL2dpdGh1Yi5jb20vam9hb3Rh dm9yYS9lZ2xvdC9wdWxsLzg1NSBwcm92aWRlZCBudW1lcm91cwppbXByb3ZlbWVudHMgb3ZlciBt eSBvd24gZmlyc3QgZHJhZnQuCgpkaWZmIC0tZ2l0IGEvbGlzcC9wcm9nbW9kZXMvZWdsb3QuZWwg Yi9saXNwL3Byb2dtb2Rlcy9lZ2xvdC5lbAppbmRleCAyZjhkMjAwMmNkMy4uZmIwYzVjYjExOTkg MTAwNjQ0Ci0tLSBhL2xpc3AvcHJvZ21vZGVzL2VnbG90LmVsCisrKyBiL2xpc3AvcHJvZ21vZGVz L2VnbG90LmVsCkBAIC04MTksNiArODE5LDcgQEAgdHJlYXRlZCBhcyBpbiBgZWdsb3QtLWRiaW5k Jy4iCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFssQChtYXBjYXIK ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMnY2FyIGVnbG90 LS10YWctZmFjZXMpXSkpKQogICAgICAgICAgICAgOmdlbmVyYWwgKGxpc3QgOnBvc2l0aW9uRW5j b2RpbmdzIFsidXRmLTMyIiAidXRmLTgiICJ1dGYtMTYiXSkKKyAgICAgICAgICAgIDp3aW5kb3cg Jyg6c2hvd0RvY3VtZW50ICg6c3VwcG9ydCB0KSkKICAgICAgICAgICAgIDpleHBlcmltZW50YWwg ZWdsb3QtLXt9KSkpCiAKIChjbC1kZWZnZW5lcmljIGVnbG90LXdvcmtzcGFjZS1mb2xkZXJzIChz ZXJ2ZXIpCkBAIC0yMTQzLDYgKzIxNDQsNDQgQEAgQ09NTUFORCBpcyBhIHN5bWJvbCBuYW1pbmcg dGhlIGNvbW1hbmQuIgogICAoX3NlcnZlciAoX21ldGhvZCAoZXFsIHdpbmRvdy9sb2dNZXNzYWdl KSkgJmtleSBfdHlwZSBfbWVzc2FnZSkKICAgIkhhbmRsZSBub3RpZmljYXRpb24gd2luZG93L2xv Z01lc3NhZ2UuIikgOzsgbm9vcCwgdXNlIGV2ZW50cyBidWZmZXIKIAorKGNsLWRlZm1ldGhvZCBl Z2xvdC1oYW5kbGUtcmVxdWVzdAorICAoX3NlcnZlciAoX21ldGhvZCAoZXFsIHdpbmRvdy9zaG93 RG9jdW1lbnQpKSAma2V5IHVyaSBleHRlcm5hbCB0YWtlRm9jdXMgc2VsZWN0aW9uCisgICAgICAg ICAgICZhbGxvdy1vdGhlci1rZXlzKQorICAiSGFuZGxlIGEgd2luZG93L3Nob3dEb2N1bWVudCBz ZXJ2ZXItPmNsaWVudCByZXF1ZXN0IGJ5IG9wZW5pbmcgdGhlCitVUkwgaW4gYSBicm93c2VyIG9y IHdpdGhpbiBFbWFjcy4iCisgIDs7IE5vdGU6IGJyb3dzZS11cmwgb24gYSAiZmlsZToiIFVSTCB3 aWxsIGV4ZWN1dGUgb3BlbigxKSBvciB4ZGctb3BlbigxKSwKKyAgOzsgd2hpY2ggbWF5IGVuZCB1 cCBvcGVuaW5nIHRoZSBmaWxlIGluIEVtYWNzIChvciBzb21lIG90aGVyIGVkaXRvciB0aGF0Cisg IDs7IGhhcyByZWdpc3RlcmVkIHRoZSAqLmdvIGV4dGVuc2lvbiksIGlnbm9yaW5nIHRoZSBvcHRp b25hbCBzZWxlY3Rpb24uCisgIDs7IFR5cGljYWxseSBzZXJ2ZXJzIHNlbmQgIkV4dGVybmFsOiBm YWxzZSIgZm9yIGZpbGVzLgorICAoaWYgKGFuZCBleHRlcm5hbCAobm90IChlcSBleHRlcm5hbCA6 anNvbi1mYWxzZSkpKQorICAgICAgKGJyb3dzZS11cmwgdXJpKQorICAgIDs7IERvbid0IGNhbGwg ZmluZC1maWxlIGltbWVkaWF0ZWx5ICh3aXRoaW4gdGhlIFJQQyBoYW5kbGVyKSBzaW5jZQorICAg IDs7IGZpbmQtZmlsZSdzIGdvLW1vZGUgaG9va3MgaXNzdWUgbW9yZSBMU1AgUlBDcyAoZS5nLgor ICAgIDs7IHRleHREb2N1bWVudC9kb2N1bWVudFN5bWJvbCkgZnJvbSB3aXRoaW4gdGhpcyBvbmUs IHdoaWNoIHRoZW4KKyAgICA7OyBnZXRzIHN0dWNrLiAoSXMgdGhhdCBhIGJ1ZyBpbiBnb3Bscz8p CisgICAgOzsgU28sIG1ha2UgdGhlIGNhbGwgYXN5bmNocm9ub3VzbHkgZnJvbSB0aGUgaWRsZSBs b29wLgorICAgIDs7IE9mIGNvdXJzZSB0aGlzIG1lYW5zIHdlIGNhbid0IHJlc3BvbmQgd2l0aCB0 aGUgcHJvcGVyIHN1Y2Nlc3MgdmFsdWUuCisgICAgKHJ1bi13aXRoLWlkbGUtdGltZXIgMCBuaWwK KyAgICAgICAgICAgICAgICAgICAgICAgICAjJyhsYW1iZGEgKGZpbGVuYW1lIG5vc2VsZWN0IHNl bGVjdGlvbikKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHdpdGgtY3VycmVu dC1idWZmZXIgKGlmIG5vc2VsZWN0CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAoZmluZC1maWxlLW5vc2VsZWN0IGZpbGVuYW1lKQor ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICh4LWZvY3VzLWZyYW1lIG5pbCkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAoZmluZC1maWxlIGZpbGVuYW1lKSkKKyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAod2hlbiBzZWxlY3Rpb24KKyAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIChzYXZlLXJlc3RyaWN0aW9uCisgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICh3aWRlbikKKyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgKHBjYXNlLWxldCAoKGAoLGJlZyAuICxlbmQpIChlZ2xvdC0t cmFuZ2UtcmVnaW9uIHNlbGVjdGlvbikpKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIChpZiAoZXF1YWwgYmVnIGVuZCkKKyAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgKGdvdG8tY2hhciBiZWcpCisgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoZ290by1jaGFyIGVuZCkKKyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChzZXQtbWFyay1jb21tYW5kIG5pbCkK KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChnb3RvLWNoYXIg YmVnKSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAocmVjZW50 ZXIpKSkpKSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAoZWdsb3QtLXVyaS10by1wYXRoIHVy aSkgOyBmaWxlbmFtZQorICAgICAgICAgICAgICAgICAgICAgICAgIChvciAobnVsbCB0YWtlRm9j dXMpIChlcSB0YWtlRm9jdXMgOmpzb24tZmFsc2UpKSA7IG5vc2VsZWN0CisgICAgICAgICAgICAg ICAgICAgICAgICAgc2VsZWN0aW9uKSkKKyAgJyg6c3VjY2VzcyB0KSkKKwogKGNsLWRlZm1ldGhv ZCBlZ2xvdC1oYW5kbGUtbm90aWZpY2F0aW9uCiAgIChfc2VydmVyIChfbWV0aG9kIChlcWwgdGVs ZW1ldHJ5L2V2ZW50KSkgJnJlc3QgX2FueSkKICAgIkhhbmRsZSBub3RpZmljYXRpb24gdGVsZW1l dHJ5L2V2ZW50LiIpIDs7IG5vb3AsIHVzZSBldmVudHMgYnVmZmVyCg== --000000000000bded4005f68d9312--