The answer seems to be "Language Server Protocol", _w0rp /ale_ speaks it and
_autozimu /LanguageClient-neovim_ too. It covers all the nice things from
completion to showing documentation (if hover balloons pass as that). There are
two Nim projects underway to provide the underlying protocol ( _status-im
/nim-json-rpc_) and a server implementation ( _nim-lang /langserver_), but
unfortunately the latter is not yet usable. Nim _really_ needs that, it would
connect the language to a bunch of editors/IDEs and it looks as if LSP will
spread further.