Hello everyone,
I try to explore clangd, especially clangd - jump to definition but I am bit stuck. I don’t know how to start it.
As far as I know for this feature I need to start clangd with a special ‘index.yml’ file, how can I generate it?
When clangd is running can I change this yml file? Can clangd dynamically reload it?
In default how can I send a request to it?
These are basic questions I know but I didn’t find a detailed documentation for newcomers, so I am really appreciate for any comment. 
Thank you!
Best regards,
Tamas
+clangd-dev@lists.llvm.org
Hi Balogh, welcome to clangd! 
Hello everyone,
I try to explore clangd, especially clangd - jump to definition but I am bit stuck. I don’t know how to start it.
As far as I know for this feature I need to start clangd with a special ‘index.yml’ file, how can I generate it?
Note that the yaml symbol table is experimental only, but if you want to try it out, you can use global-symbol-builder to generate the yaml symbol table. Eventually, we would like to switch to index-while-build (when it’s landed) as a source of clangd symbol data.
When clangd is running can I change this yml file? Can clangd dynamically reload it?
Currently, the static index (e.g. yaml index on a codebase) is only loaded once in the beginning of a clangd instance. The assumption was that clangd instance is restarted more frequently than the updates of static index. clangd also has dynamic index which indexes the open/active files in a clangd session and acts as an overlay on top of the possibly stale static index. But I can see how reloading static index in clangd can be useful, especially when we have index-while-build in the future.
I’m interested in your use case for reloading static index. Would you mind elaborating it a bit?
Cheers,
Eric