Open jypma opened 6 months ago
You can do it in a bit hacky way replacing metals command with env, see https://github.com/kurnevsky/nixfiles/blob/b153ac54f0a3491e4802d13627f1a8e36564a36a/modules/emacs/init.el#L1509 for the example.
Ah, creative, thanks for the tip. I ended up writing a small script wrapping metals
myself.
Should we keep the topic open? It's still something that could be more user-friendly, especially since the requirement to add environment variables to an lsp server might be needing a small patch in lsp-mode
itself.
Metals (at least on arch linux) defaults to a heap size of
-XX:MaxRAMPercentage=25.0
, which can be quite significant. This can be customized by setting theMETALS_JAVA_OPTS
environment variable when launching metals.lsp-metals
could provide adefcustom
where such JVM options can be configured.As for implementation, that might not be obvious, since
lsp-stdio-connection
expects a single command with arguments.env
orbash
could be used here, but that would be linux-specific. Not sure how to do that platform-independently.