Danny Freeman <danny@dfreeman.email> writes:
Dmitry Gutov <dgutov@yandex.ru> writes:
Then your solution should work okay, but it also means it belongs to the
category of Eglot hacks (as
opposed to project.el hacks).
It is absolutely an Eglot hack :)
I don't consider this a hack at all. Not only does it work okay, it's
how supposed to work.
Most of the time, the default project-finding methods bundled with Emacs
work extremely well, in fact so well that it seems almost offensive when
they don't. But it's crucial to recognize that this is not just because
of LSP reasons. For example, simply because of the relatively poor
performance of the default project.el VC backend in a gargantuan repo of
400k files, I've had to define a different notion of "project" recently.
What constitutes a useful "project" for a user's setup can indeed vary
immensely. So project.el should grow to address these corner cases,
maybe inventing new abstractions not tied to a particular client,
including LSP. Maybe both this Python venv example and my "gargantuan
repo" example are hinting at possible uses for a "subproject"
abstraction? Just food for thought.