[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] externals/eglot 3ecdef1 09/69: Fix #201: handle label offsets in
From: |
João Távora |
Subject: |
[elpa] externals/eglot 3ecdef1 09/69: Fix #201: handle label offsets in ParameterInformation |
Date: |
Sun, 20 Oct 2019 08:21:42 -0400 (EDT) |
branch: externals/eglot
commit 3ecdef1ea74533c56ebd1bc851efe45b94ef45b4
Author: João Távora <address@hidden>
Commit: João Távora <address@hidden>
Fix #201: handle label offsets in ParameterInformation
At least ccls uses this.
* eglot.el (eglot-client-capabilities): Declare support for
:labelOffsetSupport.
(eglot--sig-info): Handle label offsets in ParameterInformation
---
eglot.el | 23 ++++++++++++++++-------
1 file changed, 16 insertions(+), 7 deletions(-)
diff --git a/eglot.el b/eglot.el
index 2ab4bd8..befa6cd 100644
--- a/eglot.el
+++ b/eglot.el
@@ -477,7 +477,10 @@ treated as in `eglot-dbind'."
:json-false))
:contextSupport t)
:hover `(:dynamicRegistration :json-false)
- :signatureHelp `(:dynamicRegistration :json-false)
+ :signatureHelp (list :dynamicRegistration :json-false
+ :signatureInformation
+ `(:parameterInformation
+ (:labelOffsetSupport t)))
:references `(:dynamicRegistration :json-false)
:definition `(:dynamicRegistration :json-false)
:documentSymbol (list
@@ -1992,12 +1995,18 @@ is not active."
;; ...perhaps highlight it in the formals list
(when params-start
(goto-char params-start)
- (let ((regex (concat "\\<" (regexp-quote label) "\\>"))
- (case-fold-search nil))
- (when (re-search-forward regex params-end t)
- (add-face-text-property
- (match-beginning 0) (match-end 0)
- 'eldoc-highlight-function-argument))))
+ (pcase-let
+ ((`(,beg ,end)
+ (if (stringp label)
+ (let ((case-fold-search nil))
+ (and (re-search-forward
+ (concat "\\<" (regexp-quote label) "\\>")
+ params-end t)
+ (list (match-beginning 0) (match-end 0))))
+ (mapcar #'1+ (append label nil)))))
+ (add-face-text-property
+ beg end
+ 'eldoc-highlight-function-argument)))
;; ...and/or maybe add its doc on a line by its own.
(when documentation
(goto-char (point-max))
- [elpa] externals/eglot e69cca9 06/69: * README.md: Remove funny UTF character., (continued)
- [elpa] externals/eglot e69cca9 06/69: * README.md: Remove funny UTF character., João Távora, 2019/10/20
- [elpa] externals/eglot 9377988 02/69: Per #198: Show large docs in help buffer instead of echo are by default, João Távora, 2019/10/20
- [elpa] externals/eglot e5e5125 04/69: Rename new defcustoms with friendlier names, João Távora, 2019/10/20
- [elpa] externals/eglot cba3987 07/69: README.md: minor cosmetic tweaks, João Távora, 2019/10/20
- [elpa] externals/eglot dc371b8 08/69: Display truncated docstring if too large for echo area, João Távora, 2019/10/20
- [elpa] externals/eglot 17ec29b 14/69: Per #177: consider mode derivation when guessing servers, João Távora, 2019/10/20
- [elpa] externals/eglot fcb8ab6 11/69: Per #121: fix bug introduced by commit fixing this issue, João Távora, 2019/10/20
- [elpa] externals/eglot 5fc7ecc 10/69: Add built-in support for Dart's dart_language_server, João Távora, 2019/10/20
- [elpa] externals/eglot 1671dc4 12/69: Fix #209: protect against null messages from eldoc, João Távora, 2019/10/20
- [elpa] externals/eglot dbf2dd2 20/69: * eglot.el (xref-backend-references): Don't use return-from., João Távora, 2019/10/20
- [elpa] externals/eglot 3ecdef1 09/69: Fix #201: handle label offsets in ParameterInformation,
João Távora <=
- [elpa] externals/eglot 40a3d8c 16/69: Fix broken python formatting tests, João Távora, 2019/10/20
- [elpa] externals/eglot 1c6c30f 17/69: Disable another test on Travis, João Távora, 2019/10/20
- [elpa] externals/eglot d65d139 15/69: Don't teardown company if started via trigger chars, João Távora, 2019/10/20
- [elpa] externals/eglot 7d6e3cf 21/69: Per #220: unbreak build, João Távora, 2019/10/20
- [elpa] externals/eglot b868ee1 23/69: Fix #260: Only consider Eglot's own diagnostics in eglot-code-actions, João Távora, 2019/10/20
- [elpa] externals/eglot 5f629eb 26/69: Add built-in support for Elixir's elixir-ls (#264), João Távora, 2019/10/20
- [elpa] externals/eglot 356100a 19/69: Fix #220: don't sort xref's by default, João Távora, 2019/10/20
- [elpa] externals/eglot 195c311 22/69: Fix local function call in directory watcher (#255), João Távora, 2019/10/20
- [elpa] externals/eglot 2df3991 13/69: Fix #206: Update README.md, João Távora, 2019/10/20
- [elpa] externals/eglot 8d0c8de 05/69: Add NEWS.md file and rework README.md, João Távora, 2019/10/20