João Távora writes: > On Sun, Jun 30, 2024, 13:51 wrote: > > João Távora writes: > > On Sat, Jun 29, 2024, 15:24 Spencer Baugh wrote: > > > > Or, here's an alternative idea, more aggressive: > > > > What if Eglot just sets project-mode-line=t in eglot-managed buffers, and removes the project-name from the Eglot entry > > entirely? > > > > Then the language identifier would be the major mode, the project identifier would be project-mode-line, and the eglot > status > > indicator would just be for the status of the server. > > > > Works for me, it's in line with Eglot's policy of setting other modes when managing buffers. Show a patch. > > Attached. > > I do think this is a great way to resolve this - now that > project-mode-line exists, using it deletes one small bit of > eglot-specific functionality, which is in line with the Eglot design > philosophy. > > Yes. > > The only issue is that this was only added to mode-line-format in Emacs > 30, so we can only use it in Emacs 30 or later. > > No, that's not an issue, or rather your solution isn't the way to solve it. In trunk Eglot use everything that is in trunk Emacs. In > released Eglot versions name sure you depend on capable versions of core GNU Elpa packages, a set which already includes > project.el. So basically version bumps solves it. Yes, certainly. That's why I bumped the required version of project.el in the Package-Requires. But, loading a newer version of project.el doesn't add the project-mode-line entry to mode-line-format. That's done in bindings.el, and can't be updated. So we still need to do something else to accomodate an Emacs 29 user with an updated eglot.el and project.el. Juri says "(member '(project-mode-line project-mode-line-format) mode-line-format)" check is good, though, so I think we can just do that. > So please show an updated patch, and don't forget the etc/EGLOT-NEWS entry. Ok, here's a new version of the patch with an etc/EGLOT-NEWS entry.