Basic editing setup in Emacs - does anyone have this working?

I’m getting back into Ada after a long time away. Emacs is my editor of choice, and it seems like ada-mode has some awesome features out of the box, but not syntax highlighting. By default, in Emacs 29.1, it attempts to defer to eglot for face support, but eglot does not provide face support. It seems that the pre-eglot method of facifying ada-mode buffers was with a bespoke parser called wisi, but when I try to compile that from the elpa source I get a generic “failed to compile” error, even when running alr manually with the highest level of verbosity. ada-ts-mode exists, and highlights syntax correctly, but does not support auto-indentation so it makes for a remarkably poor DX in Emacs, where auto-indentation is the norm.

Does anyone have an Ada setup in Emacs with both syntax highlighting and auto-indentation working?

I see that in the latest release of ada-mode it supports setting the face-backend to other, but there isn’t any documentation that I can find of what to do next to plug in a highlighter of your choice, such as tree-sitter.

Hi, when I first tried to follow the ada-mode installation docs via alire, I recall getting a compilation error and it was because an optional EMACS package was needed. The docs did not mention it as a prerequisite. Unfortunately, I forgot what that missing package was (eglot?). After I installed it, then installation of ada-mode via alire got further. Hopefully, that helps you get farther along. BTW, I noticed ada-mode installation shell scripts don’t work on Windows but is fine under Linux. For Windows, I gave up out of frustration and switched to Visual Studio Code + Ada Language Server for now, though I find the indentation annoying at times.

Thanks for the reply, that can’t be my issue though — eglot is built into emacs as of version 29, and I’m happily using eglot in other modes.

You might hit up the author. He is still very active and might be able to give you some insight. His email is at the bottom of his ada mode homepage:
https://www.nongnu.org/ada-mode/

He does post here as well, though I don’t know how often he checks these forums

Probably, he prefers these reports to be directed to the ada-mode users e-mail list: Ada-mode-users Info Page

I reached out over the mailing list and Stephe confirmed that a new warning thrown by GCC 13.1 consistently fails the build. Reverting to GCC 12.2 solved my problem.

1 Like