Subject: Re: bug#61072: How to change the length of the separation lines in eldoc, used by eglot?

From: Felician Nemeth <[email-masked]>
Date: Tue, 21 Feb 2023 18:11:51 +0100

Wei-Ting Lin <[email-masked]> writes:

> Sorry for the late reply. I think the following is the relevant part, when
> the cursor is on function "get_GF_cont_nonint".
>
> [server-reply] (id:1144) Sat Feb 18 10:03:45 2023:
> (:id 1144 :jsonrpc "2.0" :result
>      (:contents
>       (:kind "markdown" :value "### instance-method `get_GF_cont_nonint`
>  \n\n---\n→ `double`  \nParameters:  \n- `double tau`\n- `const
> std::vector<double> & new_tau`\n\n---\n```cpp\n// In AndersonModel\npublic:
> double get_GF_cont_nonint(double tau, const std::vector<double>
> &new_tau)\n```")

So the LSP server sends "---\n".  gfm-view-mode turns these three dashes
into a long separation line, which is then displayed by eldoc-box.
Neither gfm-view-mode nor eldoc-box is a part of Emacs or available from
GNU ELPA.  I'm therefore tempted to say that debbugs is not the right
place for this bug report.

However, when Eglot calls gfm-view-mode in eglot--format-markup the
window-width probably equals to the width of the window containing the
user's source code and eldoc-box seems to display the documentation in a
narrower window.  So maybe it would help if Eglot allowed the users to
run a custom function instead of calling gfm-view-mode in
eglot--format-markup.