Also, try switching to the *EGLOT events for ... * buffer. That usually holds
useful information about what went on when trying to start or communicate
with the server.
This did not help clean up my issue with understanding how Eglot should deal with an "unregistered" language server/language mode combination but boyo is it incredibly useful and helpful to know about once I did get the Kotlin language server working correctly (which was stupidity on my part and easily fixed).
So my question for anyone building and/or supporting Emacs libraries/packages that require a language server is: how would/should a User deal with an advertised as supported language that is not in fact supported? Seems to me this is a clear bug and the User should file a bug report on the library/package. In the case of Eglot, it's a bit sticky because, apparently, there is no default Kotlin mode available as part of Emacs but one can use an ELPA/MELPA provided mode. So this case seems detectable to me: if there is no kotlin mode that can be associated with a language server, then Eglot errors out in the case it thinks it is dealing with Kotlin. If there is a kotlin mode and an associated language server exists, then Eglot should continue and just work. But this scenario implies that Eglot should set up all supported language servers ahead of time. Is that realistic? Can someone point me at an Eglot example I might base a Kotlin support fix on?