Skip to content

Re-add Meson language support - #4980

Merged
MrSubidubi merged 1 commit into
zed-industries:mainfrom
jobpaardekooper:main
Mar 2, 2026
Merged

Re-add Meson language support#4980
MrSubidubi merged 1 commit into
zed-industries:mainfrom
jobpaardekooper:main

Conversation

@jobpaardekooper

Copy link
Copy Markdown
Contributor

Add an extension to support the Meson build system after the existing Meson zed extension was no longer maintained and removed.

Please view #4532 for the full context of adding this extension.

@MrSubidubi

@cla-bot cla-bot Bot added the cla-signed label Feb 24, 2026
@MrSubidubi MrSubidubi changed the title Add Meson extension Re-add Meson language support Feb 25, 2026

@MrSubidubi MrSubidubi left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you for picking this up!

Regarding the two language servers - we should allow the user to in theory choose any of the available language servers. https://github.com/zed-extensions/kotlin can serve as an example for this, e.g. you can declare support for multiple language servers in the extension.toml. With that, you can get rid of the settings.rs and users can use builtin methods to choose which language servers to run.

We can then tune the knobs in Zed itself, e.g. zed-industries/zed#40776 can be used to configure the default language server.

What do you think? I think if the extension provides 2 language servers, it should also declare both of these properly

@jobpaardekooper

Copy link
Copy Markdown
Contributor Author

Hello again, I have updated the extension with you suggestions above. You can now do something like:

{
  "languages": {
    "Meson": {
      "language_servers": ["mesonlsp", "!muon"]
    }
  }
}

As far as I am concerned, the extension is ready to be published 😁

I was wondering if there is a way to make ["mesonlsp", "!muon"] the default setting when using this extension? Because now both will be enabled by default.

Thanks for the suggestion @MrSubidubi

@MrSubidubi

Copy link
Copy Markdown
Member

I was wondering if there is a way to make ["mesonlsp", "!muon"] the default setting when using this extension? Because now both will be enabled by default.

We lack a good way for this to come from the side of extensions currently, but you can shoot us an upstream PR in the Zed repo to change the default settings and I'll take a look!

@MrSubidubi

Copy link
Copy Markdown
Member

Could you also update the submodule here to the latest commit? I can otherwise do that tomorrow

@cla-bot

cla-bot Bot commented Mar 2, 2026

Copy link
Copy Markdown

Thank you for your pull request and welcome to our community. We could not parse the GitHub identity of the following contributors: Job Paardekooper.
This is most likely caused by a git client misconfiguration; please make sure to:

  1. check if your git client is configured with an email to sign commits git config --list | grep email
  2. If not, set it up using git config --global user.email email@example.com
  3. Make sure that the git commit email is configured in your GitHub account settings, see https://github.com/settings/emails

@cla-bot cla-bot Bot removed the cla-signed label Mar 2, 2026
@jobpaardekooper

Copy link
Copy Markdown
Contributor Author

Ok, should be updated now I think

@MrSubidubi MrSubidubi left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks much better, thank you!

Lastly, I do have some concerns in how the downloading of new language servers is handled - usually, extensions use some of our APIs to auto-update the server if needed and also delete older versions upon a fresh download - see https://github.com/zed-extensions/elixir/blob/main/src/elixir.rs as an example for an extension that does this.

That said, I do not consider this a strict blocker here - would you be fine with merging now and adding/fixing this soon as a follow-up? Happy to also wait briefly if you want to fix this now. Thanks!

@jobpaardekooper

Copy link
Copy Markdown
Contributor Author

Thanks for the feedback. I think we can merge this now and I will do a follow-up update.

@MrSubidubi MrSubidubi left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Alright, sounds good. Thank you!

@MrSubidubi
MrSubidubi enabled auto-merge March 2, 2026 14:19
@MrSubidubi
MrSubidubi disabled auto-merge March 2, 2026 14:31
@MrSubidubi
MrSubidubi added this pull request to the merge queue Mar 2, 2026
Merged via the queue into zed-industries:main with commit e576123 Mar 2, 2026
5 checks passed
cramhead pushed a commit to cramhead/extensions that referenced this pull request Mar 31, 2026
Add an extension to support the Meson build system after the existing
Meson zed extension was no longer maintained and removed.

Please view zed-industries#4532 for the full context of adding this extension.

@MrSubidubi
loczek pushed a commit to loczek/zed-extensions that referenced this pull request May 4, 2026
Add an extension to support the Meson build system after the existing
Meson zed extension was no longer maintained and removed.

Please view zed-industries#4532 for the full context of adding this extension.

@MrSubidubi
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants