bug-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#48747: add project-name generic


From: Dmitry Gutov
Subject: bug#48747: add project-name generic
Date: Mon, 21 Nov 2022 00:57:33 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.2.2

On 21.11.2022 00:17, Stephen Leake wrote:
eglot builds a name for a server using the root directory of the
project - in effect:

(file-name-base (directory-file-name (project-root (project-current))))

That name shows up in the elgot mode line, to tell the user which server
the buffer is connected to, in progress report messages, and in the name
of the EGLOT log buffer, which is useful for debugging things.

If the project root directory happens to have a meaningful name, that's
fine. In my use cases, it's usually not meaningful. For example, I have
two worktrees of my wisitoken project, one for the main branch, one for
a work branch. The eglot names, and the ones I'd like to see, are:

     default     desired
     "build"     "wisitoken main"
     "build"     "wisitoken work"

Similarly, the name for the ada_language_server worktree is:

     "gnat"      "als main"

I could override project-name that in my projects to provide my desired
name, and eglot will use my desired name.

Okay, that sounds good.

But let's please go back to my question: could we use the new generic in project-prompt-project-dir? And should we?

If we do, we'll have to default the return value to

  (abbreviate-file-name (project-root pr))

rather than your suggested

  (file-name-base (directory-file-name (project-root pr)))

. Would you say you intend to override project-name a lot? Or do you want to take advantage of the shorter default name in most cases?

What do you think about the first option anyway?

OTOH, it's also possible that some Powerline-style mode-line packages might want to use this method as well. And it seems they generally prefer the latter look because it's more compact. They currently don't show such info, though.





reply via email to

[Prev in Thread] Current Thread [Next in Thread]