diff options
author | Stefan Kangas <stefankangas@gmail.com> | 2023-03-20 06:30:30 +0100 |
---|---|---|
committer | Stefan Kangas <stefankangas@gmail.com> | 2023-03-20 06:30:30 +0100 |
commit | c194a31fc4581125afa202e1641e3f2f54cd98bd (patch) | |
tree | 4400a703f7fcc8210ab16431dbd137ebe6d3aa21 /doc | |
parent | 32bfeaf007046b8cdba2dd5aa5f5a556652ccb23 (diff) | |
parent | 028f11027384b6fb6807ea4057073e3be4003e9e (diff) | |
download | emacs-c194a31fc4581125afa202e1641e3f2f54cd98bd.tar.gz |
Merge from origin/emacs-29
028f1102738 Fix quoting of font-family in 'hfy-family'
4cb8a850b08 ; Tweak doc/misc/eglot.texi
d5d4959ed7d Document how to construct JSONRPC arrays in Eglot manual
078cf512eef * test/infra/Dockerfile.emba: Use debian:bullseye.
61adb44318a * configure.ac: Fix native comp compatibility check (bug#...
d814c249f44 * test/infra/Dockerfile.emba: Install clangd.
27edd7f88cb Remove 'package-vc--query-spec'
39fea115515 Do not store :lisp-dir in package descriptors
168165178f3 Use 'package-vc-selected-packages' to store package specs
Diffstat (limited to 'doc')
-rw-r--r-- | doc/emacs/package.texi | 23 | ||||
-rw-r--r-- | doc/misc/eglot.texi | 30 |
2 files changed, 18 insertions, 35 deletions
diff --git a/doc/emacs/package.texi b/doc/emacs/package.texi index d993b7b071f..7a2bc11d03c 100644 --- a/doc/emacs/package.texi +++ b/doc/emacs/package.texi @@ -558,29 +558,6 @@ regular package listing. If you just wish to clone the source of a package, without adding it to the package list, use @code{package-vc-checkout}. -@vindex package-vc-selected-packages -@findex package-vc-install-selected-packages - An alternative way to use @code{package-vc-install} is via the -@code{package-vc-selected-packages} user option. This is an alist of -packages to install, where each key is a package name and the value is -@code{nil}, indicating that any revision is to install, a string, -indicating a specific revision or a package specification plist. The -side effect of setting the user option is to install the package, but -the process can also be manually triggered using the function -@code{package-vc-install-selected-packages}. Here is an example of -how the user option: - -@example -@group -(setopt package-vc-selected-packages - '((modus-themes . "0f39eb3fd9") ;specific revision - (auctex . nil) ;any revision - (foo ;a package specification - :url "https://git.sv.gnu.org/r/foo-mode.git" - :branch "trunk"))) -@end group -@end example - @findex package-report-bug @findex package-vc-prepare-patch With the source checkout, you might want to reproduce a bug against diff --git a/doc/misc/eglot.texi b/doc/misc/eglot.texi index 735da5f0163..85f83ee4b26 100644 --- a/doc/misc/eglot.texi +++ b/doc/misc/eglot.texi @@ -977,9 +977,9 @@ facilities. Though many language servers work well out-of-the-box, most allow fine-grained control of their operation via specific configuration -options that vary from server to server. A small number of servers -require such special configuration to work acceptably, or even to work -at all. +options that are transmitted over the LSP protocol and vary from +server to server. A small number of servers require such special +configuration to work acceptably, or even to work at all. After having setup a server executable program in @code{eglot-server-programs} (@pxref{Setting Up LSP Servers}) and @@ -1016,8 +1016,9 @@ server reads the file @file{~/.config/pycodestyle} for user configuration. The @command{clangd} C/C++ server reads both @file{~/.config/clangd/config.yaml} for user configuration and @file{.clangd} for project configuration. It may be advantageous to -use these mechanisms instead of Eglot's, as the latter have the -advantage of working with other LSP clients. +use these mechanisms instead of Eglot's, as this will probably work +with other LSP clients and may be easier to debug than options riding +on the LSP wire. @node Project-specific configuration @section Project-specific configuration @@ -1201,7 +1202,7 @@ the LSP handshake. This is done using the The argument @code{(:compilationDatabasePath "/tmp")} is Emacs's representation in plist format of a simple JSON object @code{@{"compilationDatabasePath": "/tmp"@}}. To learn how to -represent more deeply nested options in this format, @xref{JSONRPC +represent more deeply nested options in this format, @pxref{JSONRPC objects in Elisp}. In this case, the two examples achieve exactly the same, but notice @@ -1214,7 +1215,7 @@ supported. It consists of @emph{globally} setting @code{eglot-workspace-configuration}, a variable originally intended for project-specific configuration. This has the same effect as giving all your projects a certain default configuration, as described -in @xref{Project-specific configuration}. Here is an example. +in @ref{Project-specific configuration}. Here is an example: @lisp (setq-default eglot-workspace-configuration @@ -1241,17 +1242,21 @@ keyword-value property sub-plists corresponding to JSON sub-objects. For representing the JSON leaf values @code{true}, @code{false}, @code{null} and @code{@{@}}, you can use the Lisp values @code{t}, @code{:json-false}, @code{nil}, and @code{eglot-@{@}}, respectively. +JSON arrays are represented as Elisp vectors surrounded by square brackets +(@pxref{Vectors,,,elisp,GNU Emacs Lisp Reference Manual}). -For example, this plist: +For example, the plist @lisp (:pylsp (:plugins (:jedi_completion (:include_params t - :fuzzy t) - :pylint (:enabled :json-false))) + :fuzzy t + :cache_for ["pandas" "numpy"] + :pylint (:enabled :json-false)))) :gopls (:usePlaceholders t)) @end lisp -Is serialized by Eglot to the following JSON text: +@noindent +is serialized by Eglot to the following JSON text: @example @{ @@ -1259,7 +1264,8 @@ Is serialized by Eglot to the following JSON text: "plugins": @{ "jedi_completion": @{ "include_params": true, - "fuzzy": true + "fuzzy": true, + "cache_for": [ "pandas", "numpy" ], @}, "pylint": @{ "enabled": false |