astoff / digestif

A language server for TeX and friends
Other
251 stars 6 forks source link

How does digestif documentation lookup work? #62

Open hapst3r opened 11 months ago

hapst3r commented 11 months ago

Hej,

I am setting up my completion story using some of the newer packages like vertico, corfu and cape. While the completions work just fine using the in-built machinery, the documentation part does not work -- at least, it doesn't work as I expect it to work. Maybe my understanding is wrong which leads to wrong expectations.

OS: openSUSE Tumbleweed openSUSE package: texlive-digestif Editor: Emacs 29.1 LSP-Engine: Eglot Digestif version: 0.5.1

In languages such as elisp and common lisp, I can use a command like corfu-info-documentation and I am show the docstrings of said functions. I understand from the github page that latex is built different, that the machinery is thus a bit different and that additionally installed packages need to be "added" first by invoking the digestif binary on style files and similar.

Now, after I just updated eglot, I am shown a one-liner upon invoking the command corfu-info-documentation. However, it was my expectation that more information be shown and that the source for such information was the unofficial latex2e documentation, which is much more comprehensive than said one-liner and can be invoked manually with info-lookup-symbol.

Also, I expected that when I use a \usepackage form, I would get completion of possible options and/or those packages whose style digestif already knows of, which is also displayed on digestifs github page.

I have already set $DIGESTIF_TLDB, but that doesn't change the fact that I cant see any additional packages.

I am sorry that I am so unspecific, asking more generally about "how things work".

For reference, I am using this snippet I stole from another issue. I tried to use mostly "standard" constructs for the things I am asking such as \usepackage or \begin{...}

\documentclass{article}

\begin{document}

\noindent
foo

\end{document}

Have a nice day!

EDIT: When I try to run digestif --generate /usr/share/texmf/tex/latex/amsmath/amsmath.sty (and other commands trying to act on all files with *.sty extension) ´, I get the following error message.

/usr/share/texmf/scripts/digestif/digestif.zip#langserver.l:477: attempt to index a nil value (local 'file')

Note that I also set $DIGESTIF_DATA dir.

astoff commented 10 months ago

Try this: type \kern and then C-h . (or M-x eldoc-doc-buffer RET). If this doesn't work, then there's an issue in your setup for sure. If it works, the issue must be a smaller detail concerning corfu-info-documentation.

You shouldn't need to run digestif --generate, unless you want to work on support for a specific package.

PS: Why did you set DIGESTIF_DATA? I'd be curious to confirm that openSUSE is packaging digestif correctly.