From: "kjtsanaktsidis (KJ Tsanaktsidis)" Date: 2022-11-10T09:42:32+00:00 Subject: [ruby-core:110679] [Ruby master Feature#19011] Improve LSP support in CRuby development itself Issue #19011 has been updated by kjtsanaktsidis (KJ Tsanaktsidis). I've been using Bear https://github.com/rizsotto/Bear for this - running `bear -- make` generates a _passable_ compile_commands.json file that sort-of works. It doesn't handle some of the trickier things though, e.g. files like vm_insnhelper.c which are not themselves compiled as a translation unit, but rather `#include`'d in vm.c. So having some better built-in support for this in the cruby development toolchain would be ace. ---------------------------------------- Feature #19011: Improve LSP support in CRuby development itself https://bugs.ruby-lang.org/issues/19011#change-100022 * Author: tenderlovemaking (Aaron Patterson) * Status: Open * Priority: Normal ---------------------------------------- I would like to add a new configure option for improve working with language servers inside CRuby itself. The summary is like this: ``` $ ./autogen.sh $ ./configure --enable-compile-commands $ make -j compile_commands.json # Now use LSP ``` `clangd` uses `compile_commands.json` to understand how to compile files inside CRuby. We can use `clang` itself to generate this file, but we have to pass special compile options to clang. Unfortunately the compile options generate many small JSON files, so we also need a way to concatenate them in to `compile_commands.json`. Ideally I would like `make miniruby` to build `miniruby` *and* `compile_commands.json`, but I don't know how to do that yet. ���� I've send a patch [here](https://github.com/ruby/ruby/pull/6352) -- https://bugs.ruby-lang.org/ Unsubscribe: